Open sangallidavide opened 3 weeks ago
Just few comments:
1) Did you prepare a tutorial for circular dichroism on molecules? and the corresponding tests?
2) It is good that one can set different number of plane waves for exchange and correlation, but one of the problem of Yambo is that there are too much variables in the inputs (what many users say). Is it possible to do something like:
NGexchange = 1000 RL NGcorrel = -1 RL ! If negative Yambo sets it equal to NGexange
put a negative value for one of the two in such a way that Yambo automatically setd it equal to the other one, and put a higher verbosity on NGcorrel.
Just few comments:
1. Did you prepare a tutorial for circular dichroism on molecules? and the corresponding tests?
Working on it. For now there is just an empty page: https://www.yambo-code.eu/wiki/index.php/Dichroism_in_molecules I'll let you know as soon as it is ready. :-)
2. It is good that one can set different number of plane waves for exchange and correlation, but one of the problem of Yambo is that there are too much variables in the inputs (what many users say). Is it possible to do something like:
NGexchange = 1000 RL NGcorrel = -1 RL ! If negative Yambo sets it equal to NGexange
put a negative value for one of the two in such a way that Yambo automatically setd it equal to the other one, and put a higher verbosity on NGcorrel.
I did not change the input. The two variables remain
BSENGexx= 4000 RL # [BSK] Exchange components
BSENGBlk= 200 RL # [BSK] Exchange components
There is already the option BSENGBlk= -1 RL
which sets it equal to the cutoff on the screening (I think you did it, right?)
However, the present yambo will change automatically the value of BSENGexx= 4000 RL
it the fft grid corresponding to this exchange cutoff is not compatible with the fft grid corresponding to the correlation cutoff BSENGBlk= 200 RL
. Moreover, there is an extra variable to void this "automatic lowering", e.g. ALLGexx
. If you use it, the lowering is not done, but the computation of the correlation part will become much slower.
With the new implementation ALLGexx
is not needed anymore, and the cutoff is never "automatically lowered", since the eh-exchange and eh-correlation part are done independently (in a loop over the different parts of the kernel)
Ok, thanks for the answers
Hi Davide.
I will check the source ASAP.
In the meantime:
Actually regarding the publication I think that one paper is not enough. We should decide among us how and when a new physical feature is mature enough to be released to the general public.
Side question: how can I check the code if the branch is hosted on a separate repo? Do I have to clone it? Would'nt it be better to have the branch in the yambo repo so that, among other things, the robots can access it?
We used it for calculation on molecules,
* why tech-? It looks to me a mixture or refact- and phys-
There is no new physics. Just the points mentioned above. In the meeting we agreed in having tech-master, maintentance-master and phys-master. There is no refact-master
* I do believe that in order to enter in the GPL a piece of code describing new physics should be supported with a tutorial (you already answered to this) and a publication.
Actually regarding the publication I think that one paper is not enough. We should decide among us how and when a new physical feature is mature enough to be released to the general public.
See above, no new physcs. It was used to compute dichroism in molecules (which can be done also with the gpl master). However the simultaions where too demanding (expecially for memory). For this reasons the changes introduced. Related publication where this was used: https://iopscience.iop.org/article/10.1088/1757-899X/1265/1/012005/meta https://papers.sif.it/?pid=ncc12480 I'll also prepare a tutorial
Side question: how can I check the code if the branch is hosted on a separate repo? Do I have to clone it? Would'nt it be better to have the branch in the yambo repo so that, among other things, the robots can access it?
Yeah, you can clone it
Ok for me, if tests are fine. I notice that there are also other changes in the psuedo-potential part, coulomb cutoff,
it was merged with bug-fixes to import recent fixes
slepc,
This are maybe the chanegs related to this point (?)
new subroutine for scalar products
Some "V_dot_V" interfaces where missing, like for r1 and r2. Do you mean this ?
and excitons sorting.
I guess you mean this point (?)
Thanks
Ok, since there is not new physics here, but a good optimization of memory in BSE, that one of the main iusse of Yambo, I think this branch should be merged in the tech-master
But I see that there are still some test that fail https://media.yambo-code.eu/robots/tech-bse/unimi-XPS-8930.php
But I see that there are still some test that fail https://media.yambo-code.eu/robots/tech-bse/unimi-XPS-8930.php
Yes, with gfortran the tests nloptics due to the previous merge ... https://media.yambo-code.eu/robots/tech-bse/unimi-XPS-8930_tech-bse_3_error.php
With nvfortran, CUDA and GPUs the status is the same as the tech-master. https://media.yambo-code.eu/robots/tech-bse/unimi-XPS-8930_tech-bse_1_error.php Here there was just an extra fail on 03_GoWo_PPA_corrections which caused subsequent fails. There were missing dependencies via input flags, now added b1ac8c94ed21f97121c17cf27badea62135dc267
I found a bug in the previous merge... fixing in progress...
Ok. Meanwhile tutorial for CD available: https://www.yambo-code.eu/wiki/index.php/Dichroism_in_molecules
Cool!
On Fri, 21 Jun 2024 at 11:09, Davide Sangalli @.***> wrote:
Ok. Meanwhile tutorial for CD available: https://www.yambo-code.eu/wiki/index.php/Dichroism_in_molecules
— Reply to this email directly, view it on GitHub https://github.com/yambo-code/yambo/pull/98#issuecomment-2182343126, or unsubscribe https://github.com/notifications/unsubscribe-auth/AED6PCIFDDZDDPSGHCGK3GLZIPUUDAVCNFSM6AAAAABJGZJU3KVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCOBSGM2DGMJSGY . You are receiving this because you commented.Message ID: @.***>
Mobile[FR]: +33662922897 Mobile[IT]: +393384315437 Fax: +33491418916 Address: CINaM Campus de Luminy 163 Avenue de Luminy, Case 913 13288 Marseille Cedex 9
This contains part of a old pull request which was never merged in the private repo It contains a development used to compute circular dichroism on molecules beyond IP https://github.com/yambo-code/yambo-devel/pull/725
Specifically it contains the first two parts, and not the third point, which will be merged later to reduce the size of the merge
Changes to reduce the memory usage of the BSE solver. The kernel subroutine
K.F
now renamedK_kernel.F
computes the"x"
and the"c"
inside a loop. Similarly also theTDDFT
part is done independently.The main advantage is that first only the variables required for
"x"
are allocated and later only the variables required for"c"
. Another advantage is that, by doing so, the cutoff on the correlation and the exchange part do not need to be relatedChanges to the structure of the diago residuals. There are now two key subroutines for the residuals:
which can be used for any general kind of dipoles, and not anymore subroutines which depend on the physical quantity to be computed
Other changes: