(sec:caspt2.detailed)= # Complete Active Space Peturbation Theory : CASPT2 and CASPT2-K The fully internally contracted CASPT2 (FIC-CASPT2) approach is available with real, imaginary and IPEA shifts.{cite}`caspt2,caspt2Shift,caspt2IShift`. The ORCA implementation employs a reformulation of the CASPT2, that completely avoids the fourth order reduced density matrix, that would appear in the canonical implementation.{cite}`kollmar_d4efficient_2021` Some concepts are shared by a recent development reported by Sokolov and coworkers.{cite}`sokolov_mradc_2020` The modification allows calculations with large active spaces without approximating the results e.g. with the cumulant expansion. It should be noted that the IPEA shift in OpenMOLCAS slightly deviates from ORCA.{cite}`openmolcas2019`. Here, the IPEA shift, $\lambda$, is added to the matrix elements of the internally contracted CSFs $\Phi^{pr}_{qs}=E^p_qE^r_s|\Psi^0>$ with the generalized Fock operator $$<\Phi^{p'r'}_{q's'}|\hat{F}|\Phi^{pr}_{qs}>+=<\Phi^{p'r'}_{q's'}|\Phi^{pr}_{qs}> \cdot \frac{\lambda}{2}\cdot (4+\gamma^p_p-\gamma^q_q+\gamma^r_r-\gamma^s_s),$$ where $\gamma^p_q=<\Psi^0|E^p_q|\Psi^0>$ is the expectation value of the spin-traced excitation operator.{cite}`caspt2ipea2` The labels p,q,r,s refer to general molecular orbitals (inactive, active and virtual). Irrespective of the ORCA implementation, the validity of the IPEA shift in general remains questionable and is thus by default disabled.{cite}`zobel_ipea_2016` ORCA features an alternative formulation, named **CASPT2-K**, that revises the zeroth order Hamiltonian itself.{cite}`caspt2k` Here, two additional Fock matrices are introduced for excitation classes that add or remove electrons from the active space. The new Fock matrices are derived from the generalized Koopmans' matrices corresponding to electron ionization and attachment processes. The resulting method is less prone to intruder states and the same time more accurate compared to the canonical CASPT2 approach. For more a detailed discussion, we refer to the paper by Kollmar et al.{cite}`caspt2k` The CASPT2 and CASPT2-K approaches are called in complete analogy to the FIC-NEVPT2 approach. Note that the methodology can be combined with the RI approximation. A detailed example with comments on the output is given in Section {ref}`sec:energygradients.caspt2.typical`. Below is concise list with the accessible options. ```orca %casscf ... MULT 1,3 # multiplicity block NRoots 2,2 # number of roots for the MULT blocks TrafoStep RI # optional for RI approximation for CASSCF and CASPT2 PTMethod FIC_CASPT2 # canonical CASPT2 approach FIC_CASPT2K # CASPT2-K with revised H0 # Detailed settings (this is optional) PTSettings CASPT2_ishift 0.0 # imaginary level-shift CASPT2_rshift 0.0 # real level-shift CASPT2_IPEAshift 0.0 # IPEA shift. MaxIter 20 # Maximum for the CASPT2 iterations TSmallDenom 1e-2 # printing thresh for small denominators # general settings NThresh 1e-6 # FIC-CASPT2 cut off for linear dependencies D4Tpre 1e-10 # truncation of the 4-pdm D3Tpre 1e-14 # trunaction of the 3-pdm EWIN -3,1000 # Energy window for the frozencore setting fc_ewin # Option to skip the PT2 correction for a selected multiplicity blocks and roots # (same input structure as weights in %casscf) selectedRoots[0]=0,1 # skip the first roots of MULT=1 selectedRoots[1]=0,0 # skip MULT=3 roots #CASPT2-K specific options TReg 1e-2 # default for the Tikhonov reguralization end end ``` CASPT2 can also be set using the simple keywords on top of any valid CASSCF input. ```orca !CASPT2 # FIC-CASPT2 !CASPT2K # FIC-CASPT2-K !RI-CASPT2 # FIC-CASPT2 with RI approximation !RI-CASPT2-K # FIC-CASPT2-K with RI approximation %casscf ... ```