Closely related to the dual-basis approach of Section 4.7, but somewhat more general, is the Hartree-Fock perturbative correction (HFPC) developed by Deng *et al.*.[Deng et al.(2009a)Deng, Gilbert, and Gill, Deng et al.(2009b)Deng, Gilbert, and Gill] An HFPC calculation consists of an iterative HF calculation in a small primary basis followed by a single Fock matrix formation, diagonalization, and energy evaluation in a larger, secondary basis. In the following, we denote a conventional HF calculation by HF/basis, and a HFPC calculation by HFPC/primary/secondary. Using a primary basis of functions, the restricted HF matrix elements for a 2-electron system are

(4.60) |

Solving the Roothaan-Hall equation in the primary basis results in molecular orbitals and an associated density matrix, . In an HFPC calculation, is subsequently used to build a new Fock matrix, , in a larger secondary basis of functions

(4.61) |

where , indicate primary basis functions and , represent secondary basis functions. Diagonalization of affords improved molecular orbitals and an associated density matrix . The HFPC energy is given by

(4.62) |

where , , and represent secondary basis functions. This differs from the DBHF energy evaluation where , rather than , is used. The inclusion of contributions that are quadratic in is the key reason for the fact that HFPC is more accurate than DBHF.

Unlike dual-basis HF, HFPC does not require that the small basis be a proper subset of the large basis, and is therefore able to jump between any two basis sets. Benchmark study of HFPC on a large and diverse data set of total and reaction energies demonstrate that, for a range of primary/secondary basis set combinations, the HFPC scheme can reduce the error of the primary calculation by around two orders of magnitude at a cost of about one third that of the full secondary calculation.[Deng et al.(2009a)Deng, Gilbert, and Gill, Deng et al.(2009b)Deng, Gilbert, and Gill]

A density-functional version of HFPC (“DFPC”)[Deng et al.(2010)Deng, Gilbert, and Gill] seeks to combine the low cost of pure DFT calculations using small bases and grids, with the high accuracy of hybrid calculations using large bases and grids. The DFPC approach is motivated by the dual-functional method of Nakajima and Hirao[Nakajima and Hirao(2006)] and the dual-grid scheme of Tozer *et al.*[Tozer et al.(1994)Tozer, Mura, Amos, and Handy] Combining these features affords a triple perturbation: to the functional, to the grid, and to the basis set. We call this approach density-functional “triple jumping”.

HFPC/DFPC calculations are controlled with the following *$rem*. HFPT turns on the HFPC/DFPC approximation. Note that HFPT_BASIS specifies the secondary basis set.

HFPT

Activates HFPC/DFPC calculation.

TYPE:

LOGICAL

DEFAULT:

FALSE

OPTIONS:

Single-point energy only

RECOMMENDATION:

Use Dual-Basis to capture large-basis effects at smaller basis cost. See reference for recommended basis set, functional, and grid pairings.

HFPT_BASIS

Specifies the secondary basis in a HFPC/DFPC calculation.

TYPE:

STRING

DEFAULT:

None

OPTIONS:

None

RECOMMENDATION:

See reference for recommended basis set, functional, and grid pairings.

DFPT_XC_GRID

Specifies the secondary grid in a HFPC/DFPC calculation.

TYPE:

STRING

DEFAULT:

None

OPTIONS:

None

RECOMMENDATION:

See reference for recommended basis set, functional, and grid pairings.

DFPT_EXCHANGE

Specifies the secondary functional in a HFPC/DFPC calculation.

TYPE:

STRING

DEFAULT:

None

OPTIONS:

None

RECOMMENDATION:

See reference for recommended basis set, functional, and grid pairings.

**Example 4.42** Input for a HFPC single-point calculation.

$molecule 0 1 H H 1 0.75 $end $rem JOBTYPE sp EXCHANGE hf BASIS cc-pVDZ ! primary basis HFPT_BASIS cc-pVQZ ! secondary basis PURECART 1111 ! set to purecart of the target basis HFPT true $end

**Example 4.43** Input for a DFPC single-point calculation.

$molecule 0 1 H H 1 0.75 $end $rem JOBTYPE sp METHOD blyp ! primary functional DFPT_EXCHANGE b3lyp ! secondary functional DFPT_XC_GRID 00075000302 ! secondary grid XC_GRID 0 ! primary grid HFPT_BASIS 6-311++G(3df,3pd) ! secondary basis BASIS 6-311G* ! primary basis PURECART 1111 HFPT true $end