ENCUTGW: Difference between revisions

From VASP Wiki
No edit summary
No edit summary
(15 intermediate revisions by 2 users not shown)
Line 1: Line 1:
{{TAGDEF|ENCUTGW|[real] (energy cutoff for response function| 2/3 {{TAG|ENCUT}}}}
{{TAGDEF|ENCUTGW|[real]| 2/3 {{TAG|ENCUT}}}}


Description: The parameter {{TAG|ENCUTGW}} controls the basis set for the response functions
 
Description: The tag {{TAG|ENCUTGW}} sets the energy cutoff for response function. It controls the basis set for the response functions
in exactly the same manner as {{TAG|ENCUT}} does for the orbitals.
in exactly the same manner as {{TAG|ENCUT}} does for the orbitals.
__TOC__
----
----
In the GW caseupdates of the response function dominate the computational work load:
In GW and RPA calculationsstoring and manipulating the response function dominates the computational work load:


<math>\frac{1}{\Omega} \sum_{n,n',{\mathbf{k}}}2 w_{{\mathbf{k}}}
<math>\chi_{{\mathbf{q}}}^0 ({\mathbf{G}}, {\mathbf{G}}', \omega)=\frac{1}{\Omega} \sum_{n,n',{\mathbf{k}}}2 w_{{\mathbf{k}}}
  (f_{n'{\mathbf{k}}+{\mathbf{q}}} - f_{n{\mathbf{k}}})   
  (f_{n'{\mathbf{k}}+{\mathbf{q}}} - f_{n{\mathbf{k}}})   
\times  \frac{\langle \psi_{n{\mathbf{k}}}| e^{-i ({\mathbf{q}}+{\mathbf{G}}){\mathbf{r}}} | \psi_{n'{\mathbf{k}}+{\mathbf{q}}}\rangle
\times  \frac{\langle \psi_{n{\mathbf{k}}}| e^{-i ({\mathbf{q}}+{\mathbf{G}}){\mathbf{r}}} | \psi_{n'{\mathbf{k}}+{\mathbf{q}}}\rangle
Line 15: Line 20:
the response function <math>\chi_{{\mathbf{q}}}^0 ({\mathbf{G}}, {\mathbf{G}}', \omega)</math>.
the response function <math>\chi_{{\mathbf{q}}}^0 ({\mathbf{G}}, {\mathbf{G}}', \omega)</math>.


Tests have shown that choosing {{TAG|ENCUTGW}}= 2/3 {{TAG|ENCUT}} yields
Our experience suggests that choosing {{TAG|ENCUTGW}}= 2/3 {{TAG|ENCUT}} yields
reasonable results at fairly modest computational times. In principle, however, the response function
reasonable results at fairly modest computational cost, although, the response function
contains contributions up to twice the plane wave cutoff <math>G_{\rm cut}</math>
contains contributions up to twice the plane wave cutoff <math>G_{\rm cut}</math>
(see Sec. {{TAG|ALGO-WRAP}}). Since the diagonal of the dielectric matrix
(see {{TAG|ALGO}}).
converges rapidly to one, such a large cutoff is hardly ever required
Furthermore, RPA correlation energies are reported using an internal extrapolation of the correlation
(note that some version of VASP might crash if {{TAG|ENCUTGW}} <math>\ge</math> {{TAG|ENCUT}}).
energy by varying {{TAG|ENCUTGW}}  internally (inside VASP) between the largest value given in the INCAR
Furthermore, in most cases, it is even possible to set {{TAG|ENCUTGW}}  
file and smaller values <ref name="harl:08"/>.  The extrapolated value is only reliable, if
to a value between 150 to 200 eV, and even 100 eV gives usually
{{TAG|ENCUTGW}} is smaller then {{TAG|ENCUT}} (the cutoff extrapolation with respect to {{TAG|ENCUTGW}}
QP shifts that are accurate to within a few hundreds of an eV (0.01-0.02 eV).
would be very precise, if the plane wave basis for the orbitals were infinite).
This can help to speed up the calculations
Again the VASP defaults yield very reasonable values for the extrapolated correlation
significantly and reduces the memory requirements substantially.
energy. In fact, it is unwise to increase {{TAG|ENCUTGW}} only, without increasing {{TAG|ENCUT}} .
To converge RPA correlation energies, simply increase {{TAG|ENCUT}} and the number
of orbitals, and use the VASP default for {{TAG|ENCUTGW}}.


For QP gaps, it is sometimes possible to set {{TAG|ENCUTGW}}
to values between 150 to 200 eV, and even 100 eV can yield
gaps that are accurate to within a few tens of an eV for main group elements.
Be aware, however, that the absolute values of the QP energies
depend inverse proportionally on the number of plane waves. Thus
convergence of absolute QP energies is always very slow, although QP gaps
might seem converged.


The recommended procedure to obtain accurate QP energies is discussed in the reference below.
Specifically,  for reference type calculations we recommend the following procedure:
* use the default for ENCUTGW, or even decrease ENCUTGW to half the value of ENCUT.
* Calculate all orbitals that the plane wave basis set allows to calculate. This number can be determined by searching  for "maximum number of plane-waves" in the groundstate DFT OUTCAR file, and setting {{TAG|NBANDS}} to this value.
* Increase ENCUT systematically and plot the QP energies versus the number of plane wave  coefficients (which equals the number of orbitals). This means ENCUTGW and NBANDS increase as ENCUT increases.
This procedure can be carried out using few k-points. Other commonly applied methods can yield less accurate results and are not considered
to be reliable.
== FFT grid and {{TAG|PRECFOCK}} ==
The flag {{TAG|PRECFOCK}} determines the FFT grid in all  GW (and Hartree-Fock) related routines.
The flag {{TAG|PRECFOCK}} determines the FFT grid in all  GW (and Hartree-Fock) related routines.
For small systems (which are often dominated by  FFT operations),  
For small systems (which are often dominated by  FFT operations),  
it can have a significant impact on the compute time for  
the flag can have a significant impact on the compute time for  
QP calculations. For large systems, the FFT's usually do not
QP calculations. For large systems, the FFT's usually do not
dominating the computational work load and savings are expected to be small for {{TAG|PRECFOCK}} = ''fast''.  
dominating the computational work load and savings are expected to be small for {{TAG|PRECFOCK}} = ''fast''.  
QP shifts are usually not very sensitive to the setting of {{TAG|PRECFOCK}}
QP shifts are usually not very sensitive to the setting of {{TAG|PRECFOCK}}
(and it therefore does not harm to set  {{TAG|PRECFOCK}} = ''fast'', whereas for
(and it therefore does not harm to set  {{TAG|PRECFOCK}} = ''fast''), whereas for
RPA calculations we recommend to set {{TAG|PRECFOCK}} = ''normal'' to avoid numerical errors.
RPA calculations we recommend to set {{TAG|PRECFOCK}} = ''normal'' to avoid numerical errors.


Line 41: Line 67:
{{TAG|ENCUT}},
{{TAG|ENCUT}},
{{TAG|ENCUTGWSOFT}},
{{TAG|ENCUTGWSOFT}},
{{TAG|GW calculations}}
{{TAG|GW calculations}},
{{TAG|ACFDT/RPA calculations}}


{{sc|ENCUTGW|Examples|Examples that use this tag}}
{{sc|ENCUTGW|Examples|Examples that use this tag}}
Line 50: Line 77:
== References ==
== References ==
<references>
<references>
<ref name="harl:08"> [https://doi.org/10.1103/PhysRevB.77.045136
J. Harl, and G. Kresse, "Cohesive energy curves for noble gas solids calculated by adiabatic connection fluctuation-dissipation theory.", Phys. Rev. B 77.4 045136 (2008).]</ref>
<ref name="klimes:prb:14"> [http://dx.doi.org/10.1103/PhysRevB.90.075125 J. Klimes, M. Kaltak, and G. Kresse, Phys. Rev. B 90, 075125 (2014)]</ref>
<ref name="klimes:prb:14"> [http://dx.doi.org/10.1103/PhysRevB.90.075125 J. Klimes, M. Kaltak, and G. Kresse, Phys. Rev. B 90, 075125 (2014)]</ref>


Line 57: Line 87:
[[The_VASP_Manual|Contents]]
[[The_VASP_Manual|Contents]]


[[Category:INCAR]][[Category:GW]]
[[Category:INCAR]][[Category:Many-Body Perturbation Theory]][[Category:GW]]

Revision as of 09:02, 18 March 2019

ENCUTGW = [real]
Default: ENCUTGW = 2/3 ENCUT 


Description: The tag ENCUTGW sets the energy cutoff for response function. It controls the basis set for the response functions in exactly the same manner as ENCUT does for the orbitals.



In GW and RPA calculations, storing and manipulating the response function dominates the computational work load:

ENCUTGW controls how many vectors are included in the the response function .

Our experience suggests that choosing ENCUTGW= 2/3 ENCUT yields reasonable results at fairly modest computational cost, although, the response function contains contributions up to twice the plane wave cutoff (see ALGO). Furthermore, RPA correlation energies are reported using an internal extrapolation of the correlation energy by varying ENCUTGW internally (inside VASP) between the largest value given in the INCAR file and smaller values [1]. The extrapolated value is only reliable, if ENCUTGW is smaller then ENCUT (the cutoff extrapolation with respect to ENCUTGW would be very precise, if the plane wave basis for the orbitals were infinite). Again the VASP defaults yield very reasonable values for the extrapolated correlation energy. In fact, it is unwise to increase ENCUTGW only, without increasing ENCUT . To converge RPA correlation energies, simply increase ENCUT and the number of orbitals, and use the VASP default for ENCUTGW.

For QP gaps, it is sometimes possible to set ENCUTGW to values between 150 to 200 eV, and even 100 eV can yield gaps that are accurate to within a few tens of an eV for main group elements. Be aware, however, that the absolute values of the QP energies depend inverse proportionally on the number of plane waves. Thus convergence of absolute QP energies is always very slow, although QP gaps might seem converged.

The recommended procedure to obtain accurate QP energies is discussed in the reference below. Specifically, for reference type calculations we recommend the following procedure:

  • use the default for ENCUTGW, or even decrease ENCUTGW to half the value of ENCUT.
  • Calculate all orbitals that the plane wave basis set allows to calculate. This number can be determined by searching for "maximum number of plane-waves" in the groundstate DFT OUTCAR file, and setting NBANDS to this value.
  • Increase ENCUT systematically and plot the QP energies versus the number of plane wave coefficients (which equals the number of orbitals). This means ENCUTGW and NBANDS increase as ENCUT increases.

This procedure can be carried out using few k-points. Other commonly applied methods can yield less accurate results and are not considered to be reliable.


FFT grid and PRECFOCK

The flag PRECFOCK determines the FFT grid in all GW (and Hartree-Fock) related routines. For small systems (which are often dominated by FFT operations), the flag can have a significant impact on the compute time for QP calculations. For large systems, the FFT's usually do not dominating the computational work load and savings are expected to be small for PRECFOCK = fast. QP shifts are usually not very sensitive to the setting of PRECFOCK (and it therefore does not harm to set PRECFOCK = fast), whereas for RPA calculations we recommend to set PRECFOCK = normal to avoid numerical errors.

Related Tags and Sections

PRECFOCK, ENCUT, ENCUTGWSOFT, GW calculations, ACFDT/RPA calculations

Examples that use this tag

Further reading

  • A comprehensive study of the performance of the convergence of GW calculations can be found [2]. Generally QP energies converge like one over the number of orbitals and one over the number of plane waves in the response function. For basis set converged calculations we recommend to use the strategies in Ref. [2]

References

  1. [https://doi.org/10.1103/PhysRevB.77.045136 J. Harl, and G. Kresse, "Cohesive energy curves for noble gas solids calculated by adiabatic connection fluctuation-dissipation theory.", Phys. Rev. B 77.4 045136 (2008).]
  2. a b J. Klimes, M. Kaltak, and G. Kresse, Phys. Rev. B 90, 075125 (2014)

Contents