13.12 Symmetry-Adapted Perturbation Theory (SAPT)

13.12.2 Job Control for SAPT Calculations

Q-Chem’s implementation of SAPT0 was designed from the start as a correction for XPol calculations, affording the “XSAPT” method that is described in Section 13.13. As such, even a traditional SAPT0 calculation is requested by setting JOBTYPE = XSAPT. However, whereas XSAPT calculations are based on XPol wave functions for the monomers, which can capture many-body polarization effects in systems composed of more than two monomers (see Section 13.13), traditional SAPT calculations are based instead on gas-phase monomer wave functions. This can be realized by turning off the XPol charge embedding, i.e., by setting embed = none in the $xpol section that was introduced in Section 13.11.

Energy components are printed separately at the end of a SAPT job. If EXCHANGE = HF, then an XSAPT calculation with XPol embedding turned off corresponds to a SAPT0 calculation. Alternatively, if a density functional level of theory is requested in the $rem section, then JOBTYPE = XSAPT will perform a SAPT(KS) calculation, i.e., one that is based on a Kohn-Sham description of the monomers.

Note:  (1) Meta-GGAs are not yet available for SAPT(KS) calculations when the projected (pseudocanonicalized) basis set is used. SAPT(KS) calculations can be performed with meta-GGAs using the monomer or dimer basis sets. (2) Both closed- and open-shell (unrestricted) SAPT(KS) calculations are available. (3) Frozen orbitals are not available for use with SAPT(KS).

The remaining job control options for SAPT calculations are specified using various keywords contained in a $sapt input section, as described below. Researchers who use Q-Chem’s SAPT code are asked to cite Refs. 414, 369.

Algorithm
       Specifies which SAPT algorithm will be used
INPUT SECTION: $sapt
TYPE:
       STRING
DEFAULT:
       MO
OPTIONS:
       MO Traditional molecular orbital-based algorithm RI-MO MO-based algorithm with resolution-of-identity approximation AO Atomic orbital-based algorithm.
RECOMMENDATION:
       The standard MO-based algorithm corresponds to an MP2-like implementation of Eq. (13.48), where the RI-MO algorithm corresponds to an RIMP2-like implementation. The RI implementation is generally much faster and introduces negligible errors (as compared to the standard implementation), provided that the auxiliary basis set is matched to the primary basis set. (The former must be specified using (AUX_BASIS in the $rem section.) The AO-based algorithm does not implement Eq. (13.48) and is intended only for use with XSAPT(KS)+aiD calculations; see Section 13.13.2.

Exchange
       Specifies how the first-order exchange interaction will be evaluated.
INPUT SECTION: $sapt
TYPE:
       STRING
DEFAULT:
       S_Squared
OPTIONS:
       S_Squared Use the single-exchange (“S2") approximation. S_Inverse Compute the exact first order exchange.
RECOMMENDATION:
       The single-exchange approximation is expected to be adequate except possibly at very short intermolecular distances, and is somewhat faster to compute.

Basis
       Controls which basis is used to evaluate the SAPT corrections
INPUT SECTION: $sapt
TYPE:
       STRING
DEFAULT:
       monomer
OPTIONS:
       monomer Use the monomer-centered basis set (MCBS). dimer Use the dimer-centered basis set (DCBS). projected Use the projected (pseudocanonicalized) basis set.
RECOMMENDATION:
       The DCBS (in which the monomer wave functions are iterated to convergence using the dimer basis set) is the preferred choice in traditional SAPT, although it is more costly than the MCBS (which uses only the monomer basis set for the monomer wave functions). The DCBS is ill-defined, and therefore unavailable, for use with XPol charge embedding. The projected basis set is an efficient approximation to the DCBS for traditional SAPT calculations,414 and is available for use with XPol embedding.

CPHF
       Requests that the second-order corrections Eind(2) and Eexch-ind(2) be replaced by their infinite-order “response” analogues, Eind,resp(2) and Eexch-ind,resp(2).
INPUT SECTION: $sapt
TYPE:
       None
DEFAULT:
       Not specified
OPTIONS:
       Response quantities are calculated if the keyword is present.
RECOMMENDATION:
       Computing the response corrections requires solving CPHF equations for each pair of monomers, which is somewhat expensive but may improve the accuracy, especially when the monomers are polar and induction contributions are large.

DSCF
       Requests the δEintHF correction
INPUT SECTION: $sapt
TYPE:
       None
DEFAULT:
       Not specified
OPTIONS:
       The δEintHF correction is computed if this keyword is present.
RECOMMENDATION:
       Evaluating δEintHF requires an SCF calculation on the entire (super)system. In the context of SAPT0 calculations, this correction essentially results in a “Hartree-Fock plus dispersion” estimate of the interaction energy.

Print
       Specifies the level of output for the XPol code.
INPUT SECTION: $sapt
TYPE:
       INTEGER
DEFAULT:
       1
OPTIONS:
       n Desired print level
RECOMMENDATION:
       Higher values print additional information

Example 13.26  Example showing a SAPT0 calculation using the RI approximation in a dimer-centered basis.

$molecule
0 1
-- formamide
   0 1
   C -2.018649  0.052883  0.000000
   O -1.452200  1.143634  0.000000
   N -1.407770 -1.142484  0.000000
   H -1.964596 -1.977036  0.000000
   H -0.387244 -1.207782  0.000000
   H -3.117061 -0.013701  0.000000
-- formamide
   0 1
   C  2.018649 -0.052883  0.000000
   O  1.452200 -1.143634  0.000000
   N  1.407770  1.142484  0.000000
   H  1.964596  1.977036  0.000000
   H  0.387244  1.207782  0.000000
   H  3.117061  0.013701  0.000000
$end

$rem
   JOBTYPE          XSAPT
   BASIS            AUG-CC-PVDZ
   AUX_BASIS        RIMP2-AUG-CC-PVDZ
   METHOD           HF
$end

$sapt
  algorithm   ri-mo
  basis       dimer
$end