GW
Parameters needed to set up a GW calculation for electronic level energies of molecules and the band structure of materials (currently only 2D materials tested). For the GW algorithm for molecules, see https://doi.org/10.1021/acs.jctc.0c01282. For 2D materials, see http://arxiv.org/abs/2306.16066. [Edit on GitHub]
Keywords
Keyword descriptions
- SECTION_PARAMETERS: logical = F
Lone keyword:
T
Controls the activation of the GW calculation. [Edit on GitHub]
- APPROX_KP_EXTRAPOL: logical = F
Lone keyword:
T
Usage: APPROX_KP_EXTRAPOL
If true, use only a 4x4 kpoint mesh for frequency points \(\omega_j, j \ge 2\) (instead of a 4x4 and 6x6 k-point mesh). The k-point extrapolation of \(W_{PQ}(i\omega_j,\mathbf{q})\) is done approximately from \(W_{PQ}(i\omega_1,\mathbf{q})\). [Edit on GitHub]
- EPS_FILTER: real = 1.00000000E-008
Usage: EPS_FILTER 1.0E-6
Mentions: ⭐GW Approximation
Determines a threshold for the DBCSR based sparse multiplications. Normally,
EPS_FILTER
determines accuracy and timing of low-scaling GW calculations. (Lower filter means higher numerical precision, but higher computational cost.) [Edit on GitHub]
- MEMORY_PER_PROC: real = 2.00000000E+000
Usage: MEMORY_PER_PROC 16
Mentions: ⭐GW Approximation
Specify the available memory per MPI process. Set
MEMORY_PER_PROC
as accurately as possible for good performance. IfMEMORY_PER_PROC
is set lower as the actually available memory per MPI process, the performance will be bad; ifMEMORY_PER_PROC
is set higher as the actually available memory per MPI process, the program might run out of memory. You can calculateMEMORY_PER_PROC
as follows: Get the memory per node on your machine, mem_per_node (for example, from a supercomputer website, typically between 100 GB and 2 TB), get the number of MPI processes per node, n_MPI_proc_per_node (for example from your run-script; if you use slurm, the number behind ‘–ntasks-per-node’ is the number of MPI processes per node). Then calculateMEMORY_PER_PROC
= mem_per_node / n_MPI_proc_per_node (typically between 2 GB and 50 GB). Unit of keyword: Gigabyte (GB). [Edit on GitHub]
- NUM_TIME_FREQ_POINTS: integer = 30
Usage: NUM_TIME_FREQ_POINTS 30
Mentions: ⭐GW Approximation
Number of discrete points for the imaginary-time grid and the imaginary-frequency grid. The more points, the more precise is the calculation. Typically, 10 points are good for 0.1 eV precision of band structures and molecular energy levels, 20 points for 0.03 eV precision, and 30 points for 0.01 eV precision, see Table I in https://doi.org/10.1021/acs.jctc.0c01282. GW computation time increases linearly with
NUM_TIME_FREQ_POINTS
. [Edit on GitHub]