There is related question from March 2020, but that seems too old to reply to.

Psi4 has a nice EE-EOM-CCSD, which could also be used to compute IPs and EAs by the so-called CONTINUUM trick. Essentially one adds a basis function with vanishing exponent to the basis, in other words, an AO/MO that doesn’t couple with any other basis function and has energy zero.

The EE-EOM-CCSD excitations into this orbital describe IPs; EAs are obtained by occupying the continuum MO in the SCF, and exciting from it to the normal MOs.

This can be done (approximately) by adding an explicit (here A2 symmetry) basis function:

```
memory 2 gb
molecule mol {
-2 1
Li 0.00000 0.00000 0.0
F 0.00000 0.00000 1.5
Gh(He) 0.0 0.0 0.75
}
set {
reference rhf
scf_type pk
DOCC [4, 1, 1, 1]
roots_per_irrep [0, 1, 0, 0]
}
basis {
[aux]
spherical
****
He 0
D 1 1.00
1.0e-16 1.0000000
****
assign aug-cc-pVDZ
assign He aux
}
E = energy('eom-ccsd', return_wfn=False)
```

This gives the right EA to enough digits.

However, it does not work well for IPs, because excitations have lower energies and converge first.

To make it work well, three things are needed:

- Instead of an explicit basis function, add the integrals of a basis function with alpha->0 to
**S**,**H**, and the two-electron tensor. - Only needed for EAs: Take care to occupy the continuum orbitals (2 electrons) during the SCF procedure.
- Include only the relevant substitutions when building Hbar in the EOM. For IP, one particle-index must be the continuum orbital; for EA one hole-index must be the continuum orbital.