LSPECTRAL: Difference between revisions

From VASP Wiki
No edit summary
 
Line 5: Line 5:
----
----


If {{TAG|LSPECTRAL}} = .TRUE. is set, the imaginary part of the independent particle polarizability <math>\chi_{\mathbf{q}}^0 (\mathbf{G}, \mathbf{G}', \omega)</math> is calculated first, and afterwards the full independent particle polarizability is determined using a Kramers-Kronig (or Hilbert) transform. This reduces the computational work load by almost a factor {{TAG|NOMEGA}}/2. The downside of the coin is that the response function must be kept in memory for all considered frequencies, which can cause excessive memory requirements. VASP therefore distributes the dielectric functions among the available compute nodes.
If {{TAG|LSPECTRAL}} = .TRUE. is set, the imaginary part of the independent particle polarizability <math>\chi_{\mathbf{q}}^0 (\mathbf{G}, \mathbf{G}', \omega)</math> is calculated first, and afterwards the full independent particle polarizability is determined using a Kramers-Kronig (or Hilbert) transform. This reduces the computational workload by almost a factor {{TAG|NOMEGA}}/2. The downside of the coin is that the response function must be kept in memory for all considered frequencies, which can cause excessive memory requirements. VASP, therefore, distributes the dielectric functions among the available compute nodes.


A similar trick is used when the QP-shifts are calculated. In general it is strongly recommended to set {{TAG|LSPECTRAL}} = .TRUE., except if memory requirements are too excessive.
A similar trick is used when the QP-shifts are calculated. In general it is strongly recommended to set {{TAG|LSPECTRAL}} = .TRUE., except if memory requirements are too excessive.
Line 16: Line 16:
----
----


[[Category:INCAR tag]][[Category:Many-Body Perturbation Theory]] [[Category:GW]]
[[Category:INCAR tag]][[Category:Many-body perturbation theory]][[Category:GW]]

Latest revision as of 10:11, 19 July 2022

LSPECTRAL = .FALSE. | .TRUE. 

Default: LSPECTRAL = .TRUE. if NOMEGA>2

Description: LSPECTRAL specifies to use the spectral method.


If LSPECTRAL = .TRUE. is set, the imaginary part of the independent particle polarizability is calculated first, and afterwards the full independent particle polarizability is determined using a Kramers-Kronig (or Hilbert) transform. This reduces the computational workload by almost a factor NOMEGA/2. The downside of the coin is that the response function must be kept in memory for all considered frequencies, which can cause excessive memory requirements. VASP, therefore, distributes the dielectric functions among the available compute nodes.

A similar trick is used when the QP-shifts are calculated. In general it is strongly recommended to set LSPECTRAL = .TRUE., except if memory requirements are too excessive.

Related tags and articles

NOMEGA, LSPECTRALGW

Examples that use this tag