7.10 Coupled-Cluster Excited-State and Open-Shell Methods

7.10.3 Spin-Flip Methods for Di- and Triradicals

The spin-flip method509, 510, 511 addresses the bond-breaking problem associated with a single-determinant description of the wave function. Both closed and open shell singlet states are described within a single reference as spin-flipping, (e.g., αβ excitations from the triplet reference state, for which both dynamical and non-dynamical correlation effects are smaller than for the corresponding singlet state. This is because the exchange hole, which arises from the Pauli exclusion between same-spin electrons, partially compensates for the poor description of the coulomb hole by the mean-field Hartree-Fock model. Furthermore, because two α electrons cannot form a bond, no bond breaking occurs as the internuclear distance is stretched, and the triplet wave function remains essentially single-reference in character. The spin-flip approach has also proved useful in the description of di- and tri-radicals as well as some problematic doublet states.

The spin-flip method is available for the CIS, CIS(D), CISD, CISDT, OD, CCSD, and EOM-(2,3) levels of theory and the spin complete SF-XCIS (see Section 7.2.4). An N7 non-iterative triples corrections are also available. For the OD and CCSD models, the following non-relaxed properties are also available: dipoles, transition dipoles, eigenvalues of the spin-squared operator (S2), and densities. Analytic gradients are also for SF-CIS and EOM-SF-CCSD methods. Construction of effective Hamiltonians in Heisenberg and Hubbard spaces from EOM-SF wave functions is described in the Section 13.5. To invoke a spin-flip calculation the SF_STATES $rem should be used, along with the associated $rem settings for the chosen level of correlation by using METHOD (recommended) or using older keywords (CORRELATION, and, optionally, EOM_CORR). Note that the high multiplicity triplet or quartet reference states should be used.

Several double SF methods have also been implemented.132 To invoke these methods, use DSF_STATES.