Searching....

# 4.5.11 User-Customized Hybrid SCF Algorithm

(February 4, 2022)

It is often the case that a single algorithm is not able to guarantee SCF convergence. Meanwhile, some SCF algorithms (e.g., ADIIS) can accelerate convergence at the beginning of an SCF calculation but becomes less efficient near the convergence. While a few hybrid algorithms (DIIS_GDM, RCA_DIIS) have been enabled in Q-Chem’s original SCF implementation, in GEN_SCFMAN, we seek for a more flexible setup for the use of multiple SCF algorithms so that users can have a more precise control on the SCF procedure. With the current implementation, at most four distinct algorithms (usually more than enough) can be employed in one single SCF calculation based on GEN_SCFMAN, and the basic job control is as follows:

GEN_SCFMAN_HYBRID_ALGO

GEN_SCFMAN_HYBRID_ALGO
Use multiple algorithms in an SCF calculation based on GEN_SCFMAN.
TYPE:
BOOLEAN
DEFAULT:
FALSE
OPTIONS:
FALSE Use a single SCF algorithm (given by SCF_ALGORITHM). TRUE Use multiple SCF algorithms (to be specified).
RECOMMENDATION:
Set it to TRUE when the use of more than one algorithm is desired.

GEN_SCFMAN_ALGO_1

GEN_SCFMAN_ALGO_1
The first algorithm to be used in a hybrid-algorithm calculation.
TYPE:
STRING
DEFAULT:
0
OPTIONS:
All the available SCF_ALGORITHM options, including the GEN_SCFMAN additions (Section 4.3).
RECOMMENDATION:
None

GEN_SCFMAN_ITER_1

GEN_SCFMAN_ITER_1
Maximum number of iterations given to the first algorithm. If used up, switch to the next algorithm.
TYPE:
INTEGER
DEFAULT:
50
OPTIONS:
User-defined
RECOMMENDATION:
None

GEN_SCFMAN_CONV_1

GEN_SCFMAN_CONV_1
The convergence criterion given to the first algorithm. If reached, switch to the next algorithm.
TYPE:
INTEGER
DEFAULT:
0
OPTIONS:
$n$ 10${}^{-n}$
RECOMMENDATION:
None

Note:  $rem variables GEN_SCFMAN_ALGO_X, GEN_SCFMAN_ITER_X, GEN_SCFMAN_CONV_X (X = 2, 3, 4) are defined and used in a similar way. Example 4.15 B3LYP/3-21G calculation for a cadmium-imidazole complex using the ADIIS + DIIS algorithm (an example from Ref. 491). Due to the poor quality of the CORE guess, using a single algorithm such as DIIS or GDM fails to converge.$molecule
2 1
Cd     0.000000     0.000000     0.000000
N      0.000000     0.000000    -2.260001
N     -0.685444     0.000000    -4.348035
C      0.676053     0.000000    -4.385069
C      1.085240     0.000000    -3.091231
C     -1.044752     0.000000    -3.060220
H      1.231530     0.000000    -5.300759
H      2.088641     0.000000    -2.711077
H     -2.068750     0.000000    -2.726515
H     -1.313170     0.000000    -5.174718
$end$rem
EXCHANGE                 B3LYP
BASIS                    3-21g
UNRESTRICTED             FALSE
SYMMETRY                 FALSE
SYM_IGNORE               TRUE
THRESH                   14
SCF_GUESS                CORE
GEN_SCFMAN_HYBRID_ALGO   TRUE
GEN_SCFMAN_CONV_1        3  !switch to DIIS when error < 1E-3
GEN_SCFMAN_ITER_1        50
GEN_SCFMAN_ALGO_2        DIIS
GEN_SCFMAN_CONV_2        8
GEN_SCFMAN_ITER_2        50
\$end

View output