DAVIDSON
References: Blaha2010, Kresse1996
Settings of the blocked Davidson iterative diagonalization. Also available at symmetry-reduced complex k points. [Edit on GitHub]
Keywords
Keyword descriptions
- CONV_MOS_PERCENT
Type: real
Default: 5.00000000E-001
Usage: CONV_MOS_PERCENT 0.8Description: Minimal percent of MOS that have to converge within the Davidson loop before the SCF iteration is completed and a new Hamiltonian is computed [Edit on GitHub]
- ENERGY_GAP
Type: real
Default: 2.00000000E-001
Usage: ENERGY_GAP 0.001Description: Should be an estimate for the energy gap [a.u.] (HOMO-LUMO) and is used in preconditioning, especially effective with the FULL_ALL preconditioner, in which case it should be an underestimate of the gap (0.001 doing normally fine). For the other preconditioners, making this value larger (0.2) will tame the preconditioner in case of poor initial guesses. [Edit on GitHub]
- FIRST_PREC
Type: integer
Default: 1
Usage: FIRST_PREC 1Description: First SCF iteration at which a Preconditioner is employed. With k points the first build waits until after the cold start, whatever lower value is set. The preconditioner makers read the MO coefficients, and only the cold start fills them. [Edit on GitHub]
- NEW_PREC_EACH
Type: integer
Default: 20
Usage: NEW_PREC_EACH 10Description: Number of SCF iterations after which a new Preconditioner is computed [Edit on GitHub]
- NOISE_SCALE
Type: real
Default: 1.00000000E+002
Usage: NOISE_SCALE 100Description: Divisor that maps the SCF mixing error onto the adaptive Davidson tolerance. The inner tolerance tracks EPS_ADAPT times the mixing error divided by this value. The value approximates how much the per-column residuals amplify the density mixing error. A measured amplification on a smeared slab is 20. Increase the value for looser tracking. Only used with EPS_ADAPT. [Edit on GitHub]
- PRECONDITIONER
Type: enum
Default: FULL_ALL
Usage: PRECONDITIONER FULL_ALLDescription: Type of preconditioner to be used with all minimization schemes. With k points, all preconditioners except NONE use the complex k-point preconditioners. [Edit on GitHub]
Valid values:
FULL_ALLMost effective state selective preconditioner based on diagonalizationFULL_SINGLE_INVERSEBased on H-eS cholesky inversion, similar to FULL_SINGLE in preconditioning efficiency but cheaper to construct, might be somewhat less robust. Recommended for large systems.FULL_KINETICPreconditioner based on the kinetic energy matrixFULL_S_INVERSEPreconditioner based on the overlap matrixNONEskip preconditioning
References: VandeVondele2003
- PRECOND_SOLVER
Type: enum
Default: DEFAULT
Usage: PRECOND_SOLVER DIRECTDescription: How the preconditioner is applied to the residual. [Edit on GitHub]
Valid values:
DEFAULTthe defaultDIRECTCholesky decomposition followed by triangular solve (works for FULL_KINETIC/SINGLE_INVERSE/S_INVERSE)INVERSE_CHOLESKYCholesky decomposition followed by explicit inversion (works for FULL_KINETIC/SINGLE_INVERSE/S_INVERSE)
- SPARSE_MOS
Type: logical
Default: T
Lone keyword: T
Usage: SPARSE_MOSDescription: Use MOS as sparse matrix and avoid as much as possible multiplications with full matrices. Not used with k points. [Edit on GitHub]