Keywords for SCF Methods in the Jaguar Input File

Many of the keywords that control the SCF calculation can be set from the SCF tab as described in SCF Settings. (The other keyword settings corresponding to SCF tab settings are described in Localization Keywords in the Jaguar Input File.)

The SCF keywords are described in Table 1. The keyword settings for convergence are somewhat complicated, and the defaults vary, depending on the settings of other keywords.

Table 1. Keywords for methods used in the SCF convergence procedures

Keyword

Value

Description

iuhf

0

Restricted open-shell (ROHF or RODFT) calculation. Default for closed shells, LMP2, open-shell singlet (or other ihamtyp ≠ 0). With spin-orbit SCF, a Kramers-restricted calculation is done.

 

1

Unrestricted (UHF or UDFT) calculation. Default for open shell other than LMP2 or when ihamtyp ≠ 0.

 

2

Run restricted calculations on closed-shell systems (multip=1), and unrestricted calculations on open-shell systems (multip>1).

iconv

0

Convergence via Fock matrix diagonalization

 

1

DIIS convergence scheme (default choice for most calculations)

 

3

OCBSE convergence scheme

 

4

GVB-DIIS convergence scheme (closed-shell calculations only)

idelta_scf

0

Do not perform a ΔSCF calculation

  1 Perform a ΔSCF calculation using the Projection-based Initial Maximum Overlap Method (PIMOM) [314]
  2 Perform a ΔSCF calculation using the Projection-based Maximum Overlap Method (PMOM) [314]

maxit

0

Calculate energy, but do not update wave function (do only one iteration)

 

>0

Perform a maximum of maxit SCF iterations (default 48)

newcon

0

Use physical constants and conversion factors equivalent to those used in Gaussian 86

 

1

Use physical constants and conversion factors equivalent to those used in Gaussian 88, 90, 92

iacc

1

Only ultrafine grid used; “tight” cutoffs Set automatically when large energy changes and oscillations are detected.

 

2

Accurate: mixed grid types, accurate cutoffs (default choice for transition metals, sometimes for other atoms beyond Ar)

 

3

Quick: mixed grid types, looser cutoffs

iacscf

0

Make no special adjustments (variable vshift, cutoff adjustments, etc.) for convergence

 

1

Start with level shift (vshift) of 5.0 and decrement over 10 iterations to 0.8; remove overlap eigenvectors if their associated eigenvalues are less than 5e-3; keep number of canonical orbitals fixed during optimization; run at ultrafine accuracy level and with tight cutoffs

 

2

Start with level shift (vshift) of 6.0 and decrement over 12 iterations to 0.8; vary level shift during run by raising it when SCF is restarted (here, when the energy rises by 0.0001 au)

 

3

Use extreme cutoffs (maximal analytic corrections) while still allowing medium pseudospectral grids for some iterations

 

4

Same as iacscf=1, except with maximal analytic corrections

iusediffuse

0

Do not use grids and dafs from the ++ basis set for a + basis set.

 

1

Use grids and dafs from the ++ basis set for a + basis set (i.e. diffuse functions on heavy atoms only). This option can improve convergence.

retryscf

0

Do not retry SCF if convergence failure is detected.

 

1

Retry SCF with iacc=1 and vshift=1.0 if a convergence failure is detected.

noabortscf

0

Abort SCF if checks indicate convergence failure.

 

1

Ignore checks that would abort the SCF before it has reached the maximum iterations.

allow_scf_failure

0

Abort SCF if convergence is not achieved in the requested number of cycles. No output or properties are generated, but the restart file is written so you can restart the SCF.

 

1

Treat the SCF as converged if it has reached the maximum iterations without satisfying the convergence criteria.

jksep

0

2JK formed for core when convenient

 

1

J and K for core are kept separate

maxdiis

10

Number of Fock matrices to use in DIIS extrapolation

noatcor

0

Analytic corrections calculated

 

1

No analytic corrections calculated

nops

0

Use pseudospectral method to calculate J and K operators

 

1

Construct J and K from analytic two-electron integrals (no grid used)

scf_nops

0

Use pseudospectral method to calculate J and K operators

 

1

Construct J and K from analytic two-electron integrals (no grid used) for the SCF calculation. Any post-SCF methods still use the pseudospectral method.

noupdat

0

Fock matrix updating [212] set on or off automatically

 

1

No Fock matrix updating (set iacc=1 if you set noupdat=1)

iteravg

0

Do not average density matrices and adjust orbitals accordingly (unless istavg keyword requests averaging)

 

>0

For iterations whose number is n*iteravg + 1, where n is an integer, revise orbitals so that they correspond to average of density matrices from preceding and current iterations

istavg

0

Do not average density matrices and adjust orbitals accordingly (unless iteravg keyword requests averaging)

 

>0

For iterations whose number is ≤ istavg, revise orbitals so that they correspond to average of density matrices from preceding and current iterations

noauto

0

Grid choice is automatic

 

1

All calculations done on coarse grid

 

2

All calculations done on medium grid

 

3

All calculations done on fine grid

 

4

All calculations done on ultrafine grid

idenavg

0

Converge in the usual fashion

 

1

Do density averaging (damping) before DIIS starts, mixing in some of old orbitals with new orbitals (default for DFT calculations)

lastwv

0

Skip diagonalization of Fock matrix on last iteration

 

1

Diagonalize Fock matrix on last iteration

nosuper

0

Evaluate integrals simultaneously over s and p basis functions with the same exponents (“superblocks”)

 

1

Evaluate integrals separately for s and p basis functions which have the same exponents

 

2

Use superblocks for all integrals except for gradient

itwice

1

Do Amng integrals once in SCF routine

 

2

Do Amng integrals twice in SCF routine. Optional for HF

ichange

≠0

Change all cutoffs (except those related to S eigenvalues, bc pairs, or ab distance cutoff for exchange) by a factor of 10 to the ichange power

dconv

5×10−4

SCF density convergence threshold: RMS change in density matrix. Default is 5e-6 for geometry optimization, frequency, and polarizability/hyperpolarizability calculations.

econv

5×10−5

SCF energy convergence threshold in hartrees: maximum difference in energy between one SCF iteration and the next required for convergence. Default is 1e-5 for geometry optimization and frequency calculations. Default is 1e-6 for polarizability and hyperpolarizability.

stdiis

100.0

DIIS initiation threshold: DIIS is started when the largest value of the DIIS error vector is less than this value.

large_diis

3.0

Threshold for considering the DIIS error (largest value of the DIIS error vector) to be “large”. The SCF is restarted if the DIIS error is large and the energy change is large after the third iteration.

huge_diis

10.0

Threshold for considering the DIIS error (largest value of the DIIS error vector) to be “huge”. The SCF is restarted if the DIIS error is huge in any iteration.

vshift

0.0

Level shift for virtual orbitals: the amount the virtual orbital energies are increased before diagonalization, in hartrees. Default for p-, d-, and f-block metals for pure DFT is 0.3, for hybrid DFT is 0.2.

ifdtherm

0

Do not use thermal smearing in DFT or HF calculations

 

1

Use fractional occupation number (FON) method for thermal smearing [213]

 

2

Use pseudo-fractional occupation number (pFON) method for thermal smearing [213]

fdtemp

10000

Initial temperature in K for thermal smearing

icanorb

0

Allow number of canonical orbitals to vary during calculation

 

1

Fix number of canonical orbitals during calculation

ncanorb

>0

Number of canonical orbitals to keep during calculation

nofail

0

Do not use special measures to prevent SCF or geometry convergence failure.

 

1

Use special measures when bad SCF convergence is detected, including automatic restart with a smaller basis followed by restart with the original basis. If convergence can not be achieved in the original basis or with nops=0, the calculation will proceed with the smaller basis and/or nops=1. Also applies to geometry optimization convergence: if a geometry optimization does not converge, use the geometry that gives the lowest energy as the final result.

 

2

Apply the same special measures as nofail=1, but fail if SCF convergence cannot be achieved with original nops setting and basis.

wf_stability

0

Do not perform wave function stability analysis.

 

1

Perform wave function stability analysis. The molecular orbital Hessian (corresponding to the current SCF solution) is diagonalized, and the eigenvalues are reported. The presence of negative eigenvalues indicates that the SCF solution is unstable (namely, the code converged to an excited state). For an RHF calculation, an "internal instability" means there exists a lower solution in the RHF space, while an "external instability" means there exists a lower solution in the UHF space. For an UHF calculation, an "internal instability" means there exists a lower solution in the UHF space. External stability detection for UHF calculations are not currently supported.

If instabilities are found, the lowest molecular orbital Hessian eigenvector is used to rotate the unstable orbitals to generate a better guess for a subsequent SCF calculation. The number of attempts made to find a stable solution is controlled with wf_stability_max_iters. If a stable solution cannot be found, the calculation proceeds with the instabilities.

For PCM and SMD calculations, the first gas-phase solution (if calculated) and the first solvent phase solution are considered. If wf_stability_all_geopt_steps=1, all solutions in both gas and solvent phases are considered. For PBF, SM6, and SM8 calculations, only gas-phase solutions are analyzed.

wf_stability_max_iters

>0

Number of attempts at stabilizing an SCF solution when wf_stability=1. The default is 3.

wf_stability_all_geopt_steps

0

Attempt to stabilize an SCF solution at the first geometry step only when wf_stability=1.

 

1

Attempt to stabilize an SCF solution for all geometry steps when wf_stability=1.

wf_stability_follow_external

0

Do not attempt to stabilize an SCF solution for any external instabilities found when wf_stability=1.

 

1

Attempt to stabilize an SCF solution for any external instabilities found when wf_stability=1.

wf_stability_print_thresh

5×10−2

The cutoff value to determine which excitation coefficients are printed when a wave function stability analysis is performed and an unstable solution is found. Values larger than the threshold are printed.

The keywords for convergence thresholds are econv, the energy convergence criterion, which is the maximum difference in energy between one SCF iteration and the next required for convergence, and dconv, the criterion for the root mean square change in density matrix elements. The default value of econv is normally 5.0×10−5 hartrees. However, for polarizability or hyperpolarizability calculations, econv is 1.0×10−6 hartrees by default. When the root mean squared change in density matrix elements for a polarizability, hyperpolarizability, or geometry optimization calculation is less than dconv, whose default value is 5.0×10−6, the calculation is considered to have converged.

By default, calculations use the DIIS (or GVB-DIIS) convergence scheme, which generates an estimate of the Fock matrix that is a linear combination of current and previous Fock matrices determined to minimize the norm of the error vector. The keyword maxdiis sets the maximum number of Fock matrices (default 10) that are used for this scheme during any iteration. The keyword stdiis gives an error criterion: DIIS is started when the largest value of the DIIS error vector is less than the value of stdiis (hartrees), which is 100.0 by default. In general, after GVB-DIIS starts, any density matrix averaging requested by the keywords iteravg and istavg (explained in Table 1) is turned off.

The keyword vshift sets the amount the virtual orbital energies are increased before diagonalization, in atomic units. This keyword can be used to reduce mixing of the real and virtual orbitals, which sometimes helps convergence. By default, vshift is zero, except for DFT calculations on p-block, d-block, and f-block metals, when the default is 0.2 (for hybrid methods) or 0.3 (for non-hybrid methods). Non-default values should probably be on the order of 0.1–0.5.

The iacscf keyword may be employed if other attempts to converge the SCF fail. This can be useful especially for transition metal-containing systems or clusters. Start with iacscf=1 and if that does not work then try iacscf=4. iacscf=2 was developed especially for hemes and related molecules, while iacscf=3 was effective for graphitic systems. Energies obtained with iacscf = 2 or 3 can be directly compared to energies obtained without using iacscf. Energies obtained using iacscf = 1 or 4 can only be compared to other energies obtained using the same value of iacscf, because these two settings reduce the number of canonical orbitals used.

Another method for controlling SCF convergence is thermal smearing [213], which improves convergence in difficult cases by using a fictitious temperature to fractionally occupy all orbitals, occupied and virtual, and then decrease the temperature until convergence is reached. The orbital occupation numbers are represented by a Fermi-Dirac function, . Two methods for determining the occupation numbers have been implemented, FON (fractional occupation number) and pFON (pseudo-FON). In the FON method, the Fermi energy is determined so that the resulting occupations sum to the total number of electrons. In the pFON method, a Fermi energy is assigned halfway between the HOMO and LUMO energies and then the resulting occupations found from this Fermi energy are renormalized so that they sum to the total number of electrons.

Thermal smearing is turned on using the keyword ifdtherm. A value of 1 selects the FON method; a value of 2 selects the pFON method. You can use thermal smearing with the RHF, ROHF, UHF, DFT, RODFT, and UDFT methods. The number of alpha and beta electrons is kept the same during thermal smearing. Thermal smearing can be used with or without symmetry, and it can be used with the ipopsym keyword.

You can set the initial temperature using the fdtemp keyword. The units of fdtemp are Kelvin. The default initial temperature is 10,000 K. The temperature decreases as a function of the rms density change. When the density is close to the convergence threshold, the temperature is set to zero.

The number of canonical orbitals kept in an SCF calculation is controlled by the cut20 keyword. Eigenvectors of the overlap matrix, i.e. canonical orbitals, are discarded in a calculation if their eigenvalues are less than cut20. cut20 is set to 5.0×10−4 by default for both analytical and pseudospectral methods. It may be necessary to fix the number of canonical orbitals during a calculation, such as during a geometry optimization or scan, or between calculations, such as when comparing energies of related structures. You can set the number of canonical orbitals with the ncanorb keyword, and you can fix the number of canonical orbitals to the number determined for the initial structure by setting icanorb=1. When ncanorb is set to a value less than the number of basis functions, the canonical orbitals with the lowest eigenvalues of the overlap matrix are discarded until there are ncanorb orbitals left. Setting ncanorb sets icanorb to a positive value.

Single Point Energy Examples

Workflow Examples