BSE convergence

You can find here problems arising when using old releases of Yambo (< 5.0). Issues as parallelization strategy, performance issues and other technical aspects.

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

Laura Caputo
Posts: 88
Joined: Sun Apr 11, 2021 3:02 pm

BSE convergence

Post by Laura Caputo » Mon Nov 22, 2021 5:24 pm

Good afternoon,

I am going to calculate some exciton properties on some materials; I have followed the BSE tutorials on Yambo website but I have some follow-up questions since I'm new to this methodology.

1. I have seen that on the tutorial the calculation of the excitons and the spectra is done step-by-step (screening, kernel, solver). At this point, I guess one could converge the values related to each step, do the calculation and then move to the next one. For instance, converge NGsBlxXs, BandsRnXs and calculate the screening. Then do the same for the kernel and so on.

2. For the convergence of the screening parameters, should I see if the values of that band energies near the Fermi energy are converged?

3. For the convergence of the bands for vc pairs, it's not clear to me how do I choose their values. I get that I should use the bands near the Fermi energy (so I should see the occupation of the bands and choose the relative ones). Then, how do I select the bands to do the convergence test? For instance, the highest occupied band is 8, I start with 8-9, then I should use 7-10, 6-11 etc.? To search for the converged value, I should plot the spectra for every couple, right?

4. I am studying 2D systems. I have used for GW calculations RIM method and the Coulomb truncated potential converging the vacuum, can I use the same (for the same system of course)?

Lastly, I wanted to ask a question for the FFTGvecs related to both GW and BSE. I have done some GW calculations but without using this input keyword so I guess Yambo automatically uses the maximum (which is the one used in the DFT calculation). For this BSE part, should I converge this value in order to have feasible calculations?


Regards,
Laura Caputo
Ph.D. Student
Université Catholique de Louvain
https://uclouvain.be/fr/repertoires/laura.caputo

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

Re: BSE convergence

Post by Daniele Varsano » Mon Nov 22, 2021 6:32 pm

Dear Laura,

1. In the tutorial the calculation is done step by step for pedagogical purpose, actually all the needed calculations can be combined.
For instance, converge NGsBlxXs, BandsRnXs and calculate the screening. Then do the same for the kernel and so on.
Actually, if you have already converged a GW calculation you can use the same parameters and also the same screening database you calculated for the plasmon pole. As they contain the static screening, yambo is able to read it from that database (use pp instead of ems in the BSE input file). This will save a lot of computer time.

2. See above, if the screening was converged for a GW calculation you can use it also for theBSE

3.
For instance, the highest occupied band is 8, I start with 8-9, then I should use 7-10, 6-11 etc.?
Yes.
To search for the converged value, I should plot the spectra for every couple, right?
Yes, of course it will depends to what part of the spectrum you are interested in, to converge higher in energy you will need more bands

4. Yes

5. FFT: yambo by default use all the G vectors of the wave function, if you do not have memory problem you can forget about it.

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/

Laura Caputo
Posts: 88
Joined: Sun Apr 11, 2021 3:02 pm

Re: BSE convergence

Post by Laura Caputo » Mon Nov 22, 2021 6:54 pm

Hello,

Regarding the usage of the screening database used in GW, I was wondering if the convergence is still valid. When I did the GW study, I converged my parameters checking the gap that should be faster than considering the valence/conduction bands, in this case, should the convergence be done considering the bands separately?
Yes, of course it will depends to what part of the spectrum you are interested in, to converge higher in energy you will need more bands
If I'm interested in the calculation of exctions, how do I know if I should go higher in energy?

Last question: for the GW calculation, I had quite slow convergence with the k-point mesh and thus I extracted the band gap value calculating it until a certain mesh. With BSE, I understand that of course, this is not possible. The criteria for the convergence of k-points here is still just looking at the spectra?
Laura Caputo
Ph.D. Student
Université Catholique de Louvain
https://uclouvain.be/fr/repertoires/laura.caputo

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

Re: BSE convergence

Post by Daniele Varsano » Tue Nov 23, 2021 8:13 am

Dear Laura,
Regarding the usage of the screening database used in GW, I was wondering if the convergence is still valid. When I did the GW study, I converged my parameters checking the gap that should be faster than considering the valence/conduction bands, in this case, should the convergence be done considering the bands separately?
Usually it is enough, then you can check if it is the case.
If I'm interested in the calculation of exctions, how do I know if I should go higher in energy?
Look at the excitonic peaks you are interested in if they are converged. Of course if you are interested in the continuum spectrum then depending until what energy you want to converge you will beed more bands. Usually bound excitons are the interesting part.
The criteria for the convergence of k-points here is still just looking at the spectra?
Yes, and this is usually the heavy part.

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/

Laura Caputo
Posts: 88
Joined: Sun Apr 11, 2021 3:02 pm

Re: BSE convergence

Post by Laura Caputo » Thu Nov 25, 2021 3:38 pm

Good afternoon,

I have just another question. A few time ago I asked if it was possible to perform the convergence of the parameters for GW calculations using small unconverged kpoint mesh and then, in the end, using these converged parameters to check the kpoint convergence for GW.

Is it possible to do the same for BSE calculations? For instance, using 3x3x1 (2D material) for converging the parameters and then using the converged parameter to study the spectra at 6x6x1, 9x9x1etc.

Sincerely,
Laura Caputo
Ph.D. Student
Université Catholique de Louvain
https://uclouvain.be/fr/repertoires/laura.caputo

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

Re: BSE convergence

Post by Daniele Varsano » Thu Nov 25, 2021 4:34 pm

Dear Laura,
yes, you can assess the convergence parameter using a small k grid and finally converge the k-points.
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/

Laura Caputo
Posts: 88
Joined: Sun Apr 11, 2021 3:02 pm

Re: BSE convergence

Post by Laura Caputo » Thu Nov 25, 2021 4:43 pm

Thank you, Daniele. Just another question: I have noticed that in the BSE tutorial one parameter to converge is, for example, NGsBlkXs which should follow the same convergence as in the GW. In the input of the latter, however, the keyword is reported as NGsBlkXp (and the same for the bands). Why is that so?
Laura Caputo
Ph.D. Student
Université Catholique de Louvain
https://uclouvain.be/fr/repertoires/laura.caputo

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

Re: BSE convergence

Post by Daniele Varsano » Thu Nov 25, 2021 4:47 pm

Dear Laura,

Both provides the size of the dielectric matrix:

NGsBlkXs: static screening
NGsBlkXp: plasmon pole screening

In the BSE you need the static screening that can be calculated using em1s run level and NGsBlkXs size, but you can also read the plasmon pole database if you have already calculated them for the GW run as they also contain the static screening. In order to do so set pp instead of em1s and NGsBlkXp variable accordingly.

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/

Laura Caputo
Posts: 88
Joined: Sun Apr 11, 2021 3:02 pm

Re: BSE convergence

Post by Laura Caputo » Thu Nov 25, 2021 5:02 pm

Dear Daniele,

I understand that if I didn't do the GW calculation before BSE I can directly converge the static screening and the number of bands. To do so, I have generated my input by using the command

yambo -X s

and obtaining something like this

rim_cut
screen # [R] Inverse Dielectric Matrix
em1s # [R][Xs] Statically Screened Interaction
dipoles # [R] Oscillator strenghts (or dipoles)
DIP_Threads=8 # [OPENMP/X] Number of threads for dipoles
X_Threads=8 # [OPENMP/X] Number of threads for response functions
Chimod= "HARTREE" # [X] IP/Hartree/ALDA/LRC/PF/BSfxc
% BndsRnXs
1 | 300 | # [Xs] Polarization function bands
%
NGsBlkXs= 1 Ry # [Xs] Response block size
% LongDrXs
1.000000 | 1.000000 | 0.000000 | # [Xs] [cc] Electric Field
%
XTermKind= "none" # [X] X terminator ("none","BG" Bruneval-Gonze)
RandQpts = 3000000 # [RIM] Number of random q-points in the BZ
RandGvec = 300 RL # [RIM] Coulomb interaction RS components
CUTGeo = "box z" # [CUT] Coulomb Cutoff geometry: box/cylinder/sphere X/Y/Z/XY..
% CUTBox
0.00 | 0.00 | 18.897259886 | # [CUT] [au] Box sides
%

which I modified for the 2D system. From this, I guess I can converge both parameters but from this kind of input I obtain just the screening and not some properties that I can check for the convergence, right?
Laura Caputo
Ph.D. Student
Université Catholique de Louvain
https://uclouvain.be/fr/repertoires/laura.caputo

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

Re: BSE convergence

Post by Daniele Varsano » Thu Nov 25, 2021 5:08 pm

Ciao Laura,

you can generate a complete BSE run e.g. as:
yambo -o b -X s -k sex -y d -r -V qp

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/

Locked