Interface to the Psi4 quantum chemistry package (www.psicode.org, open source). Psi4 offers modern implementation of wide range of QM methods.

For now, the interface provides access to the basic wavefunction QM methods (including the FNO approximation) and to SAPT.

- hf - supports calculation of energy, gradient, hessian
- dft - supports calculation of energy, gradient, native_opt, hessian
- mp2 - supports calculation of energy, gradient, native_opt, hessian
- mp3 - supports calculation of energy, gradient, native_opt, hessian
- ccsd - supports calculation of energy
- ccsd(t) - supports calculation of energy
- sapt - supports calculation of energy

- molecule_a - Definition of the first monomer for SAPT calculation (selection, charge, multiplicity)
- molecule_b - Definition of the second monomer for SAPT calculation (selection, charge, multiplicity)

- fno_occ_tolerance
- psi4_bin_dir
- psi4_data_dir
- psi4_df_guess
- psi4_fno
- psi4_geometry_fragments
- psi4_keywords
- psi4_python_version
- psi4_restart_on_segfault
- psi4_sapt_ct
- psi4_sapt_level
- psi4_version

- auxiliary_basis_mp2
- auxiliary_basis_mp2_elements
- auxiliary_basis_scf
- auxiliary_basis_scf_elements
- basisset
- basisset_elements
- charge
- correlation_frozen_core
- density_convergence
- density_fitting
- development
- existing_calc_dir
- functional
- functional_custom
- functional_custom_type
- interface
- job_cleanup
- mem
- method
- multiplicity
- parallel
- scf_convergence
- spin_restricted
- use_symmetry

The following examples, along with all other files needed to run them, can be found in the directory cuby4/interfaces/psi4/examples

```
#===============================================================================
# Psi4 interface example 1 - interface configuration
#===============================================================================
# The following keyword is needed to configure the interface -
# path to the directory containing Psi4 binaries:
psi4_bin_dir: /home/rezac/bin/psi4/install/bin
# The following examples assume that this keyword is set in the global
# configuation file.
# Let's try some calculation - MP2 with desity fitting
job: energy
interface: psi4
geometry: A24:water
charge: 0
method: mp2
density_fitting: both # DF-HF + DF-MP2
basisset: "6-31G"
```

```
#===============================================================================
# Psi4 interface example 2 - FNO-CCSD(T)
#===============================================================================
# The Frozen Natural Orbitals approximation can be used to accelerate
# CCSD and CCSD(T) calculations.
job: energy
interface: psi4
geometry: A24:water
charge: 0
method: ccsd(t)
basisset: cc-pVDZ
# Use density fitting where possible, switch on the FNO approximation:
density_fitting: both
psi4_fno: yes
```

```
#===============================================================================
# Psi4 interface example 3 - SAPT
#===============================================================================
# This input demonstrates how to run a SAPT calculation, it requires some
# specific input.
interface: psi4
# Although interaction energy is calculated, it is done in a single run of
# the external program, called by the "energy" protocol
job: energy
geometry: S66:water_dimer # Water dimer from the S66 data set
charge: 0
method: sapt
# Order of the SAPT expansion - SAPT0 is the most approximate level available:
psi4_sapt_level: sapt0
basisset: aug-cc-pVDZ
density_fitting: both
# The information on the fragments (monomers) to be passed to Psi4:
psi4_geometry_fragments: yes
molecule_a:
charge: 0
multiplicity: 1
selection: "1-3"
molecule_b:
charge: 0
multiplicity: 1
selection: "4-6"
# To get the components of the interaction energy, enable their printing:
print: energy_decomposition
```