Dear admin and all,
I am new to calculating excitons using the BSE method and followed the Si example as given in the tutorial. Previously, I have experience with GW calculations for several compounds. But In the case of BSE calculations, I am troubling with two things and help me in this situation.
1. I found like my electronic bandgap ( from GW calculations) is higher than the optical gap (first optical transition in vasprun.xml), which is an unexpected result. For your reference herewith I am attaching the input files and outputs for GW and BSE calculations.
2. In this BSE calculations I am using 12 X 12 X 1 Kpoint grid with a ram memory of 1500 GB. But I am unable to simulate with 16X16X1 Kpoints with the same Ram. It would be beneficial to know the memory requirement of BSE calculations.
Thanks in advance
With Regards
S. Appalakondaiah,
Postdoctoral researcher, Department of Physics,
University of Seoul, South Korea
Regarding the computing of optical gap with BSE
Moderators: Global Moderator, Moderator

 Newbie
 Posts: 2
 Joined: Thu Aug 19, 2021 11:24 pm

 Global Moderator
 Posts: 129
 Joined: Mon Nov 04, 2019 12:44 pm
Re: Regarding the computing of optical gap with BSE
1) Local and semilocal functionals usually tend to underestimate the band gap. This is often cured by GW which in most cases opens up the band gap.
2) In both GW and BSE calculations the minimum memory requirement is written out at the beginning of the calculation like this
" min. memory requirement per mpi rank 56.1 MB, per node 448.9 MB"
2) In both GW and BSE calculations the minimum memory requirement is written out at the beginning of the calculation like this
" min. memory requirement per mpi rank 56.1 MB, per node 448.9 MB"

 Newbie
 Posts: 2
 Joined: Thu Aug 19, 2021 11:24 pm
Regarding the computing of optical gap with BSE
Dear ferenc_karsai,
"1) Local and semilocal functionals usually tend to underestimate the bandgap. This is often cured by GW which in most cases opens up the bandgap."
Yes. Local or Semilocal (LDA or GGA) approximations underestimate the bandgap and the GW method computes the accurate bandgap. My issue is different and the comparison between GW band gap and BSE first peak. I found that GW bandgap of ~2.04 eV for MoS2/WS2 heterostructure and the first optical transition in BSE calculation is 2.10, which is unusual and not consistent with previous reports.
"2) In both GW and BSE calculations the minimum memory requirement is written out at the beginning of the calculation like this
" min. memory requirement per mpi rank 56.1 MB, per node 448.9 MB""
This is the thing that surprised me. I am using 1500GB RAM to run MoS2/WS2 heterostructure contains 6 atoms with 400e eV ENCUT, 100 eV ENCUTGW with 16 X16X1 kpoints to perform BSE calculations. After completing the job, it is not giving any result, specially no optical transition data in vasprun.xml. But I am able to perform 12 X 12 X1 kpoints calculation but ended with a point 1 as mentioned above.
Herewith I am attaching my inputs for your quick reference. Hope a positive reply from you
PS: This is the first time I am doing BSE calculations. previously, I have good experience in GW calculations for molecular solids from 3 atoms to 48 atoms.
Regards
Konda
Postdoctoral researcher
University of Seoul
South Korea
"1) Local and semilocal functionals usually tend to underestimate the bandgap. This is often cured by GW which in most cases opens up the bandgap."
Yes. Local or Semilocal (LDA or GGA) approximations underestimate the bandgap and the GW method computes the accurate bandgap. My issue is different and the comparison between GW band gap and BSE first peak. I found that GW bandgap of ~2.04 eV for MoS2/WS2 heterostructure and the first optical transition in BSE calculation is 2.10, which is unusual and not consistent with previous reports.
"2) In both GW and BSE calculations the minimum memory requirement is written out at the beginning of the calculation like this
" min. memory requirement per mpi rank 56.1 MB, per node 448.9 MB""
This is the thing that surprised me. I am using 1500GB RAM to run MoS2/WS2 heterostructure contains 6 atoms with 400e eV ENCUT, 100 eV ENCUTGW with 16 X16X1 kpoints to perform BSE calculations. After completing the job, it is not giving any result, specially no optical transition data in vasprun.xml. But I am able to perform 12 X 12 X1 kpoints calculation but ended with a point 1 as mentioned above.
Herewith I am attaching my inputs for your quick reference. Hope a positive reply from you
PS: This is the first time I am doing BSE calculations. previously, I have good experience in GW calculations for molecular solids from 3 atoms to 48 atoms.
Regards
Konda
Postdoctoral researcher
University of Seoul
South Korea
You do not have the required permissions to view the files attached to this post.

 Global Moderator
 Posts: 129
 Joined: Mon Nov 04, 2019 12:44 pm
Re: Regarding the computing of optical gap with BSE
@Konda
I tried your calculation and the results look problematic. A colleague of mine, who is a BSE expert is going to look into the calculations.
We will come back with the answer.
I tried your calculation and the results look problematic. A colleague of mine, who is a BSE expert is going to look into the calculations.
We will come back with the answer.

 Global Moderator
 Posts: 1
 Joined: Mon Sep 13, 2021 12:45 pm
Re: Regarding the computing of optical gap with BSE
Dear Konda,
1) It looks like you are comparing your fundamental GW band gap with the first optical transition from the BSE calculation. Considering that only direct transitions are allowed in the optical absorption calculations (q=0), you should be comparing the optical band gap with the direct GW one. If we compare these two band gaps, we are going to see that the first optical transition is indeed lower than the direct band gap. You can also test it by comparing your BSE spectrum with the spectrum calculated in the independent particle approximation (IPA). To get the IPA spectrum you can repeat your BSE calculation with LADDER=.FALSE. and LHARTREE=.FALSE. flags.
2) The memory usage can be found in OUTCAR files: total amount of memory used by VASP MPIrank0. VASP does not estimate the required memory beforehand, but you can make an extrapolation based on calculations with sparser kpoint grids. If your calculation runs out of memory, you can try to reduce the number of tasks per node.
A few comments regarding your input files:
 I noticed that there is a typo in your INCAR.step3.gw0. It should be NELM, not NLEM. In fact, the default NELM in GW calculations is set to 1, so you actually perform a oneshot GW calculation. If you would like to do a selfconsistent GW, keep in mind that the wave functions derivatives should be recalculated every time the wave functions are updated (see Practical guide to GW calculations).
 You shoud use the same ENCUTGW in your GW and BSE calculations.
Best regards,
Alexey Tal
1) It looks like you are comparing your fundamental GW band gap with the first optical transition from the BSE calculation. Considering that only direct transitions are allowed in the optical absorption calculations (q=0), you should be comparing the optical band gap with the direct GW one. If we compare these two band gaps, we are going to see that the first optical transition is indeed lower than the direct band gap. You can also test it by comparing your BSE spectrum with the spectrum calculated in the independent particle approximation (IPA). To get the IPA spectrum you can repeat your BSE calculation with LADDER=.FALSE. and LHARTREE=.FALSE. flags.
2) The memory usage can be found in OUTCAR files: total amount of memory used by VASP MPIrank0. VASP does not estimate the required memory beforehand, but you can make an extrapolation based on calculations with sparser kpoint grids. If your calculation runs out of memory, you can try to reduce the number of tasks per node.
A few comments regarding your input files:
 I noticed that there is a typo in your INCAR.step3.gw0. It should be NELM, not NLEM. In fact, the default NELM in GW calculations is set to 1, so you actually perform a oneshot GW calculation. If you would like to do a selfconsistent GW, keep in mind that the wave functions derivatives should be recalculated every time the wave functions are updated (see Practical guide to GW calculations).
 You shoud use the same ENCUTGW in your GW and BSE calculations.
Best regards,
Alexey Tal

 Global Moderator
 Posts: 129
 Joined: Mon Nov 04, 2019 12:44 pm
Re: Regarding the computing of optical gap with BSE
Regarding 2:
"min. memory requirement per mpi rank ..." seems to give total useless information in BSE calculations. So look for the output that Alexey wrote. Unfortunately the information is only given after the calculation.
All important large arrays in BSE are distributed by scaLAPACK, so increasing the number of mpi ranks in a calculation should (almost) linearly decrease the amount of memory needed per mpi rank.
"min. memory requirement per mpi rank ..." seems to give total useless information in BSE calculations. So look for the output that Alexey wrote. Unfortunately the information is only given after the calculation.
All important large arrays in BSE are distributed by scaLAPACK, so increasing the number of mpi ranks in a calculation should (almost) linearly decrease the amount of memory needed per mpi rank.