integrate current through an explicitly given rectangle
It's probably a combination of wrong input and missing input sanitation.
I intend to integrate the current that passes through a grid, and define the grid by giving an origin and base vectors:
calc=integral
...
Grid(std) {
type=even
origin=[18.0, 0.0, 0.0]
ivec=[1.0, 0.0, 0.0]
jvec=[0.0, 0.0, 1.0]
lengths=[26.0, 12.0, 0.0]
spacing=[0.05, 0.05, 0.05]
}
The job runs, and finishes without warnings.
In the output there is: 'Integration bound set to radius 0.0000000000000000', which is both stupid and fatal. For an std grid the radius should be irrelevant, and using a zero-radius leads to wrongs results. Specifically, in two jobs either the positive or the negative contribution to the integrated current is 0.0 (which is highly implausible).
Either my input is valid, then this is a bug, or my input is wrong, then it should be rejected with an error. Which of the two is it? How do I integrate the current through the above given grid.
When you do an integration you have to use the grid "bond". Furthermore you define ivec as x and jvec as z but you give the length only for xy. This can not work. Indeed the program does not assume the "worst possible user", one could call this a bug of course.... :)
I have to use the bond grid? That's inconvenient! And there should definitely be an error if someone chooses an invalid combination of grid/task, not just wrong results. I was under the impression, that lengths are specified for i, j, k and not x, y, z. Is that wrong? A program must always assume the worst possible user. Or even--and that is much worse---me.
It should be possible to use grid "even" when looking at a bond but then you should define your plane properly.
I tried to use grid(base) to integrate but ran into the same problems. The things is one can modify the bound / radius such that it is not zero any more but this does not solve the problem. In fact the norm is zero and that is the reason why you get a zero current. I think the problem of Raphael is identical to your issue. @lnw @bergerrjf #210
Dear Heike, dear all!
How about reading the single point as an external grid? Could you maybe try it and let me know if the input works and in case pass it to me. Riccardo, Guglielmo and me want to do some gimic calculations were we would need that possibility.
Thank you very much in any case for your efforts already!
Raphael
PD Dr. Raphael J. F. Berger, FRSC Materialchemie Paris-Lodron Universität Salzburg Jakob-Harringerstr. 2a A-5020 Salzburg ÖSTERREICH
Room: 4OG/07 Tel.: (+)43/ (0)662 8044 6260
From: Heike Fliegl [email protected] Sent: 06 April 2019 20:20:11 To: qmcurrents/gimic Cc: Berger Raphael; Mention Subject: Re: [qmcurrents/gimic] integrate current through an explicitly given rectangle (#199)
I tried to use grid(base) to integrate but ran into the same problems. The things is one can modify the bound / radius such that it is not zero any more but this does not solve the problem. In fact the norm is zero and that is the reason why you get a zero current. I think the problem of Raphael is identical to your issue. @lnwhttps://github.com/lnw @bergerrjfhttps://github.com/bergerrjf
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHubhttps://github.com/qmcurrents/gimic/issues/199#issuecomment-480526032, or mute the threadhttps://github.com/notifications/unsubscribe-auth/ATiKWFfKYQL0BSOpLX4Piqmit5HW-C2aks5veOVbgaJpZM4XTf7e.
Reading in external grids is possible and part of the test suite.
OK I have it (its in test/c4h4/read-grid/...) and it seems to work!
Thanks again
Raphael
From: Heike Fliegl [email protected] Sent: 06 April 2019 21:46:53 To: qmcurrents/gimic Cc: Berger Raphael; Mention Subject: Re: [qmcurrents/gimic] integrate current through an explicitly given rectangle (#199)
Reading in external grids is possible and part of the test suite.
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHubhttps://github.com/qmcurrents/gimic/issues/199#issuecomment-480532403, or mute the threadhttps://github.com/notifications/unsubscribe-auth/ATiKWM6WqOqquzNWw-6kydlOHg48vQQ3ks5vePmtgaJpZM4XTf7e.
It works. Otherwise the test must fail. Please let us know if you encounter problems.
Hi :)
Hope all is going well with you all!
Replying here as Raphael inquired about same stuff.
The final steps in finishing up my thesis involve automating ring current calculations. Everything else is carried out in my own code - I only need GIMIC to return me J(r) given r and magnetic field orientation. The read-grid example requires additional files as described in the docs. As I'm not interested in paraview visualisations, the tetgen etc steps seem excessive.
My fortran knowledge is quite poor and the source code is a bit hard to follow. I made following edits in my own fork: https://github.com/mrauha/gimic/commit/aa4c190a003e0da820777f1a093da2b8c8c085f5
Is this correct way to get a list of jvec's given a file containing the xyz points?
All the best, Markus
Markus, thanks for the description and example. I am looking at it and will report back ...
To me this looks like an OK way to get that information (I am working on a standalone density and current density evaluator but progress is slow). Maybe counter-question: does it work? Do you get reasonable values out?
Hi Markus,
thank you, yes all pretty OK and mostly buisness as usual. Hope you are doing fine as well!
Yes such a patch would be/is quite helpful!
Thanks and best regards
Raphael
PD Dr. Raphael J. F. Berger, FRSC Materialchemie Paris-Lodron Universität Salzburg Jakob-Harringerstr. 2a A-5020 Salzburg ÖSTERREICH
Room: 4OG/07 Tel.: (+)43/ (0)662 8044 6260
From: Markus Rauhalahti [email protected] Sent: 08 October 2020 13:15:55 To: qmcurrents/gimic Cc: Berger Raphael; Mention Subject: Re: [qmcurrents/gimic] integrate current through an explicitly given rectangle (#199)
Hi :)
Hope all is going well with you all!
Replying here as Raphael inquired about same stuff.
The final steps in finishing up my thesis involve automating ring current calculations. Everything else is carried out in my own code - I only need GIMIC to return me J(r) given r and magnetic field orientation. The read-grid example requires additional files as described in the docshttps://gimic.readthedocs.io/en/latest/visualization.html#vector-plots. As I'm not interested in paraview visualisations, the tetgen etc steps seem excessive.
My fortran knowledge is quite poor and the source code is a bit hard to follow. I made following edits in my own fork: mrauha@aa4c190https://github.com/mrauha/gimic/commit/aa4c190a003e0da820777f1a093da2b8c8c085f5
Is this correct way to get a list of jvec's given a file containing the xyz points?
All the best, Markus
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHubhttps://github.com/qmcurrents/gimic/issues/199#issuecomment-705501802, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AE4IUWF5JJMVFGQT2GT6KDLSJWNOXANCNFSM4F2N73PA.