Bandgap of Si in GW: Difference between revisions
Vaspmaster (talk | contribs) |
Vaspmaster (talk | contribs) No edit summary |
||
Line 55: | Line 55: | ||
GGA = PE | GGA = PE | ||
</pre> | </pre> | ||
'''Mind''': make a copy of your {{FILE|WAVECAR}} and {{FILE|WAVEDER}} files, as we will repeatedly need them in the following. | |||
For instance | |||
cp WAVECAR WAVECAR.LOPTICS | |||
cp WAVEDER WAVEDER.LOPTICS | |||
=== Step 3: the actual GW calculation === | === Step 3: the actual GW calculation === | ||
Restart from the {{ | Restart from the {{FILE|WAVECAR}} and {{FILE|WAVEDER}} files of the previous calculation, with | ||
*INCAR | *INCAR | ||
Line 88: | Line 94: | ||
LRPA = .FALSE. | LRPA = .FALSE. | ||
and again restart from the | and again restart from the {{FILE|WAVECAR}} and {{FILE|WAVEDER}} files from step 2. | ||
=== Beyond G<sub>0</sub>W<sub>0</sub>: GW<sub>0</sub> === | === Beyond G<sub>0</sub>W<sub>0</sub>: GW<sub>0</sub> === |
Revision as of 16:36, 7 June 2012
Description: calculation of the bandgap of Si using various flavours of GW.
To do GW calculations we have to follow a 3-step procedure.
Step 1: a DFT groundstate calculation
Everything starts with a standard DFT groundstate calculation (in this case PBE).
- INCAR
ISMEAR = 0 SIGMA = 0.05 GGA = PE
- KPOINTS
6x6x6 0 G 6 6 6 0 0 0
- POSCAR
system Si 5.430 0.5 0.5 0.0 0.0 0.5 0.5 0.5 0.0 0.5 2 cart 0.00 0.00 0.00 0.25 0.25 0.25
Step 2: obtain DFT virtual orbitals
To obtain a WAVECAR file with a reasonable number of virtual orbitals (50-100 per atom) we need to restart from the previous groundstate calculation with ALGO=Exact, and manually set the number of bands by means of the NBANDS-tag. To obtain the corresponding WAVEDER file we additionally specify LOPTICS=.TRUE.
- INCAR
ALGO = Exact NBANDS = 64 LOPTICS = .TRUE. NEDOS = 2000 ## you might try #LPEAD = .TRUE. ISMEAR = 0 SIGMA = 0.05 GGA = PE
Mind: make a copy of your WAVECAR and WAVEDER files, as we will repeatedly need them in the following. For instance
cp WAVECAR WAVECAR.LOPTICS cp WAVEDER WAVEDER.LOPTICS
Step 3: the actual GW calculation
Restart from the WAVECAR and WAVEDER files of the previous calculation, with
- INCAR
## Frequency dependent dielectric tensor including ## local field effects within the RPA (default) or ## including changes in the DFT xc-potential (LRPA=.FALSE.). ## N.B.: beware one first has to have done a ## calculation with ALGO=Exact and LOPTICS=.TRUE. ## and a reasonable number of virtual states (see above) ALGO = GW0 ; LSPECTRAL = .TRUE. ; NOMEGA = 50 #LRPA = .FALSE. ## be sure to take the same number of bands as for ## the LOPTICS=.TRUE. calculation, otherwise the ## WAVEDER file is not read correctly NBANDS = 64
To quickly find the QP-energy of the highest lying occupied state, try
grep " 4 " OUTCAR | sort -n -k 3 | tail -1 | awk '{print $3}'
and for the lowest lying unoccupied state,
grep " 5 " OUTCAR | sort -n -k 3 | head -1 | awk '{print $3}'
Beyond the random-phase-approximation
To include local field effects beyond the random-phase-approximation in the description of the frequency dependent dielectric response function add the following line to your INCAR file:
LRPA = .FALSE.
and again restart from the WAVECAR and WAVEDER files from step 2.
Beyond G0W0: GW0
The most usual step beyond single-shot GW (G0W0) is to iterate the quasi-particle energies in the Greens functions. This is the socalled GW0 approximation. To have VASP do, for instance, 4 iterations of the QP-energies in G, add the following line to the INCAR file:
NELM = 4
and again restart from the WAVECAR and WAVEDER files from step 2.
To quickly find the QP-energy of the highest lying occupied state after 4 iterations of the QP energies in G, try
grep " 4 " OUTCAR | tail -16 | sort -n -k 3 | tail -1 | awk '{print $3}'
and for the corresponding lowest lying unoccupied state,
grep " 5 " OUTCAR | tail -16 | sort -n -k 3 | head -1 | awk '{print $3}'
Download
To the list of examples or to the main page