Weird behaviour while converging

Concerns issues with computing quasiparticle corrections to the DFT eigenvalues - i.e., the self-energy within the GW approximation (-g n), or considering the Hartree-Fock exchange only (-x)

Moderators: Davide Sangalli, andrea.ferretti, myrta gruning, andrea marini, Daniele Varsano

Post Reply
Bruno
Posts: 72
Joined: Tue Dec 08, 2020 11:16 am

Weird behaviour while converging

Post by Bruno » Thu Jan 07, 2021 12:20 pm

Hello!

I'm working on a system and I've been running some convergency test in order to obtain the best set of parameters. At the moment I'm converging the screening parameters, and the problem is the following: I had run the first part (from BndsRnXp=110 until 700) on a specific cluster, and now I have access to a more powerful one where I have run the calculation with BndsRnXp=800, please see the attached image. For some reason the values seems very weird, they are negative and are basically the same for all sizes of dielectric matrix.

Can someone help me understand what am I doing wrong? I already tried a couple things like deleting the SAVE folder, getting and new one and do the initialisation again between each calculation for different sizes of dielectric matrix, although I don't think this would be necessary since I haven't done this for the first set of calculations. I'm also of course, for the other parameters using the very same ones from the other cluster. There's only two noticeable differences for me:

- The first set of calculations were performed on yambo 4.2.1 and the weird one on 4.5.3.
- Also although the first set was not done using parallelisation flags, I've just tested it with BndsRnXp=850 on the old cluster, which is higher than the one showing weird results from the new cluster and as far as the calculation is going the values are different between them and not weird behaving.

So I suppose the problem is indeed related to the yambo on the new cluster, I just can't find where the problem is. I'm also attaching inputs of the BndsRnXp=700 and BndsRnXp=800 for comparison, and the r- and o- files from the weird result.
Archive.zip
Regards,
You do not have the required permissions to view the files attached to this post.
MSc. Bruno Cucco
PhD Candidate
CNRS Institut des Sciences Chimiques de Rennes, France
Université de Rennes 1
https://iscr.univ-rennes1.fr

User avatar
Daniele Varsano
Posts: 3816
Joined: Tue Mar 17, 2009 2:23 pm
Contact:

Re: Weird behaviour while converging

Post by Daniele Varsano » Thu Jan 07, 2021 12:39 pm

Dear Bruno,
I think the problem is related with the exchange part of the self energy, you have practically zero correction for the conduction band which is rather strange.
You are using 8217 G vectors which is a rather small number compared with WF-G vector (26131). Consider to include all the g vectors of the density (181955), as it is a fast calculation. Finally, be aware that 90 bands in G are very few considering you have 82 occupied bands.

Best,
Daniele
Dr. Daniele Varsano
S3-CNR Institute of Nanoscience and MaX Center, Italy
MaX - Materials design at the Exascale
http://www.nano.cnr.it
http://www.max-centre.eu/

Bruno
Posts: 72
Joined: Tue Dec 08, 2020 11:16 am

Re: Weird behaviour while converging

Post by Bruno » Thu Jan 07, 2021 1:24 pm

Dear Daniele,

Thanks for the fast reply. For g vectors of the density you mean the flag EXXRLvcs right? So what you are saying is that I should set EXXRLvcs = 181955 RL ? If it is the case I did some convergency testing on it following the tutorials and I got the plot which is attached to this post, and from this plot I concluded that 50Ry would be enough. Did I misunderstood something? If yes can you point me where? The calculation to converge the EXXRLvcs was made with 750 bands and a low grid, you can find the input also attached. I used different values then parsed the quantities to do the plot.

Also regarding the G bands, I thought I could set a low value to converge the other parameters, is this wrong? I intended to converge the number of G bands after converging the screening.

In any case, I'll do the suggested test! But also notice that I used these very same values on the old cluster and there the results seems fine(they are not finished yet, when they are I'll plot them to compare), even with higher values of BndsRnXp than the one used on the new cluster.

Thank you very much!
EXXRLvcs.in.txt
EXXRLvcs.png
Regards,
You do not have the required permissions to view the files attached to this post.
MSc. Bruno Cucco
PhD Candidate
CNRS Institut des Sciences Chimiques de Rennes, France
Université de Rennes 1
https://iscr.univ-rennes1.fr

User avatar
Daniele Varsano
Posts: 3816
Joined: Tue Mar 17, 2009 2:23 pm
Contact:

Re: Weird behaviour while converging

Post by Daniele Varsano » Thu Jan 07, 2021 1:39 pm

Dear Bruno,
in general you are right if you did a convergence test, but as it is a fast calculation it is also safe to include all the g vectors in the exchange.
Now, I'm rather confused from your plot, as you have there a gap of 6.9eV (I do not know if it is a GW gap or HF gap), while from your last calculation I can see a much smaller gap.
The calculation to converge the EXXRLvcs was made with 750 bands
Note that in the HF calculation only valence bands are needed as you have a summation over occupied states only.

What I suggest you is to compare the report of an old calculation with a new one and sport where the large difference arise, more explicitly if from it comes from the exchange or correlation part. At the end of the report you have the value for each component:
nlxc=HF
lxc=Vxc
So=Sigmac(Eks)

Again, nlXC in your report seems to me to be rather weird.

Best,
Daniele
Dr. Daniele Varsano
S3-CNR Institute of Nanoscience and MaX Center, Italy
MaX - Materials design at the Exascale
http://www.nano.cnr.it
http://www.max-centre.eu/

Bruno
Posts: 72
Joined: Tue Dec 08, 2020 11:16 am

Re: Weird behaviour while converging

Post by Bruno » Thu Jan 07, 2021 3:32 pm

Hello!

Just to explain the plot that I've sent. Indeed you're right because it was not supposed to be written direct gap there! Following the r- files you have lines like "[HF]Direct Gaps [ev]: 6.41273 13.66096", what is being plot is the first value(in this case 6.41273) as a function of EXXRLvcs. But I suppose that is actually wrong right? I think the right way would be plot the difference between them(in this case 7.24823) as a function of EXXRLvcs, is that right? If I plot this case indeed it seems that 50Ry is not enough and I would have to pick something like 80Ry(see the plot below). I'm running a test with all G vectors as suggested to see if it will indeed solve the problem.

Also below you will find the results from the report from comparison. Indeed the value of nlXC is very weird as you pointed out, I suppose its possible that increasing the G vectors as you suggested might solve the problem. But even the lXC and the So seems quite different, could this be related to something else or is it normal considering that one calculation has higher BndsRnXp?

Older cluster with BndsRnXp = 1 | 700
B=82 Eo= 0.00 E= 0.24 E-Eo= 0.24 Re(Z)=0.85 Im(Z)=-.1273E-2 nlXC=-17.88 lXC=-15.77 So= 2.387
B=83 Eo= 0.17 E= 1.98 E-Eo= 1.81 Re(Z)=0.86 Im(Z)=-.1206E-2 nlXC=-8.467 lXC=-11.56 So=-.9893

New cluster with BndsRnXp = 1 | 800
B=82 Eo= 0.00 E= 1.07 E-Eo= 1.07 Re(Z)=0.97 Im(Z)=-.3682E-3 nlXC=-.9789 lXC=-1.607 So=0.4767
B=83 Eo= 0.17 E= 1.01 E-Eo= 0.84 Re(Z)=0.97 Im(Z)=-.3751E-3 nlXC=-.6227E-2 lXC=-1.347 So=-.4765

Anyway, as soon as the test with more G vectors finishes I'll feedback.
EXXRLvcs_2.png
Thanks!
Regards,
You do not have the required permissions to view the files attached to this post.
MSc. Bruno Cucco
PhD Candidate
CNRS Institut des Sciences Chimiques de Rennes, France
Université de Rennes 1
https://iscr.univ-rennes1.fr

User avatar
Daniele Varsano
Posts: 3816
Joined: Tue Mar 17, 2009 2:23 pm
Contact:

Re: Weird behaviour while converging

Post by Daniele Varsano » Thu Jan 07, 2021 4:19 pm

Dear Bruno,
you have totally different number also for the local xc. This just depends on the specific wavefunctions you are calculating, so no convergence needed beside setting VXCRLvcs with the maximum value of G vectors.
I would stop any tests before understanding what is going on here.

As you get the same eigenvalue for the KS system, I presume that the ground state is correct.
I suggest you to check E_xc value in the report and compare with the exchange-correlation energy you find in the QE output.
If they disagree, please check if the pseudo potential you are using they contain non linear core correction.
It seems one of them it contains them:
PP Number of Atomic Species 3
NLCC RL compoments 181955
In this case you need to add in your input the keyword:

Code: Select all

UseNLCC
then recompute the exchange (before delete the ndb.HF* file) part and see if you get reasonable results (compare also the E_xc it should be the same of QE). It is possible you are using different version of Yambo and before it was set by default.
In any case the use of pseudo with NLCC is discouraged.
Other possibility is that the linear algebra is not working correctly because of compilation, you can try to recompile the code using

Code: Select all

 --enable-int-linalg 
option in the configure. Anyway I suggest you to do the test I suggested before recompiling the code.

Best,
Daniele
Dr. Daniele Varsano
S3-CNR Institute of Nanoscience and MaX Center, Italy
MaX - Materials design at the Exascale
http://www.nano.cnr.it
http://www.max-centre.eu/

Bruno
Posts: 72
Joined: Tue Dec 08, 2020 11:16 am

Re: Weird behaviour while converging

Post by Bruno » Thu Jan 07, 2021 7:00 pm

Dear Daniele,

Indeed the E_xc does not really match. And you were right, the pseudos do have NLCC so I turned on the NLCC flag as you sugested. The results are:

Without NLCC:
B=82 Eo= 0.00 E= 1.07 E-Eo= 1.07 Re(Z)=0.97 Im(Z)=-.3682E-3 nlXC=-.9791 lXC=-1.607 So=0.4767
B=83 Eo= 0.17 E= 1.01 E-Eo= 0.84 Re(Z)=0.97 Im(Z)=-.3751E-3 nlXC=-.6340E-2 lXC=-1.347 So=-.4765

With NLCC:
B=82 Eo= 0.00 E= 1.09 E-Eo= 1.09 Re(Z)=0.97 Im(Z)=-.3682E-3 nlXC=-.9791 lXC=-1.626 So=0.4767
B=83 Eo= 0.17 E= 1.06 E-Eo= 0.89 Re(Z)=0.97 Im(Z)=-.3751E-3 nlXC=-.6340E-2 lXC=-1.400 So=-.4765

So it seems that it does not solved the problem. I'll try to recompile it with the flag that you suggested, it might do the trick. Do you think it could be a pseudo problem? Maybe I'll try another set just in case.

Thanks!
Regards,
MSc. Bruno Cucco
PhD Candidate
CNRS Institut des Sciences Chimiques de Rennes, France
Université de Rennes 1
https://iscr.univ-rennes1.fr

User avatar
Daniele Varsano
Posts: 3816
Joined: Tue Mar 17, 2009 2:23 pm
Contact:

Re: Weird behaviour while converging

Post by Daniele Varsano » Fri Jan 08, 2021 10:38 am

Dear Bruno,
the linear algebra is working correctly as can be seen from the normalisation of the wfs in the report.
My suggestion at this point is to use a pseudo potential without NLCC and maybe switch to the last version of the code you can download here:
https://github.com/yambo-code

Best,
Daniele
Dr. Daniele Varsano
S3-CNR Institute of Nanoscience and MaX Center, Italy
MaX - Materials design at the Exascale
http://www.nano.cnr.it
http://www.max-centre.eu/

Bruno
Posts: 72
Joined: Tue Dec 08, 2020 11:16 am

Re: Weird behaviour while converging

Post by Bruno » Fri Jan 08, 2021 8:31 pm

Dear Daniele,

Thanks for all the help. I have actually sent an e-mail to the team behind the cluster and hopefully they'll compile it on the system, which would be way better since they know the cluster way better than I do. If they don't maybe they can at least give me some guideline to try the new version. For now I'll keep doing the yambo calculations on the other cluster until I got this solved.

Thanks again!

Regards,
MSc. Bruno Cucco
PhD Candidate
CNRS Institut des Sciences Chimiques de Rennes, France
Université de Rennes 1
https://iscr.univ-rennes1.fr

Post Reply