Bandstructure of Si in GW (VASP2WANNIER90): Difference between revisions

From VASP Wiki
No edit summary
 
(17 intermediate revisions by 4 users not shown)
Line 1: Line 1:
Description: calculation of the bandstructure of Si in GW using the VASP2WANNIER90 interface.
{{Template:GW - Tutorial}}


== Task ==
Calculation of the bandstructure of Si in GW using the VASP2WANNIER90 interface.
----
'''Mind''': The procedure to compute bandstructure in GW using V2W is almost identical to the corresponding HSE one  
'''Mind''': The procedure to compute bandstructure in GW using V2W is almost identical to the corresponding HSE one  
described in [[VASP_example_calculations#Si_bandstructure|Si bandstructure]].
described in [[Si_bandstructure|Si bandstructure]].


'''Mind''': The standard procedure for GW calculations is described in  
'''Mind''': The standard procedure for GW calculations is described in  
[[VASP_example_calculations#bandgap of Si in GW|bandgap of Si in GW]].
[[Bandgap of Si in GW|Bandgap of Si in GW]].
----


== Step 1: a DFT groundstate calculation ==
== Step 1: a DFT groundstate calculation ==
Everything starts with a standard DFT groundstate calculation (in this case PBE).
Everything starts with a standard DFT groundstate calculation (in this case PBE).


*INCAR
*{{TAG|INCAR}}
<pre>
 
ISMEAR =  0
{{TAGBL|ISMEAR}} =  0
SIGMA  =  0.05
{{TAGBL|SIGMA}} =  0.05
GGA    = PE
{{TAGBL|GGA}}   = PE
</pre>
 


*KPOINTS
*{{TAG|KPOINTS}}
<pre>
<pre>
4x4x4
4x4x4
Line 26: Line 32:
</pre>
</pre>


*POSCAR
*{{TAG|POSCAR}}
<pre>
<pre>
system Si
system Si
Line 45: Line 51:
To obtain the corresponding {{FILE|WAVEDER}} file we additionally specify {{TAG|LOPTICS}}=.TRUE.
To obtain the corresponding {{FILE|WAVEDER}} file we additionally specify {{TAG|LOPTICS}}=.TRUE.


*INCAR
*{{TAG|INCAR}}
<pre>
ALGO = Exact
NBANDS  = 64
LOPTICS = .TRUE.
NEDOS = 2000
 
ISMEAR =  0
SIGMA  =  0.05
GGA    = PE
</pre>


{{TAGBL|ALGO}} = Exact
{{TAGBL|NBANDS}}  = 64
{{TAGBL|LOPTICS}} = .TRUE.
{{TAGBL|NEDOS}} = 2000
   
{{TAGBL|ISMEAR}} =  0
{{TAGBL|SIGMA}}  =  0.05
{{TAGBL|GGA}}    = PE


== Step 3: GW calculation including LWANNIER90 TAG==
== Step 3: GW calculation including LWANNIER90 TAG==
Restart from the {{FILE|WAVECAR}} and {{FILE|WAVEDER}} files of the previous calculation, with
Restart from the {{FILE|WAVECAR}} and {{FILE|WAVEDER}} files of the previous calculation, with


*INCAR
*{{TAG|INCAR}}
<pre>
 
## Frequency dependent dielectric tensor including
## Frequency dependent dielectric tensor including
## local field effects within the RPA (default) or
## local field effects within the RPA (default) or
## including changes in the DFT xc-potential (LRPA=.FALSE.).
## including changes in the DFT xc-potential ({{TAGBL|LRPA}}=.FALSE.).
## N.B.: beware one first has to have done a
## N.B.: beware one first has to have done a
## calculation with ALGO=Exact and LOPTICS=.TRUE.
## calculation with {{TAGBL|ALGO}}=Exact and {{TAGBL|LOPTICS}}=.TRUE.
## and a reasonable number of virtual states (see above)
## and a reasonable number of virtual states (see above)
ALGO = GW0 ; LSPECTRAL = .TRUE. ; NOMEGA = 50
{{TAGBL|ALGO}} = GW0 ; {{TAGBL|LSPECTRAL}} = .TRUE. ; {{TAGBL|NOMEGA}} = 50
#LRPA = .FALSE.  
#{{TAGBL|LRPA}} = .FALSE.  
## be sure to take the same number of bands as for
## be sure to take the same number of bands as for
## the LOPTICS=.TRUE. calculation, otherwise the
## the {{TAGBL|LOPTICS}}=.TRUE. calculation, otherwise the
## WAVEDER file is not read correctly
## {{TAGBL|WAVEDER}} file is not read correctly
NBANDS = 64
{{TAGBL|NBANDS}} = 64
##VASP2WANNIER90
##VASP2WANNIER90
LWANNIER90=.TRUE.
{{TAGBL|LWANNIER90}}=.TRUE.
</pre>


Use the wannier90.win file given below which contains all instructions needed to generate the
Use the wannier90.win file given below which contains all instructions needed to generate the
Line 87: Line 90:
num_bands=8
num_bands=8


exclude_bands 9-64
exclude_bands = 9-64


Begin Projections
Begin Projections
Line 190: Line 193:
end kpoints
end kpoints
</pre>
</pre>


== Step 4: WANNIER90==
== Step 4: WANNIER90==


=== Generate Wannier functions ===
=== Compute Wannier functions ===


run wannier90:  
run wannier90:  
Line 203: Line 205:
and the file wannier90.chk needed for the wannier interpolation (next step)  
and the file wannier90.chk needed for the wannier interpolation (next step)  
   
   
=== Generate bandstructure (Wannier interpolation) ===
=== Obtain bandstructure (Wannier interpolation) ===


Uncomment the bandstructure plot flags in wannier.win and rerun (restart) wannier90:
Uncomment the bandstructure plot flags in wannier90.win and rerun (restart) wannier90:


wannier90.x wannier90
wannier90.x wannier90


This run generates the following bandstructure files whic can be visualized usingxmgrace or gnuplot:
This run generates the following bandstructure files which can be visualized using xmgrace or gnuplot:


wannier90_band.agr
wannier90_band.agr
Line 215: Line 217:
wannier90_band.dat
wannier90_band.dat


wannier90_band.gnu  
wannier90_band.gnu


to plot the band structure using gnuplot:
<code>gnuplot -persist wannier90_band.gnu</code>


== Download ==
== Download ==
[http://www.vasp.at/vasp-workshop/examples/Si_bandstructure_GW.tgz Si_bandstructure_GW.tgz]
[[Media:Si bandstructure GW.tgz| Si_bandstructure_GW.tgz]]
 
{{Template:GW - Tutorial}}


----
Back to the [[The_VASP_Manual|main page]].
[[VASP_example_calculations|To the list of examples]] or to the [[The_VASP_Manual|main page]]


[[Category:Examples]]
[[Category:Examples]]

Latest revision as of 12:41, 3 June 2024

Task

Calculation of the bandstructure of Si in GW using the VASP2WANNIER90 interface.


Mind: The procedure to compute bandstructure in GW using V2W is almost identical to the corresponding HSE one described in Si bandstructure.

Mind: The standard procedure for GW calculations is described in Bandgap of Si in GW.


Step 1: a DFT groundstate calculation

Everything starts with a standard DFT groundstate calculation (in this case PBE).

ISMEAR =  0
SIGMA  =  0.05
GGA    = PE


4x4x4
 0
G
 4 4 4
 0 0 0
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.

ALGO = Exact
NBANDS  = 64
LOPTICS = .TRUE.
NEDOS = 2000
    
ISMEAR =  0
SIGMA  =  0.05
GGA    = PE

Step 3: GW calculation including LWANNIER90 TAG

Restart from the WAVECAR and WAVEDER files of the previous calculation, with

## 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
##VASP2WANNIER90
LWANNIER90=.TRUE.

Use the wannier90.win file given below which contains all instructions needed to generate the necessary input files for the WANNIER90 runs (wannier90.amn, wannier90.mmn, wannier90.eig).

  • wannier90.win
num_wann=8
num_bands=8

exclude_bands = 9-64

Begin Projections
Si:sp3
End Projections

dis_froz_max=9
dis_num_iter=1000

guiding_centres=true

# Bandstructure plot 
#restart         =  plot
#bands_plot      =  true
#begin kpoint_path
#L 0.50000  0.50000 0.5000 G 0.00000  0.00000 0.0000
#G 0.00000  0.00000 0.0000 X 0.50000  0.00000 0.5000
#X 0.50000  0.00000 0.5000 K 0.37500 -0.37500 0.0000
#K 0.37500 -0.37500 0.0000 G 0.00000  0.00000 0.0000
#end kpoint_path
#bands_num_points 40
#bands_plot_format gnuplot xmgrace

begin unit_cell_cart
     2.7150000     2.7150000     0.0000000
     0.0000000     2.7150000     2.7150000
     2.7150000     0.0000000     2.7150000
end unit_cell_cart

begin atoms_cart
Si       0.0000000     0.0000000     0.0000000
Si       1.3575000     1.3575000     1.3575000
end atoms_cart

mp_grid =     4     4     4

begin kpoints
     0.0000000     0.0000000     0.0000000
     0.2500000     0.0000000     0.0000000
     0.5000000     0.0000000     0.0000000
     0.2500000     0.2500000     0.0000000
     0.5000000     0.2500000     0.0000000
    -0.2500000     0.2500000     0.0000000
     0.5000000     0.5000000     0.0000000
    -0.2500000     0.5000000     0.2500000
     0.0000000     0.2500000     0.0000000
     0.0000000     0.0000000     0.2500000
    -0.2500000    -0.2500000    -0.2500000
    -0.2500000     0.0000000     0.0000000
     0.0000000    -0.2500000     0.0000000
     0.0000000     0.0000000    -0.2500000
     0.2500000     0.2500000     0.2500000
     0.0000000     0.5000000     0.0000000
     0.0000000     0.0000000     0.5000000
    -0.5000000    -0.5000000    -0.5000000
     0.0000000     0.2500000     0.2500000
     0.2500000     0.0000000     0.2500000
    -0.2500000    -0.2500000     0.0000000
    -0.2500000     0.0000000    -0.2500000
     0.0000000    -0.2500000    -0.2500000
     0.0000000     0.5000000     0.2500000
     0.2500000     0.0000000     0.5000000
    -0.2500000    -0.2500000     0.2500000
    -0.5000000    -0.2500000    -0.5000000
     0.2500000     0.5000000     0.0000000
     0.2500000    -0.2500000    -0.2500000
    -0.5000000    -0.5000000    -0.2500000
     0.0000000     0.2500000     0.5000000
    -0.2500000     0.2500000    -0.2500000
    -0.2500000    -0.5000000    -0.5000000
     0.5000000     0.0000000     0.2500000
    -0.5000000    -0.2500000     0.0000000
     0.0000000    -0.5000000    -0.2500000
    -0.2500000     0.0000000    -0.5000000
     0.2500000     0.2500000    -0.2500000
     0.5000000     0.2500000     0.5000000
    -0.2500000    -0.5000000     0.0000000
    -0.2500000     0.2500000     0.2500000
     0.5000000     0.5000000     0.2500000
     0.0000000    -0.2500000    -0.5000000
     0.2500000    -0.2500000     0.2500000
     0.2500000     0.5000000     0.5000000
    -0.5000000     0.0000000    -0.2500000
     0.0000000    -0.2500000     0.2500000
     0.2500000     0.0000000    -0.2500000
    -0.2500000    -0.2500000    -0.5000000
     0.2500000     0.5000000     0.2500000
     0.2500000    -0.2500000     0.0000000
    -0.5000000    -0.2500000    -0.2500000
     0.2500000     0.2500000     0.5000000
     0.0000000     0.2500000    -0.2500000
    -0.2500000    -0.5000000    -0.2500000
     0.5000000     0.2500000     0.2500000
    -0.2500000     0.0000000     0.2500000
     0.0000000     0.5000000     0.5000000
     0.5000000     0.0000000     0.5000000
     0.2500000    -0.2500000     0.5000000
     0.5000000     0.2500000    -0.2500000
    -0.5000000    -0.2500000    -0.7500000
     0.2500000    -0.5000000    -0.2500000
    -0.2500000     0.2500000    -0.5000000
end kpoints

Step 4: WANNIER90

Compute Wannier functions

run wannier90:

wannier90.x wannier90

This run generates the wannier90 standard output (wannier90.wout) and the file wannier90.chk needed for the wannier interpolation (next step)

Obtain bandstructure (Wannier interpolation)

Uncomment the bandstructure plot flags in wannier90.win and rerun (restart) wannier90:

wannier90.x wannier90

This run generates the following bandstructure files which can be visualized using xmgrace or gnuplot:

wannier90_band.agr

wannier90_band.dat

wannier90_band.gnu

to plot the band structure using gnuplot: gnuplot -persist wannier90_band.gnu

Download

Si_bandstructure_GW.tgz

Back to the main page.