GW
Parameters needed to set up a GW calculation for electronic level energies \(\varepsilon_{n\mathbf{k}}^{G_0W_0}\) of molecules and the band structure of materials: \(\varepsilon_{n\mathbf{k}}^{G_0W_0}= \varepsilon_{n\mathbf{k}}^\text{DFT}+\Sigma_{n\mathbf{k}} -v^\text{xc}_{n\mathbf{k}}\). For the GW algorithm for molecules, see https://doi.org/10.1021/acs.jctc.0c01282. For 2D materials, see https://doi.org/10.1021/acs.jctc.3c01230. [Edit on GitHub]
Subsections
Keywords
Keyword descriptions
- SECTION_PARAMETERS
Type: logical
Default: F
Lone keyword: TDescription: Controls the activation of the GW calculation.
- APPROX_KP_EXTRAPOL
Type: logical
Default: F
Lone keyword: T
Usage: APPROX_KP_EXTRAPOLDescription: 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})\).
- CUTOFF_RADIUS_RI
Type: real
Default: 3.00000000E+000 [angstrom]
Usage: CUTOFF_RADIUS_RI 3.0Description: The cutoff radius (in Angstrom) for the truncated Coulomb operator. The larger the cutoff radius, the faster converges the resolution of the identity (RI) with respect to the RI basis set size. Larger cutoff radius means higher computational cost.
Mentions: ⭐Band structure from GW
- CUTOFF_RADIUS_RI_RS
Type: real
Default: -1.00000000E+000 [angstrom]
Usage: CUTOFF_RADIUS_RI_RS 15.0Description: Override (in Angstrom) of the truncated-Coulomb cutoff radius Rc used to size the per-atom RI-RS integration domain B^P = {r : |r - R_P| < Rc + r_AO(P)}, where r_AO(P) is the spatial extent of the most diffuse AO Gaussian on atom P. By default (-1.0) Rc falls back to CUTOFF_RADIUS_RI from the GW section (the same Rc used to build the RI metric integrals). Useful for convergence sweeps.
- EPS_FILTER
Type: real
Default: 1.00000000E-008
Usage: EPS_FILTER 1.0E-6Description: Determines a threshold for the DBCSR based sparse multiplications. Normally,
EPS_FILTERdetermines accuracy and timing of low-scaling GW calculations. (Lower filter means higher numerical precision, but higher computational cost.)Mentions: ⭐Band structure from GW
- FREQ_MAX_FIT
Type: real
Default: 1.00000000E+001 [eV]
Usage: FREQ_MAX_FIT 20.0Description: For analytic continuation, a fit on Σ(iω) is performed. This fit is then evaluated at a real frequency, Σ(ω), which is used in the quasiparticle equation \(\varepsilon_{n\mathbf{k}}^{G_0W_0}= \varepsilon_{n\mathbf{k}}^\text{DFT}+\Sigma_{n\mathbf{k}} -v^\text{xc}_{n\mathbf{k}}\). The keyword FREQ_MAX_FIT determines fitting range for the self-energy Σ(iω) on imaginary axis: i*[0, ω_max] for empty orbitals/bands, i*[-ω_max,0] for occ orbitals. A smaller ω_max might lead to better numerical stability (i.e., if you observe clearly wrong GW eigenvalues/bands around HOMO/LUMO, decreasing ω_max might fix this issue). A small benchmark of ω_max is contained in Fig. 5 of J. Wilhelm et al., JCTC 12, 3623-3635 (2016). Note that we used ω_max = 1 Ha = 27.211 eV in the benchmark M. Azizi et al., PRB 109, 245101 (2024).
- GRID_SELECT
Type: integer
Default: 1
Usage: GRID_SELECT 1Description: Selection of the atom-centeredgrid type used in RI-RS optimized by Duchemin and Blase. (1) def2-TZVPP: Grid optimized by Duchemin and Blase, available for elements up to the fourth row of the periodic table (see https://doi.org/10.1021/acs.jctc.1c00101). (2) cc-pVTZ: Optimized grids available for H, C, N, and O atoms (see https://doi.org/10.1063/1.5090605).
- HEDIN_SHIFT
Type: logical
Default: F
Lone keyword: T
Usage: HEDIN_SHIFTDescription: If true, use Hedin’s shift in G0W0, evGW and evGW0. Details see in Li et al. JCTC 18, 7570 (2022), Figure 1. G0W0 with Hedin’s shift should give similar GW eigenvalues as evGW0; at a lower computational cost.
- KPOINTS_W
Type: integer[3]
Default: -1 -1 -1
Usage: KPOINTS_W N_x N_y N_zDescription: Monkhorst-Pack k-point mesh of size N_x, N_y, N_z for calculating \(W_{PQ}^\mathbf{R}=\int_\text{BZ}\frac{d\mathbf{k}}{\Omega_\text{BZ}}\, e^{-i\mathbf{k}\cdot\mathbf{R}}\,W_{PQ}(\mathbf{k})\). For non-periodic directions α, choose N_α = 1. Automatic choice of the k-point mesh for negative values, i.e. KPOINTS_W -1 -1 -1. K-point extrapolation of W is automatically switched on.
- MEMORY_PER_PROC
Type: real
Default: 2.00000000E+000
Usage: MEMORY_PER_PROC 16Description: Specify the available memory per MPI process. Set
MEMORY_PER_PROCas accurately as possible for good performance. IfMEMORY_PER_PROCis set lower as the actually available memory per MPI process, the performance will be bad; ifMEMORY_PER_PROCis set higher as the actually available memory per MPI process, the program might run out of memory. You can calculateMEMORY_PER_PROCas 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).Mentions: ⭐Band structure from GW
- NUM_TIME_FREQ_POINTS
Type: integer
Default: 30
Usage: NUM_TIME_FREQ_POINTS 30Description: 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.Mentions: ⭐Band structure from GW
- N_PROCS_PER_ATOM_Z_LP
Type: integer
Default: 1
Usage: N_PROCS_PER_ATOM_Z_LP 16Description: Number of MPI ranks that cooperate on one atom’s Cholesky factorisation in compute_coeff_Z_lP. Default 1 keeps the single-rank LAPACK dpotrf path (BLAS, fastest when D_local fits per rank). Setting > 1 enables a ScaLAPACK pdpotrf path: ranks are split into atom-groups of this size, D_local is block-cyclic distributed across each group (per-rank memory ~1/G), the compute_d_lp build is also distributed across the subgroup, and multiple groups process different atoms in parallel. Use for systems where n_local_grid is large enough that the dense (n_local_grid)^2 D_local does not fit in a single rank’s memory.
- REGULARIZATION_MINIMAX
Type: real
Default: -1.00000000E+000
Usage: REGULARIZATION_MINIMAX 1.0E-4Description: Parameter to regularize the Fourier transformation with minimax grids. In case the parameter 0.0 is chosen, no regularization is performed.
- REGULARIZATION_RI
Type: real
Default: -1.00000000E+000
Usage: REGULARIZATION_RI 1.0E-4Description: Parameter for RI regularization, setting a negative value triggers the default value. Affects RI basis set convergence but in any case large RI basis will give RI basis set convergence.
Mentions: ⭐Band structure from GW
- RI_RS
Type: logical
Default: F
Lone keyword: T
Usage: RI_RSDescription: Real-Space Resolution of Identity (RI-RS) method. This approximation replaces the conventional 3-center RI integrals (μν|P) by a factorized representation on an atom-centered real-space grid {r_ℓ}: (μν|P) ≈ ∑_ℓ φ_μ(r_ℓ) φ_ν(r_ℓ) Z_ℓP. The coefficients Z_ℓP combine the numerical integration weights and the Coulomb potential of the auxiliary basis function P evaluated at grid point r_ℓ. To reduce the computational cost, only grid points within the sphere B^P are included, where B^P = {r : |r - R_P| < Rc + r_P}. Here, r_P is the effective Gaussian basis radius for atom P at which the basis function magnitude falls below a threshold δ (currently controlled through EPS_FILTER). This locality approximation yields a sparse representation of the 3-center integrals enables reduced computational cost. See details in https://doi.org/10.1063/1.5090605.
- SIZE_LATTICE_SUM
Type: integer
Default: 3
Usage: SIZE_LATTICE_SUM 4Description: Parameter determines how many neighbor cells \(\mathbf{R}\) are used for computing \(V_{PQ}(\mathbf{k}) = \sum_{\mathbf{R}} e^{i\mathbf{k}\cdot\mathbf{R}}\,\langle P, \text{cell}{=}\mathbf{0}|1/r|Q,\text{cell}{=}\mathbf{R}\rangle\). Normally, parameter does not need to be touched.
- TIKHONOV
Type: real
Default: 1.00000000E-008
Usage: TIKHONOV 1.0E-8Description: Regularization parameter (α) used to stabilize the inversion of the grid-overlap matrix D in the Real-Space RI (RI-RS) method. See Equation (9) in https://doi.org/10.1063/1.5090605.