X

Search Results

Searching....

13.5 Nuclear–Electronic Orbital Method

13.5.8 Job Control for the NEO-SCF methods

(April 13, 2024)

The NEO method is a natural extension of the Self-Consistent-Field methods and it inherits most of its functionalities. Thus, the keywords that are used in the SCF Job Control are used in the NEO-SCF methods with a few additional keywords. The NEO-SCF methods require definition of the nuclear basis sets (see Examples for more information). Refer to Ref.  257 Culpitt T. et al.
J. Chem. Phys.
(2019), 150, pp. 201101.
Link
for selection of the protonic basis sets. Only pure (spherical) Gaussian basis sets are currently available. The following three $rem variables must be specified in order to run NEO-SCF calculations:

NEO

NEO
       Enable a NEO-SCF calculation.
TYPE:
       BOOLEAN
DEFAULT:
       FALSE
OPTIONS:
       TRUE Enable a NEO-SCF calculation. FALSE Disable a NEO-SCF calculation.
RECOMMENDATION:
       Set to TRUE if desired.

METHOD

METHOD
       Specifies the exchange-correlation functional.
TYPE:
       STRING
DEFAULT:
       No default
OPTIONS:
       NAME Use METHOD = NAME, where NAME is one of the following: HF for Hartree-Fock theory; one of the DFT methods listed in Section 5.3.5.;
RECOMMENDATION:
       In general, consult the literature to guide your selection. Our recommendations for DFT are indicated in bold in Section 5.3.5.

BASIS

BASIS
       Specifies the electronic basis sets to be used.
TYPE:
       STRING
DEFAULT:
       No default basis set
OPTIONS:
       General, Gen User defined ($basis keyword required). Symbol Use standard basis sets as per Chapter 8. Mixed Use a mixture of basis sets (see Chapter 8).
RECOMMENDATION:
       Consult literature and reviews to aid your selection.

In addition, the following $rem variables, that appear in the conventional SCF calculations can be used to customize the NEO-SCF calculation:

SCF_CONVERGENCE

SCF_CONVERGENCE
       NEO-SCF is considered converged when the electronic wave function error is less that 10-SCF_CONVERGENCE. Adjust the value of THRESH at the same time. (Starting with Q-Chem 3.0, the DIIS error is measured by the maximum error rather than the RMS error as in earlier versions.)
TYPE:
       INTEGER
DEFAULT:
       5 For single point energy calculations. 8 For geometry optimizations.
OPTIONS:
       User-defined
RECOMMENDATION:
       None.

NEO_N_SCF_CONVERGENCE

NEO_N_SCF_CONVERGENCE
       NEO-SCF is considered converged when the nuclear wave function error is less that 10-NEO_N_SCF_CONVERGENCE.
TYPE:
       INTEGER
DEFAULT:
       7
OPTIONS:
       User-defined
RECOMMENDATION:
       None.

UNRESTRICTED

UNRESTRICTED
       Controls the use of restricted or unrestricted orbitals.
TYPE:
       LOGICAL
DEFAULT:
       FALSE Closed-shell systems. TRUE Open-shell systems.
OPTIONS:
       FALSE Constrain the spatial part of the alpha and beta orbitals to be the same. TRUE Do not Constrain the spatial part of the alpha and beta orbitals.
RECOMMENDATION:
       The ROHF method is not available. Note that for unrestricted calculations on systems with an even number of electrons it is usually necessary to break α/β symmetry in the initial guess, by using SCF_GUESS_MIX or providing $occupied information (see Section 4.4 on initial guesses).

MAX_SCF_CYCLES

MAX_SCF_CYCLES
       Controls the maximum number of SCF iterations permitted.
TYPE:
       INTEGER
DEFAULT:
       50
OPTIONS:
       n n>0 User-selected.
RECOMMENDATION:
       Increase for slowly converging systems such as those containing transition metals.

SCF_ALGORITHM

SCF_ALGORITHM
       Algorithm used for converging the SCF.
TYPE:
       STRING
DEFAULT:
       DIIS Pulay DIIS.
OPTIONS:
       DIIS Pulay DIIS. DM Direct minimizer. DIIS_DM Uses DIIS initially, switching to direct minimizer for later iterations (See THRESH_DIIS_SWITCH, MAX_DIIS_CYCLES). DIIS_GDM Use DIIS and then later switch to geometric direct minimization (See THRESH_DIIS_SWITCH, MAX_DIIS_CYCLES). GDM Geometric Direct Minimization. RCA Relaxed constraint algorithm RCA_DIIS Use RCA initially, switching to DIIS for later iterations (see THRESH_RCA_SWITCH and MAX_RCA_CYCLES described later in this chapter) ROOTHAAN Roothaan repeated diagonalization.
RECOMMENDATION:
       In the NEO methods, the GDM procedure is recommended.

JOBTYPE

JOBTYPE
       Specifies the calculation.
TYPE:
       STRING
DEFAULT:
       Default is single-point, which should be changed to one of the following options.
OPTIONS:
       OPT Equilibrium structure optimization. TS Transition structure optimization is currently not available in NEO. RPATH Intrinsic reaction path following is currently not available in NEO.
RECOMMENDATION:
       Application-dependent. Always use POINT_GROUP_SYMMETRY = FALSE with geometry optimization.

XC_GRID

XC_GRID
       Specifies the type of grid to use for DFT calculations.
TYPE:
       INTEGER
DEFAULT:
       Functional-dependent; see Table 5.3.
OPTIONS:
       0 Use SG-0 for H, C, N, and O; SG-1 for all other atoms. n Use SG-n for all atoms, n=1,2, or 3 XY A string of two six-digit integers X and Y, where X is the number of radial points and Y is the number of angular points where possible numbers of Lebedev angular points, which must be an allowed value from Table 5.2 in Section 5.5. -XY Similar format for Gauss-Legendre grids, with the six-digit integer X corresponding to the number of radial points and the six-digit integer Y providing the number of Gauss-Legendre angular points, Y=2N2.
RECOMMENDATION:
       Use the default unless numerical integration problems arise. Larger grids may be required for optimization and frequency calculations.

Additional NEO specific $rem variables can be used to customize the NEO-SCF calculation:

NEO_E_CONV

NEO_E_CONV
       Energy convergence criteria in the NEO-SCF calculations so that the difference in energy between electronic and protonic iterations is less than 10-NEO_E_CONV.
TYPE:
       INTEGER
DEFAULT:
       8
OPTIONS:
       User-defined
RECOMMENDATION:
       Tighter criteria for geometry optimization are recommended.

NEO_BASIS_LIN_DEP_THRESH

NEO_BASIS_LIN_DEP_THRESH
       This keyword is used to set the liner dependency threshold for nuclear basis sets. It is defined as 10-NEO_BASIS_LIN_DEP_THRESH.
TYPE:
       DOUBLE
DEFAULT:
       5.0
OPTIONS:
       User-defined
RECOMMENDATION:
       No recommendation.

NEO_PURECART

NEO_PURECART
       This keyword is used to specify Cartesian or spherical Gaussians for nuclear basis functions.
TYPE:
       INTEGER
DEFAULT:
       2222
OPTIONS:
       User-defined
RECOMMENDATION:
       The default value corresponds to the use of Cartesian Gaussians for all angular momentum classes. The value NEO_PURECART = 1111 would use spherical Gaussians instead, similar to the use of PURECART.

NEO_ISOTOPE

NEO_ISOTOPE
       Enable calculations of different types of isotopes. Only one type of isotope is allowed at present.
TYPE:
       INTEGER
DEFAULT:
       1 Default is the proton isotope.
OPTIONS:
       1 This NEO calculation is using proton isotope. 2 This NEO calculation is using deuterium isotope. 3 This NEO calculation is using tritium isotope.
RECOMMENDATION:
       Refer to the NEO literature for the best performance on the isotope effects calculations.

NEO_VPP

NEO_VPP
       Remove J-K terms from the nuclear Fock matrix and the corresponding kernel terms for NEO excited state methods for the case of one quantum proton.
TYPE:
       INTEGER
DEFAULT:
       0
OPTIONS:
       1 Enable this option. 0 Disable this option.
RECOMMENDATION:
       Use this only in the case of one quantum hydrogen.

NEO_EPC

NEO_EPC
       Specifies the electron-proton correlation functional.
TYPE:
       STRING
DEFAULT:
       No default
OPTIONS:
       NAME Use NEO_EPC = NAME, where NAME can be either epc172 or epc19.
RECOMMENDATION:
       Consult the NEO literature to guide your selection.

NEO_SCFV

NEO_SCFV
       Enable a NEO-SCFV calculation
TYPE:
       INTEGER
DEFAULT:
       0 No NEO-SCFV calculation.
OPTIONS:
       1 Enable a NEO-SCFV calculation. 0 Disable a NEO-SCFV calculation.
RECOMMENDATION:
       None.

The following additional $rem variables can be used to customize the NEO excited states methods calculation to obtain excitation energies:

SET_ROOTS

SET_ROOTS
       Sets the number of NEO excited state roots to find by Davidson or display the number of roots obtained by direct diagonalization.
TYPE:
       INTEGER
DEFAULT:
       0 Do not look for any excited states.
OPTIONS:
       n n>0 Looks for n NEO excited states.
RECOMMENDATION:
       None

SET_RPA

SET_RPA
       Do a NEO-TDDFT or NEO-TDHF calculation.
TYPE:
       LOGICAL/INTEGER
DEFAULT:
       FALSE
OPTIONS:
       FALSE Do a NEO-TDA or NEO-CIS calculation. TRUE Do a NEO-TDDFT or NEO-TDHF calculation.
RECOMMENDATION:
       Consult the NEO literature to guide your selection.

DIRECT_DIAG

DIRECT_DIAG
       Perform direct diagonalization to obtain all the NEO excitation energies.
TYPE:
       INTEGER
DEFAULT:
       0 Use Davidson algorithm.
OPTIONS:
       1 Do the direct diagonalization. 0 Use Davidson algorithm.
RECOMMENDATION:
       Only use this option when Davidson solutions are not stable.

SET_STATE_DERIV

SET_STATE_DERIV
       This keyword is used to specify for which NEO excited state the gradient or geometry optimization is needed.
TYPE:
       INTEGER
DEFAULT:
       No default.
OPTIONS:
       n n>0 Looks to calculate gradient or conduct geometry optimization for the nth NEO excited state.
RECOMMENDATION:
       Consult the keyword NEO_SET_ESTATE if gradient is desired for a vibronic excited state with dominant electronic character.

NEO_SET_ESTATE

NEO_SET_ESTATE
       This keyword is used to specify for which vibronic excited state with dominant electronic character the gradient or geometry optimization is needed.
TYPE:
       INTEGER
DEFAULT:
       No default.
OPTIONS:
       n n>0 Looks to calculate gradient or conduct geometry optimization for the nth NEO vibronic excited state with dominant electronic character.
RECOMMENDATION:
       Make sure enough roots are requested by the SET_ROOTS keyword because the vibronic excited states with dominant protonic character usually come before.

NEO_SET_OPT

NEO_SET_OPT
       Enable a NEO excited state geometry optimization.
TYPE:
       INTEGER
DEFAULT:
       0
OPTIONS:
       1 Enable a NEO excited state geometry optimization. 0 Disable a NEO excited state geometry optimization.
RECOMMENDATION:
       Need to use with SET_STATE_DERIV. Consult the keyword NEO_SET_ESTATE if geometry optimization is desired for a vibronic excited state with dominant electronic character.

NEO_ZVEC_LINEAR

NEO_ZVEC_LINEAR
       Use linear solver for Z-vector equations for NEO excited state gradient.
TYPE:
       INTEGER
DEFAULT:
       0
OPTIONS:
       1 Use linear solver 0 Use iterative conjugate gradient solver
RECOMMENDATION:
       Use the default iterative conjugate gradient solver because it is more memory efficient.

NEO_ZVEC_CG_MAXITER

NEO_ZVEC_CG_MAXITER
       Controls the maximum number of iterative gradient solver iterations permitted.
TYPE:
       INTEGER
DEFAULT:
       300
OPTIONS:
       n Use n>0 iterations.
RECOMMENDATION:
       None.

NEO_ZVEC_CG_CONV

NEO_ZVEC_CG_CONV
       The convergence threshold (10-NEO_ZVEC_CG_CONV) for the iterative gradient solver for NEO Z-vector equations.
TYPE:
       INTEGER
DEFAULT:
       8
OPTIONS:
       n Use n>0 iterations.
RECOMMENDATION:
       None.

SET_SUBSPACE

SET_SUBSPACE
       Specify the number of protonic guess vectors for NEO-TDDFT
TYPE:
       INTEGER
DEFAULT:
       Number of states desired (as set by SET_ROOTS) if the number is smaller than the size of the protonic subspace (number of protonic occupied orbitals × number of protonic virtual orbitals) or the size of the protonic subspace
OPTIONS:
       n Use n>0 vectors.
RECOMMENDATION:
       None.

The following $rem variable must be specified in order to run NEO-CC calculations:

NEO_RICCSD

NEO_RICCSD
       Enable a NEO-RICCSD calculation.
TYPE:
       INTEGER
DEFAULT:
       0
OPTIONS:
       1 Enable this option. 0 Disable this option.
RECOMMENDATION:
       Both electronic and protonic auxiliary basis sets must be specified.

The following additional $rem variables can be used to customize the NEO-RICCSD calculation:

NEO_CCSD_MAX_CYCLES

NEO_CCSD_MAX_CYCLES
       Controls the maximum number of CC iterations permitted.
TYPE:
       INTEGER
DEFAULT:
       5000
OPTIONS:
       n Set the maximum number of iterations to n>0.
RECOMMENDATION:
       None

NEO_CCSD_CONVERGENCE

NEO_CCSD_CONVERGENCE
       NEO-RICCSD is considered converged when the energy error is less than 10-NEO_CCSD_CONVERGENCE.
TYPE:
       INTEGER
DEFAULT:
       8
OPTIONS:
       User-defined
RECOMMENDATION:
       None