OUTER_SCF
Controls an outer SCF loop, often used to stabilize difficult OT convergence, constraints, or other variables wrapped around the inner SCF cycle. [Edit on GitHub]
Mentions: ⭐How to make a SCF run converge
Subsections
Keywords
Keyword descriptions
- SECTION_PARAMETERS
Type: logical
Default: F
Lone keyword: T
Usage: &OUTER_SCF ONDescription: Activates the outer SCF loop. [Edit on GitHub]
- BISECT_TRUST_COUNT
Type: integer
Default: 10
Usage: BISECT_TRUST_COUNT 5Description: Maximum number of times the same point will be used in bisection, a small number guards against the effect of wrongly converged states. [Edit on GitHub]
- DIIS_BUFFER_LENGTH
Type: integer
Default: 3
Usage: DIIS_BUFFER_LENGTH 5Description: Maximum number of DIIS vectors used [Edit on GitHub]
- EPS_SCF
Type: real
Default: 1.00000000E-005
Usage: EPS_SCF 1.0E-6Description: The target gradient of the outer SCF variables. Notice that the EPS_SCF of the inner loop also determines the value that can be reached in the outer loop, typically EPS_SCF of the outer loop must be smaller than or equal to EPS_SCF of the inner loop. [Edit on GitHub]
- EXTRAPOLATION_ORDER
Type: integer
Default: 3
Usage: EXTRAPOLATION_ORDER 5Description: Number of past states used in the extrapolation of the variables during e.g. MD [Edit on GitHub]
- MAX_SCF
Type: integer
Default: 50
Usage: MAX_SCF 20Description: Maximum number of outer SCF loops. [Edit on GitHub]
Mentions: ⭐How to make a SCF run converge
- OPTIMIZER
Type: enum
Default: NONE
Usage: OPTIMIZER SDDescription: Method used to bring the outer loop to a stationary point [Edit on GitHub]
Valid values:
SDTakes steps in the direction of the gradient, multiplied by step_sizeDIISUses a Direct Inversion in the Iterative Subspace methodNONEDo nothing, useful only with the none typeBISECTBisection of the gradient, useful for difficult one dimensional casesBROYDENBroyden’s method. Variant defined in BROYDEN_TYPE.NEWTONNewton’s method. Only compatible with CDFT constraints.SECANTSecant method. Only for one dimensional cases. See Broyden for multidimensional cases.NEWTON_LSNewton’s method with backtracking line search to find the optimal step size. Only compatible with CDFT constraints. Starts from the regular Newton solution and successively reduces the step size until the L2 norm of the CDFT gradient decreases or MAX_LS steps is reached. Potentially very expensive because each iteration performs a full SCF calculation.
- STEP_SIZE
Type: real
Default: 5.00000000E-001
Usage: STEP_SIZE -1.0Description: The initial step_size used in the optimizer (currently steepest descent). Note that in cases where a sadle point is sought for (constrained DFT), this can be negative. For Newton and Broyden optimizers, use a value less/higher than the default 1.0 (in absolute value, the sign is not significant) to active an under/overrelaxed optimizer. [Edit on GitHub]
- TYPE
Type: enum
Default: NONE
Usage: TYPE DDAPC_CONSTRAINTDescription: Specifies which kind of outer SCF should be employed [Edit on GitHub]
Valid values:
DDAPC_CONSTRAINTEnforce a constraint on the DDAPC, requires the corresponding sectionS2_CONSTRAINTEnforce a constraint on the S2, requires the corresponding sectionBASIS_CENTER_OPTOptimize positions of basis functions, if atom types FLOATING_BASIS_CENTER are definedCDFT_CONSTRAINTEnforce a constraint on a generic CDFT weight population. Requires the corresponding section QS&CDFT which determines the type of weight used.NONEDo nothing in the outer loop, useful for resetting the inner loop,