The NEO method is a natural extension of the SCF method 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.
271
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
. 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
.
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:
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.
Use SG- for all atoms, , or 3
A string of two six-digit integers and , where is the number of radial points
and 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.
Similar format for Gauss-Legendre grids, with the six-digit integer corresponding
to the number of radial points and the six-digit integer providing the number of
Gauss-Legendre angular points, .
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
.
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 .
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
This keyword is used to control whether to remove terms from the nuclear Fock matrix and the corresponding kernel terms for NEO excited state methods. Note that the purpose for the removal of these terms in the case of one quantum proton is to save on computational cost.
TYPE:
LOGICAL/INTEGER
DEFAULT:
TRUE
OPTIONS:
TRUE (or 1)
Enable this option (include nuclear terms).
FALSE (or 0)
Disable this option (remove nuclear terms).
RECOMMENDATION:
Set NEO_VPP = 0 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.
NEO_MSDFT
NEO_MSDFT
Enable a NEO-MSDFT calculation
TYPE:
INTEGER
DEFAULT:
0
No NEO-MSDFT calculation.
OPTIONS:
1
Enable a NEO-MSDFT calculation.
0
Disable a NEO-MSDFT calculation.
RECOMMENDATION:
See Section 13.5.2.3 for details on customizing a NEO-MSDFT calculation.
CNEO
CNEO
Enable a CNEO calculation
TYPE:
INTEGER
DEFAULT:
0
No CNEO calculation.
OPTIONS:
1
Enable a CNEO calculation.
0
Disable a CNEO calculation.
RECOMMENDATION:
Use currently only for a single NEO center.
Most of the available DFT-D3 empirical dispersion methods for modeling non-covalent interactions introduced in Section 5.7.2 have been extended to NEO-DFT, RT-NEO-TDDFT with fixed classical nuclei, and RT-NEO-TDDFT with moving classical nuclei. Note that the extended D3 model, D4, is currently unsupported but can be made available in a future release. NEO-DFT-D3 is available in Q-Chem (including both energies and analytic gradients) and can be requested via the $rem variable DFT_D, which is discussed below:
DFT_D
DFT_D
Controls the empirical dispersion correction to be added.
TYPE:
LOGICAL
DEFAULT:
None
OPTIONS:
FALSE
(or 0) Do not apply the DFT-D3 scheme
D3_ZERO
DFT-D3(0) dispersion correction from Grimme et al.
450
J. Chem. Phys.
(2010),
132,
pp. 154104.
Link
D3_BJ
DFT-D3(BJ) dispersion correction from Grimme et al.
452
J. Comput. Chem.
(2011),
32,
pp. 1456.
Link
D3_CSO
DFT-D3(CSO) dispersion correction from Schröder et al.
1136
J. Chem. Theory Comput.
(2015),
11,
pp. 3163.
Link
D3_ZEROM
DFT-D3M(0) dispersion correction from Smith et al.
1190
J. Phys. Chem. Lett.
(2016),
7,
pp. 2197.
Link
D3_BJM
DFT-D3M(BJ) dispersion correction from Smith et al.
1190
J. Phys. Chem. Lett.
(2016),
7,
pp. 2197.
Link
D3_OP
DFT-D3(op) dispersion correction from Witte et al.
1378
J. Chem. Theory Comput.
(2017),
13,
pp. 2043.
Link
D3
Automatically select the “best” available D3 dispersion correction
RECOMMENDATION:
None
Two caveats are worth pointing out: First, note that the functional form of the D3 empirical dispersion potential, , is a sum over all
pairwise atomic contributions. For convenience, our implementation of the D3 correction uses the positions of the quantum proton(s)
basis function center positions for computing the interatomic distances .
770
J. Chem. Phys.
(2023),
158,
pp. 114118.
Link
Second, the D3 dispersion potentials have been parameterized for classical nuclei represented as point charges.
Q-Chem’s Effective Core Potential (ECP) package has been integrated with the NEO method
to enable the description of relativistic and core electronic effects for systems in which some of the atoms may bear pseudopotentials.
This is done by adding an additional one-electron potential contribution, which serves to model the effects of the core electrons, into the electronic Fock or analagous
Kohn-Sham matrix (also see Section 8.10). In both the electronic and protonic Fock or analogous Kohn-Sham matrices, the one-electron term corresponding to the
interaction of electrons or quantum protons with the classical nucleus with an ECP utilizes the effective nuclear charge shielded by the core electrons.
771
J. Phys. Chem. Lett.
(2024),
15,
pp. 751.
Link
NEO analytic
gradient calculations with ECPs and RT-NEO-TDDFT dynamics simulations with ECPs are
also supported. The following $rem variable controls which ECP is used:
ECP
ECP
Defines the effective core potential and associated basis set to be used
TYPE:
STRING
DEFAULT:
No ECP
OPTIONS:
General, Gen
User defined. ($ecp keyword required)
Symbol
Use standard ECPs discussed above.
RECOMMENDATION:
ECPs are recommended for first row transition metals and heavier
elements. Also consult Section 8.10 for more details.
The NEO-SCF iteration procedure performed in the above section (see Section 13.5.3.1) solves the
electronic and quantum nuclear Roothaan/Kohn-Sham equations in alternating fashion until convergence towards the variational solution is
reached. This approach can become computationally expensive, especially when many SCF iterations are required to achieve self-consistency.
To accelerate this procedure, those equations may instead be solved simultaneously
at every step of the NEO-SCF iteration procedure. At the moment, we support the simultaneous implementation of the Direct Inversion in the Iterative Subspace (DIIS) algorithm.
791
J. Phys. Chem. A
(2022),
126,
pp. 7033.
Link
Through extrapolation/interpolation, the simultaneous DIIS algorithm constructs an improved electronic and protonic Fock matrix
at every th step given a shared set of DIIS coefficients and the previous Fock matrices:
(13.78) |
This is different from the traditional stepwise/alternating NEO-SCF approach, wherein only either or is computed at each step. The following $rem variables permit some customization of the simultaneous DIIS iterations:
NEO_SIMULTANEOUS_SCF
NEO_SIMULTANEOUS_SCF
Enables simultaneous optimization algorithm.
TYPE:
LOGICAL
DEFAULT:
FALSE
OPTIONS:
TRUE
FALSE
RECOMMENDATION:
None.
Note: SCF_ALGORITHM = DIIS should also be set if NEO_SIMULTANEOUS_SCF = TRUE.
NEO_STEPWISE_SCF_STEPS
NEO_STEPWISE_SCF_STEPS
Specifies the number of NEO-SCF stepwise/alternating macro-iterations to perform before switching to simultaneous algorithm.
TYPE:
INTEGER
DEFAULT:
1
OPTIONS:
User-defined
RECOMMENDATION:
The rate of convergence of the NEO-SCF
procedure is dependent on the initial guess for the electronic and protonic orbitals. For especially difficult systems,
we recommend performing at least one round of stepwise optimization before beginning simultaneous.
DIIS_SUBSPACE_SIZE
DIIS_SUBSPACE_SIZE
Controls the size of the DIIS subspace during the SCF.
TYPE:
INTEGER
DEFAULT:
10
OPTIONS:
User-defined
RECOMMENDATION:
None.
DIIS_ERR_RMS
DIIS_ERR_RMS
Changes the DIIS convergence metric from the maximum to the RMS error.
TYPE:
LOGICAL
DEFAULT:
FALSE
OPTIONS:
TRUE
FALSE
RECOMMENDATION:
Use the default, the maximum error provides a more reliable criterion.
The following additional $rem variables can be used to customize the NEO excited states methods calculation to obtain excitation energies:
CIS_N_ROOTS
CIS_N_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:
Looks for NEO excited states.
RECOMMENDATION:
None
RPA
RPA
Do a NEO-TDDFT or NEO-TDHF calculation.
TYPE:
LOGICAL
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.
CIS_STATE_DERIV
CIS_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:
Looks to calculate gradient or conduct geometry optimization for the th 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:
Looks to calculate gradient or conduct geometry optimization for the th NEO
vibronic excited state with dominant electronic character.
RECOMMENDATION:
Make sure enough roots are requested by the CIS_N_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 CIS_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 -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:
Use iterations.
RECOMMENDATION:
None.
NEO_ZVEC_CG_CONV
NEO_ZVEC_CG_CONV
The convergence threshold () for the iterative gradient solver for NEO -vector equations.
TYPE:
INTEGER
DEFAULT:
8
OPTIONS:
Use 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 CIS_N_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:
Use 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:
Set the maximum number of iterations to .
RECOMMENDATION:
None
NEO_CCSD_CONVERGENCE
NEO_CCSD_CONVERGENCE
NEO-RICCSD is considered converged when the energy error is less than
.
TYPE:
INTEGER
DEFAULT:
8
OPTIONS:
User-defined
RECOMMENDATION:
None
NEO_RIMP2
NEO_RIMP2
Enable a NEO-MP2 or NEO-OOMP2 calculation.
TYPE:
INTEGER
DEFAULT:
0
OPTIONS:
2
Perform a NEO-OOMP2 calclulation.
1
Perform a NEO-MP2 calculation.
0
Disable this option.
RECOMMENDATION:
Both electronic and protonic auxiliary basis sets must be specified.
SCS
SCS
Set the type of spin-component scaling.
TYPE:
INTEGER
DEFAULT:
0
OPTIONS:
1
Turns on spin-component scaling with SCS (, ).
2
Turns on spin-component scaling with SOS (, for MP2, for OOMP2).
3
arbitrary SCS (set with SSS_FACTOR and SOS_FACTOR).
0
no spin-component scaling.
RECOMMENDATION:
NONE
SSS_FACTOR
SSS_FACTOR
Controls the strength of the same-spin component of the MP2 electron-electron correlation energy.
TYPE:
INTEGER
DEFAULT:
1000000
OPTIONS:
Corresponding to .
RECOMMENDATION:
NONE
SOS_FACTOR
SOS_FACTOR
Controls the strength of the opposite-spin component of the MP2 electron-electron correlation energy.
TYPE:
INTEGER
DEFAULT:
1000000
OPTIONS:
Corresponding to .
RECOMMENDATION:
NONE
EP_FACTOR
EP_FACTOR
Controls the strength of the electron-proton component of the NEO-MP2 correlation energy.
TYPE:
INTEGER
DEFAULT:
1000000
OPTIONS:
Corresponding to .
RECOMMENDATION:
NONE