ALMO_SCF

References: Khaliullin2013, Scheiber2018

Settings for a class of efficient linear scaling methods based on absolutely localized orbitals (ALMOs). ALMO methods are currently restricted to closed-shell molecular systems. [Edit on GitHub]

Keywords

Keyword descriptions

ALMO_ALGORITHM: enum = DIAG

Usage: ALMO_ALGORITHM DIAG

Valid values:

  • DIAG DIIS-accelerated diagonalization controlled by ALMO_OPTIMIZER_DIIS. Recommended for large systems containing small fragments.

  • PCG Energy minimization with a PCG algorithm controlled by ALMO_OPTIMIZER_PCG.

  • TRUST_REGION Trust-region optimizer is recommended if PCG has difficulty converging. It is controlled by ALMO_OPTIMIZER_TRUSTR

  • SKIP Skip optimization of block-diagonal ALMOs.

Specifies the algorithm to update block-diagonal ALMOs during the SCF procedure. [Edit on GitHub]

ALMO_EXTRAPOLATION_ORDER: integer = 3

Usage: ALMO_EXTRAPOLATION_ORDER 3

Number of previous states used for the ASPC extrapolation of the ALMO initial guess. 0 implies that the guess is given by ALMO_SCF_GUESS at each step. [Edit on GitHub]

ALMO_SCF_GUESS: enum = ATOMIC

Usage: ALMO_SCF_GUESS MOLECULAR

Valid values:

  • MOLECULAR SCF calculations on single molecules controlled by the regular SCF keywords outside ALMO options. This kind of calculation is expensive and only recommended if ALMO SCF does not converge from the ATOMIC guess.

  • ATOMIC Superposition of atomic densities.

The method to generate initial ALMOs. [Edit on GitHub]

CONSTRUCT_NLMOS: logical = F

Usage: CONSTRUCT_NLMOS .TRUE.

Turns on post-SCF construction of NLMOs [Edit on GitHub]

DELOCALIZE_METHOD: enum = XALMO_X

Usage: DELOCALIZE_METHOD XALMO_X

Valid values:

  • NONE Neglect electron delocalization

  • XALMO_1DIAG Correction based on one diagonalization of the spatially projected Hamiltonian (XALMO)

  • XALMO_X Single excitation correction (no Hamiltonian re-build) with spatial restrictions (XALMO)

  • XALMO_SCF Self-consistent treatment of delocalization with spatial restrictions (XALMO)

  • FULL_X Single excitation correction (no Hamiltonian re-build) without spatial restrictions

  • FULL_SCF Self-consistent treatment of delocalization without spatial restrictions

  • FULL_X_THEN_SCF Single excitation correction followed by full SCF procedure, both without spatial restrictions

Methods to reintroduce electron delocalization, which is excluded with the block-diagonal ALMO reference. Electron delocalization can be computed using either fully delocalized MOs or spatially restricted ALMOs (called eXtended ALMOs or XALMOs). All methods below use either a PCG or trust-region optimizers controlled by XALMO_OPTIMIZER_* subsections. The only exception is the non-iterative XALMO_1DIAG. [Edit on GitHub]

EPS_FILTER: real = 1.00000000E-007

Usage: EPS_FILTER 1.e-6

Threshold for the matrix sparsity filter [Edit on GitHub]

MO_OVERLAP_INV_ALG: enum = LS_HOTELLING

Usage: MO_OVERLAP_INV_ALG LS_HOTELLING

Valid values:

  • LS_HOTELLING Linear scaling iterative Hotelling algorithm. Fast for large sparse matrices.

  • LS_TAYLOR Linear scaling algorithm based on Taylor expansion of (A+B)^(-1).

  • DENSE_CHOLESKY Stable but dense Cholesky algorithm. Cubically scaling.

Algorithm to invert MO overlap matrix. [Edit on GitHub]

RETURN_ORTHOGONALIZED_MOS: logical = T

Lone keyword: T

Usage: RETURN_ORTHOGONALIZED_MOS .TRUE.

Orthogonalize final ALMOs before they are returned to Quickstep (i.e. for calculation of properties) [Edit on GitHub]

XALMO_ALGORITHM: enum = PCG

Usage: XALMO_ALGORITHM TRUST_REGION

Valid values:

  • DIAG DIIS-accelerated diagonalization.

  • PCG PCG algorithm controlled by XALMO_OPTIMIZER_PCG.

  • TRUST_REGION Trust-region optimizer controlled by XALMO_OPTIMIZER_TRUSTR

Specifies the algorithm to update ALMOs on eXtended domains (XALMOs). [Edit on GitHub]

XALMO_EXTRAPOLATION_ORDER: integer = 0

Usage: XALMO_EXTRAPOLATION_ORDER 1

Number of previous states used for the ASPC extrapolation of the initial guess for the delocalization correction. [Edit on GitHub]

XALMO_R_CUTOFF_FACTOR: real = 1.50000000E+000

Usage: XALMO_R_CUTOFF_FACTOR 1.6

Controls the localization radius of XALMOs: R_cutoff = XALMO_R_CUTOFF_FACTOR*(radius(at1)+radius(at2)) [Edit on GitHub]

XALMO_TRIAL_WF: enum = PROJECT_R0_OUT

Usage: XALMO_TRIAL_WF SIMPLE

Valid values:

  • SIMPLE Straightforward AO-basis expansion.

  • PROJECT_R0_OUT Block-diagonal ALMOs plus the XALMO term projected onto the unoccupied ALMO-subspace.

Determines the form of the trial XALMOs. [Edit on GitHub]