# 3.3.8. CASPT2 — A Many Body Perturbation Program¶

Dynamic correlation energy of a molecular system can be calculated using the CASPT2 program module in Molcas. A CASPT2 calculation gives a second order perturbation estimate of the full CI energy using the CASSCF wave function of the system. The program can also perform Multi-State CASPT2 calculations (MS-CASPT2) in which different CASPT2 states are coupled using an effective Hamiltonian computed to second order in perturbation theory. This is necessary in cases where different CASSCF wave functions are strongly dependent on dynamical correlation effects. The wave function have to be obtained in a previous State-Average CASSCF calculation.

A sample input is given in Block 3.3.8.1. The FROZen keyword specifies the number of orbitals of each symmetry which will not be included in the correlation. We have chosen the RASSCF INACtive orbitals to be frozen for this calculation (the default is to freeze all core orbitals, so the input is strictly not needed). The remaining two keywords, CONVergence and MAXIter, are included with there default values. The MULTistate keyword is included for clarity even if not needed in this single state calculation. A single line follows indicating the number of simultaneously treated CASPT2 roots and the number of the roots in the previous SA-CASSCF calculation.

## 3.3.8.1. CASPT2 Output¶

In section 5.1.5.1.4 the meaning and significance of most of the features used and printed by the CASPT2 program are explained in the context of an actual example. We suggest a careful reading of that section because understanding the results of a CASPT2 calculation is important for the analysis of problems like intruder states, large coefficients, convergence, etc.

```
&CASPT2
Frozen= 1 0 0 0
Multistate= 1 1
MaxIter= 40
```

The output of the CASPT2 program begins with the title from the input as well as the title from the SEWARD input. It also contains the cartesian coordinates of the molecule and the CASSCF wave function and orbital specifications. This is followed by details about the type of Fock and \(H_0\) operator used and, eventually, the value of the level-shift parameter employed. It is possible then to obtain, by input specifications, the quasi-canonical orbitals in which the wave function will be represented. The following CI vector and occupation number analysis will be performed using the quasi-canonical orbitals.

Two important sections follow. First a detailed report on small energy denominators, large components, and large energy contributions which will inform about the reliability of the calculation (see section 5.1.5.1.4) and finally the CASPT2 property section including the natural orbitals obtained as defined in the output and a number of approximated molecular properties.

If the MULTistate option is used, the program will perform one CASPT2 calculation for each one of the selected roots, and finally the complete effective Hamiltonian containing the selected states will be solved to obtain the final MS-CASPT2 energies and PM-CASSCF wave functions [18].

The CASPT2 module needs the integral files in $WorkDir and the RUNFILE file from the and the JOBIPH file from the RASSCF module. The orbitals are saved in the PT2ORB file. The new PM-CASSCF wave functions generated in a MS-CASPT2 calculation is saved in the JOBMIX file.

## 3.3.8.2. CASPT2 — Basic and Most Common Keywords¶

- MULTistate
- Multi-State CASPT2 calculation: number of roots and roots (Ex. 3 1 2 3)
- IMAG
- Value for the imaginary shift for the zero order Hamiltonian