25.2.15 Keywords for Module riper
riper shares most of the relevant keywords of the dscf and ridft modules. The $dft data group (see 25.2.10) and auxiliary basis sets defined using the keyword $jbas are always required.
For periodic calculations two additional keywords are necessary:
$periodicn-
Specifies the number of periodic directions: \(n = 3\) for a 3D periodic bulk solid, \(n = 2\) for a 2D periodic surface slab and \(n = 1\) for a 1D periodic system. The default value is \(0\) for a molecular system.
$cell-
Specifies the unit cell parameters. The number of cell parameters depends on the periodicity of the system:
For 3D periodic systems six unit cell parameters \(|\)a\(|\), \(|\)b\(|\), \(|\)c\(|\), \(\alpha\), \(\beta\) and \(\gamma\) need to be provided. Here, \(|\)a\(|\), \(|\)b\(|\) and \(|\)c\(|\) are lengths of the appropriate cell vectors, \(\alpha\) is the angle between vectors \(\textbf{b}\) and \(\textbf{c}\), \(\beta\) is the angle between vectors \(\textbf{a}\) and \(\textbf{c}\), and \(\gamma\) is the angle between vectors \(\textbf{a}\) and \(\textbf{b}\).
riperassumes that the cell vectors \(\textbf{a}\) and \(\textbf{b}\) are aligned along the \(x\) axis and on the \(xy\) plane, respectively.For 2D periodic systems three surface cell parameters \(|\)a\(|\), \(|\)b\(|\) and \(\gamma\) have to be provided. Here, \(|\)a\(|\) and \(|\)b\(|\) are lengths of the appropriate cell vectors and \(\gamma\) is the angle between \(\textbf{a}\) and \(\textbf{b}\).
riperassumes that the cell vectors \(\textbf{a}\) and \(\textbf{b}\) are aligned along the \(x\) axis and on the \(xy\) plane, respectively.For 1D periodic systems only one parameter specifying the length of the unit cell has to be provided.
riperassumes that periodic direction is along the \(x\) axis. $lattice-
Alternatively, lattice vectors can be provided. The number of cell parameters depends on the periodicity of the system:
For 3D periodic systems three (three-dimensional) lattice vectors need to be provided.
For 2D periodic systems two (two-dimensional) lattice vectors have to be provided.
riperassumes that the lattice vectors are aligned on the \(xy\) plane.For 1D periodic systems only one parameter specifying the length of the lattice vector has to be provided.
riperassumes that periodic direction is along the \(x\) axis.
Optionally, for periodic systems a \(\mathbf{k}\) points mesh can be specified:
$kpoints-
nkpoints\(n_1\) \(n_2\) \(n_3\)
Specifies components along each reciprocal lattice vector of a \(\Gamma\) centered mesh of \(\mathbf{k}\) points. In 3D periodic systems each \(\mathbf{k}\) point is defined by its components \(k_1\), \(k_2\) and \(k_3\) along the reciprocal lattice vectors \(\mathbf{b}_1\), \(\mathbf{b}_2\) and \(\mathbf{b}_3\) as\[\begin{equation} \mathbf{k} = k_1\mathbf{b}_1 + k_2\mathbf{b}_2 + k_3\mathbf{b}_3 \;\text{.} \end{equation}\](25.1)
For 2D periodic systems \(k_3 = 0\). In case of 1D periodicity \(k_3 = 0\) and \(k_2 = 0\). The three components \(k_j\) \((j = 1, 2, 3)\) of \(\mathbf{k}\) are given as
\[\begin{equation} k_j = \frac{i}{n_j} \text{ with } i = -\frac{n_j-1}{2},-\frac{n_j-1}{2} + 1,\dots,\frac{n_j-1}{2}-1,\frac{n_j-1}{2} \;\text{.} \end{equation}\](25.2)
with \(n_j\) \((j = 1, 2, 3)\) as integer numbers.
For 3D periodic systems \(n_1\), \(n_2\) and \(n_3\) have to be specified. The component \(n_3\) can be omitted for 2D periodic systems. In case of 1D periodicity only the \(n_1\) has to be specified.
-
In addition, the options
kptlinesandreciprwithin the$kpointsgroup can be used to obtain band structure plots:- kptlines
-
Specifies the number of reciprocal space lines for band structure plots.
- recipr
-
Specifies lines in the reciprocal space using three real numbers defining the start point of the line and three real numbers defining its end point. Finally, the number of \(\textbf{k}\) points along the line is given as an integer number.
In the following example band energies are calculated along four lines, as specified by the keyword
kptlines 4. Each line definition starts in a new line with the keywordrecipr, followed by three real numbers defining the start point of the line and three real numbers defining its end point. Finally, the number of \(\textbf{k}\) points along the line is given as an integer number. Thus, the first line starts at the point(0.500 0.500 0.500), ends at(0.000 0.000 0.000)and contains 40 \(\textbf{k}\) points.$kpoints kptlines 4 recipr 0.500 0.500 0.500 0.000 0.000 0.000 40 recipr 0.000 0.000 0.000 0.500 0.500 0.000 40 recipr 0.500 0.500 0.000 0.746 0.373 0.373 40 recipr 0.746 0.373 0.373 0.000 0.000 0.000 40The calculated band structure is written to the file
bands.xyz. Each line of the file contains five real numbers: the coordinates \(k_1\), \(k_2\) and \(k_3\) of the \(\textbf{k}\) point, its length \(|k|\) and the corresponding band energy \(\epsilon_{n\mathbf{k}}\).
Keywords within the section $riper can be used to control precision and parameters of algorithms implemented in riper. If the $riper group is absent, the following default values are used:
$riper
# general keywords
thrints 1.0d-12
lenonly off
lchgprj on (for periodic systems)
lchgprj off (for molecular systems)
northol 5
pqmatdiag off
pqsingtol 1.0d-8
# CFMM control options
lmaxmom 20
nctrgt 10 (for periodic systems)
nctrgt 1 (for molecular systems)
wsicl 3.0
epsbext 1.0d-9
locmult on (for periodic systems)
locmult off (for molecular systems)
locmomadd 2
# LMIDF control options
lpcg on
lcfmmpcg on
lmxmompcg 20
pcgtol 1.0d-9
pcgtyp sp
# Gaussian smearing options
sigma 0.0d0
desnue 0.0d0
# SCF control options
ldiis on
mxitdiis 4 (for DFT)
mxitdiis 5 (for HF)
# Hybrid functional options
itrunc 2
inttolk 23.0
The following options are available:
-
- # general keywords
- thrints
-
Threshold for integrals neglect and for differential overlap when screening basis functions pairs. Probably never needs to be changed.
- lenonly
-
Flag for energy calculation only, no gradients.
- lchgprj
-
If set to
oncharge projection of the auxiliary electron density [214] is performed for molecular systems during calculation of the Coulomb term. The charge projection constraints the charge of auxiliary density exactly to the number of electrons in the system. It is required for periodic systems, otherwise the Coulomb energy would be infinitely large. For molecular systems charge projection leads to a slight increase of the RI fitting error. It may be useful in some cases but we have so far not identified any. - northol
-
Forces orthonormalization of orbital coefficients every
northolSCF iteration. - pqmatdiag
-
If set to
onfull diagonalization of the Coulomb metric matrix [214] is performed and used to solve density fitting equations. When diffuse auxiliary basis functions are used the default Cholesky decomposition of the Coulomb metric matrix may fail due to small negative eigenvalues. In this case the slower method based on a full diagonalization of the metric matrix is necessary. - pqsingtol
-
If
pqmatdiagis usedpqsingtolsets threshold for neglect of small eigenvalues of the Coulomb metric matrix. - # CFMM control options
- lmaxmom
-
Maximum \(l\)-moment of multipole expansions used for calculation of the Coulomb term. The default value hardly ever needs to be changed.
- nctrgt
-
Target number of charge distributions per lowest level box of the octree [204]. The default value hardly ever needs to be changed.
- wsicl
-
Sets the well-separateness criterion [204]. Octree boxes with centers separated more than sum of their lengths times \(0.5\times\)
wsiclare considered as well-separated. The default hardly ever needs to be changed.wsiclmakes sense only for values \(\geq 2.0\). Forwsicl\(\leq 3.0\) increasinglmaxmommay be necessary for reasonable accuracy. - epsbext
-
Precision parameter used to determine basis function extents [204].
- locmult
-
If set to
on, an additional acceleration method employing local multipole expansions is used. For periodic systems this leads to a significant speedup of calculations, especially for small unit cells and/or diffuse basis functions. Default value isoffandonfor molecular and periodic systems, respectively. - locmomadd
-
For
locmultset toonthe order of local multipole expansions is increased bylocmomadd. The default value probably never needs to be changed. - # LMIDF control options
- lpcg
-
If set to
onthe low-memory iterative density fitting (LMIDF) scheme is used for solving the RI equations [208] using the preconditioned conjugate gradient (PCG) method. It is implemented for molecular systems only. Default value isoff. - lcfmmpcg
-
If
lpcgis used,lcfmmpcgspecifies whether the CFMM is applied for evaluation of the matrix-vector products needed for the PCG solver. Not employing CFMM speeds up the calculations but significantly increases memory demand since the full Coulomb metric matrix has to be stored. Default value ison. - lmxmompcg
-
Maximum \(l\)-moment of multipole expansions for calculations of Coulomb interactions within the PCG algorithm. It should be set to the same or larger value than
lmaxmom. - pcgtol
-
Sets the threshold parameter controlling accuracy of the PCG solver (see [208] for details). Default value is \(1.0 \cdot 10^{-9}\). For lower-precision calculations it can be set to \(1.0 \cdot 10^{-8}\) but values larger than \(1.0 \cdot 10^{-7}\) are not allowed as these lead to large errors in Coulomb energies and occasionally to SCF convergence problems.
- pcgtyp char
-
char =
at,ssorsp
Specifies the type of preconditioner used in the PCG algorithm. Three types of preconditioners are implemented and are defined explicitly in Sec. 7. Thesppreconditioner is a default one performing consistently the best among the preconditioners considered. Theatpreconditioner is less efficient in decreasing the number of CG iterations needed for convergence. However, it has negligible memory requirements and more favorable scaling properties, albeit with a large prefactor. Thesspreconditioner represents a middle ground between thespandatpreconditioners both in terms of the efficiency and memory requirements. - # Gaussian smearing options
- sigma
-
Width of the Gaussian smearing in hartree. See ref. [216] for more information. Note, that [216] uses eV as the unit for the width of the Gaussian smearing.
- desnue
-
Specifying
desnuealong withsigmaforces occupancy leading to the number of unpaired electrons equal todesnue. - # SCF control options
- ldiis
-
If set to
onDIIS (Direct Inversion in the Iterative Subspace) acceleration is used in SCF iterations. Default value ison. Set tooffto disable DIIS. - mxitdiis
-
Maximum number of SCF iterations to be included in the DIIS procedure. Default value is 4 for DFT calculations and 5 for Hartree-Fock calculations. Must be larger than 0 if
ldiisison. - # Hybrid functional options
- itrunc
-
Truncation method for periodic Hartree-Fock exchange: 1 for TCI (Truncated Coulomb Interaction), 2 for MIC (Minimum Image Convention). Default value is 2.
- inttolk
-
Threshold exponent for four-center exchange integrals. Exchange integrals smaller than \(\exp(-\texttt{inttolk})\) are neglected. Default value is 23.0. Smaller values increase speed but reduce accuracy.
Keywords within the section $pointvalper can be used to evaluate quantities (electron density/molecular orbitals) for visualization on grid points:
$pointvalper fmt=plt
dens
orbs 2
k 3 2 1 a 1 i
k 0 0 0 b 2 r
nimg 2 2 1
npts 100 100 100
eps 5.0
ngrdpbx 50
full
The following options are available:
-
- fmt
-
Specifies output format. Currently
.plt,.cub,.xyzand.uptextensions are supported (see 7.3.8). - dens
-
If present, total (and spin for UHF) density is calculated.
- orbs
-
Specifies the number of plotted orbitals. For further details see subsection 7.3.8.
- nimg
-
Number of unit cell images
n1,n2andn3in the periodic directions a, b and c, respectively, for which plot data is generated. - npts
-
Number of grid points
n1,n2andn3along each periodic direction. If not specified, value 100 is used for eachn. - eps
-
Specifies the distance
realin bohr around the system for which plot grid is generated in aperiodic directions. Default value is 5 bohr. - ngrdpbx
-
Number of grid points stored in one octree box during density calculations. Default value is 50. For very large systems or high resolution it may be necessary to increase this parameter to avoid memory allocation problems.
- full
-
Only valid for
pltoutput format. This format uses orthogonal grids. Therefore, for non-orthogonal unit cells grid data is generated for a rectangular box that contains the supercell (unit cell and its periodic images). By default, the values at grid points outside of the supercell are set to zero. For strongly non-orthogonal systems this may lead to large files. The optionfullswitches off the zeroing of values on grid points outside the supercell.
To calculate a simulated density of states (DOS) keyword $dosper is necessary:
$dosper width=real emin=real emax=real scal=real npt=integer
The following options are available:
-
- width
-
The width of each Gaussian, default value is 0.01 a.u.
- emin,enmax
-
Lower/upper bounds for energy in DOS calculation.
- scal
-
Scaling factor for DOS (total and s-, p-, ... contributions).
- npt
-
Resolution (number of points).
Keywords within the section $rttddft can be used to specify the parameters for RT-TDDFT. Example:
$rttddft
magnus 2
scf off
time 1000.0d0
tstep 0.1d0
min energy = 0.013d0
max energy = 0.5d0
energy step 0.001d0
The options are explained below.
-
- magnus
-
Can take values 2 or 4. "2" for second order Magnus expansion and "4" for fourth order Magnus expansion. Default value is 2.
- scf
-
if
on, then SCF procedure is used for the time integration. Ifoff
then Predictor-Corrector scheme is used instead. - iterlim
-
Max SCF cycles if
scfison. Default value is 15. - time
-
Specifies the evolution time in au. (1 au\(=\) 0.02419 fs)
- tstep
-
The time step for the time evolution in au. 0.1 au is usually a good starting point.
- print step
-
Specifies the number of steps \(n\) after which the dipole moments and energies are printed out if requested. Default value is 100. That means the quantities are printed out at every 100 steps. To have all the information for post processing, a value of 1 is recommended.
- damping
-
Only valid for absorption spectrum calculation. It is the factor gamma in the equation to calculate the complex polarizability tensor. Default value is 0.004 au. Recommended values in the range of 0.003 au to 0.005 au.
- min energy
-
Only valid for absorption spectrum calculation. Specifies the minimum value of the energy range used to perform the Fourier transform from time to frequency space. Units: au. Default value is 0.15 au.
- max energy
-
Only valid for absorption spectrum calculation. Specifies the maximum value of the energy range used to perform the Fourier transform from time to frequency space. Units: au. Default value is 0.625 au.
- energy step
-
Only valid for absorption spectrum calculation. Specifies the step value or energy interval
dEat which to sample the energy values for Fourier transform and absorption spectrum plotting. Units: au. Default value is 0.005 au.
Keywords within the section $electric field can be used to specify the parameters for electric field. To specify a Gaussian electric field pulse use
$electric field
amplitude x=2.0E-5 y=2.0E-5 z=2.0E-5
gaussian tzero=3.0 width=0.2
Options are explained below.
-
- amplitude x y z
-
Cartesian components of the amplitude of the Gaussian pulse (in Electric field au).
- gaussian
-
Sets the electric field type to Gaussian.
- tzero
-
Position of Gaussian pulse maximum (in time au).
- width
-
Width of Gaussian pulse (in time au).