Capabilities and Alternate Implementations¶
Depending on the reference (e.g., RHF, UHF, ROHF), the integral treatment (conventional CONV, densityfitted DF, and Choleskydecomposed CD), active orbitals, and derivative level, computational methods are sometimes assembled from implementations by multiple coders. Conversely, some capabilities may be implemented multiple times. Capabilities, modules, algorithm types, and defaults are detailed for many groundstate methods at Table Module Capabilities. Its analogous summary table (with modules collapsed) is at Summary Capabilities. PSI4 transparently selects the most efficient implementation, so one generally needn’t consult this table. However, to understand the details of what combinations are accessible or what alternate implementations are available, read on.
Note that HF, DFT, and MPn (n<=3) default to densityfitted integrals, while all higher methods default to conventional integrals. Therefore, for a closedshell molecule:
# runs MP2 with default algorithm type ``DF`` with default implementation DFMP2
energy('mp2')
# runs MP2 with algorithm type ``CONV`` with default implementation OCC
set mp2_type conv
energy('mp2')
# runs MP2 with default algorithm type ``DF`` with implementation OCC
set qc_module occ
energy('mp2')
# runs MP2 with algorithm type ``CONV`` with implementation FNOCC
set mp2_type conv
set qc_module fnocc
energy('mp2')
◻ ◻ name ↓ → type[1] ↓ → ◻ 
◻ ◻ 
PSI4 Capabilities 


Restricted (RHF) 
Unrestricted (UHF) 
Restricted Open (ROHF) 

CV 
DF 
CD 
CV 
DF 
CD 
CV 
DF 
CD 
CV 
DF 
CD 
CV 
DF 
CD 
CV 
DF 
CD 

A 
F 
A 
F 
A 
F 
A 
F 
A 
F 
A 
F 
A 
F 
A 
F 
A 
F 
A 
F 
A 
F 
A 
F 
A 
F 
A 
F 
A 
F 
A 
F 
A 
F 
A 
F 

hf 
✓ 
✓̳ 
✓ 
✓ 
✓̳ 
∷ 
✓ 
✓̳ 
✓ 
✓ 
✓̳ 
∷ 
✓ 
✓̳ 
✓ 
✓ 
✓̳ 
∷ 

SCF 
✓̲ 
✓̳ 
✓̲ 
✓̲ 
✓̳ 
✓̲ 
✓̳ 
✓̲ 
✓̲ 
✓̳ 
✓̲ 
✓̳ 
✓̲ 
✓̲ 
✓̳ 

mp2 
✓ 
✓ 
✓̳ 
✓̳ 
✓ 
✓ 
✓ 
∷ 
✓̳ 
✓̳ 
∷ 
∷ 
✓ 
✓ 
✓̳ 
✓̳ 
✓ 
✓ 
✓ 
∷ 
✓̳ 
✓̳ 
∷ 
∷ 
✓ 
✓ 
✓̳ 
✓̳ 
✓ 
✓ 
∷ 
∷ 
∷̳ 
∷̳ 
∷ 
∷ 

DETCI 
✓ 
✓ 

DFMP2[4] 
✓̳ 
✓̳ 
✓̳ 
✓̳ 
✓̳ 
✓̳ 
✓̳ 
✓̳ 

FNOCC 
✓ 
✓ 

OCC 
✓̲ 
✓̲ 
✓ 
✓ 
✓̲ 
✓̲ 
✓̲ 
✓ 
✓ 
✓̲ 
✓̲ 
✓ 
✓ 
✓̲ 
✓̲ 
✓̲ 
✓̳ 
✓̳ 
✓̲ 
✓̲ 
✓ 
✓ 
✓̲ 
✓̲ 

mp2.5 
✓ 
✓ 
✓̳ 
✓̳ 
✓ 
✓ 
✓ 
∷ 
✓̳ 
✓̳ 
∷ 
∷ 
✓ 
✓ 
✓̳ 
✓̳ 
✓ 
✓ 
✓ 
∷ 
✓̳ 
✓̳ 
∷ 
∷ 

OCC 
✓̲ 
✓̲ 
✓̳ 
✓̳ 
✓̲ 
✓̲ 
✓̲ 
✓̳ 
✓̳ 
✓̲ 
✓̲ 
✓̳ 
✓̳ 
✓̲ 
✓̲ 
✓̲ 
✓̳ 
✓̳ 

mp3 
✓ 
✓ 
✓̳ 
✓̳ 
✓ 
✓ 
✓ 
∷ 
✓̳ 
✓̳ 
∷ 
∷ 
✓ 
✓ 
✓̳ 
✓̳ 
✓ 
✓ 
✓ 
∷ 
✓̳ 
✓̳ 
∷ 
∷ 

DETCI 
✓ 
✓ 

FNOCC 
✓ 
✓ 

OCC 
✓̲ 
✓̲ 
✓̳ 
✓̳ 
✓̲ 
✓̲ 
✓̲ 
✓̳ 
✓̳ 
✓̲ 
✓̲ 
✓̳ 
✓̳ 
✓̲ 
✓̲ 
✓̲ 
✓̳ 
✓̳ 

mp4(sdq) 
✓̳ 
✓̳ 

FNOCC 
✓̳ 
✓̳ 

mp4, mpn[5] 
✓̳ 
✓̳ 

DETCI 
✓ 
✓ 

FNOCC 
✓̳ 
✓̳ 

zapt2, zaptn[5] 
✓̳ 
✓̳ 

DETCI 
✓̳ 
✓̳ 

cisd, cin[5] 
✓̳ 
✓̳ 
✓̳ 
✓̳ 

DETCI 
✓ 
✓ 
✓̳ 
✓̳ 

FNOCC 
✓̳ 
✓̳ 

qcisd 
✓̳ 
✓̳ 

FNOCC 
✓̳ 
✓̳ 

qcisd(t) 
✓̳ 
✓̳ 

FNOCC 
✓̳ 
✓̳ 

fci 
✓̳ 
✓̳ 
✓̳ 
✓̳ 

DETCI 
✓̳ 
✓̳ 
✓̳ 
✓̳ 

remp2 
✓̳ 
✓̳ 
✓ 
✓ 
✓ 
✓ 
✓̳ 
✓̳ 
✓ 
✓ 
✓ 
✓ 

OCC 
✓̳ 
✓̳ 
✓̲ 
✓̲ 
✓̲ 
✓̲ 
✓̳ 
✓̳ 
✓̲ 
✓̲ 
✓̲ 
✓̲ 

lccd 
✓̳ 
✓̳ 
✓ 
✓ 
✓ 
✓ 
✓̳ 
∷̳ 
✓ 
✓ 
∷ 
∷ 
✓̳ 
✓̳ 
✓ 
✓ 
✓ 
✓ 
✓̳ 
∷̳ 
✓ 
✓ 
∷ 
∷ 

FNOCC 
✓̳ 
✓̳ 

OCC 
✓ 
✓ 
✓̲ 
✓̲ 
✓̲ 
✓̲ 
✓̳ 
✓̲ 
✓̲ 
✓̳ 
✓̳ 
✓̲ 
✓̲ 
✓̲ 
✓̲ 
✓̳ 
✓̲ 
✓̲ 

lccsd, cepa(0) 
✓̳ 
✓̳ 

FNOCC 
✓̳ 
✓̳ 

cepa(1) 
✓̳ 
✓̳ 

FNOCC 
✓̳ 
✓̳ 

cepa(3) 
✓̳ 
✓̳ 

FNOCC 
✓̳ 
✓̳ 

acpf 
✓̳ 
✓̳ 

FNOCC 
✓̳ 
✓̳ 

aqcc 
✓̳ 
✓̳ 

FNOCC 
✓̳ 
✓̳ 

ccd 
✓ 
✓ 
✓ 
✓ 
✓ 
✓ 
∷ 
∷ 
✓ 
✓ 
✓ 
✓ 
✓ 
✓ 
∷ 
∷ 

OCC 
✓̲ 
✓̲ 
✓̲ 
✓̲ 
✓̲ 
✓̲ 
✓̲ 
✓̲ 
✓̲ 
✓̲ 
✓̲ 
✓̲ 

bccd 
✓̳ 
✓̳ 
✓̳ 
✓̳ 
✓̳ 
✓̳ 

CCENERGY 
✓̳ 
✓̳ 
✓̳ 
✓̳ 
✓̳ 
✓̳ 

cc2 
✓̳ 
✓̳ 
✓̳ 
∷̳ 
✓̳ 
✓̳ 
∷̳ 
∷̳ 
✓̳ 
✓̳ 
∷̳ 
∷̳ 

CCENERGY 
✓̳ 
✓̳ 
✓̳ 
✓̳ 
✓̳ 
✓̳ 
✓̳ 

ccsd 
✓̳ 
✓̳ 
✓ 
✓ 
✓ 
✓ 
✓̳ 
∷̳ 
✓ 
✓ 
∷ 
∷ 
✓̳ 
✓̳ 
✓ 
✓ 
✓ 
✓ 
✓̳ 
∷̳ 
✓ 
✓ 
∷ 
∷ 
✓̳ 
✓̳ 
✓̳ 
∷̳ 

CCENERGY 
✓̳ 
✓̳ 
✓̳ 
✓̳ 
✓̳ 
✓̳ 
✓̳ 
✓̳ 
✓̳ 

FNOCC 
✓ 
✓ 
✓̲ 
✓̲ 
✓̲ 
✓̲ 

MRCC 
✓ 
✓ 
✓ 
✓ 
✓ 
✓ 

OCC 
✓ 
✓ 
✓ 
✓ 
✓̲ 
✓̲ 
✓̲ 
✓̲ 
✓̲ 
✓̲ 
✓̲ 
✓̲ 

ccsd(t) 
✓̳ 
✓̳ 
✓ 
✓ 
✓ 
✓ 
∷̳ 
∷̳ 
✓ 
✓ 
∷ 
∷ 
✓̳ 
✓̳ 
∷̳ 
∷̳ 
✓̳ 
✓̳ 
∷̳ 
∷̳ 

CCENERGY[6] 
✓̳ 
✓̳ 
✓̳ 
✓̳ 
✓̳ 
✓̳ 

FNOCC 
✓ 
✓ 
✓̲ 
✓̲ 
✓̲ 
✓̲ 

MRCC 
✓ 
✓ 
✓ 
✓ 
✓ 
✓ 

OCC 
✓ 
✓ 
✓ 
✓ 
✓̲ 
✓̲ 

accsd(t)[7] 
✓̳ 
✓̳ 
✓ 
✓ 
✓ 
✓ 

CCENERGY 
✓̳ 
✓̳ 

MRCC 
✓ 
✓ 
✓ 
✓ 
✓ 
✓ 

OCC 
✓̲ 
✓̲ 
✓̲ 
✓̲ 

bccd(t) 
✓̳ 
✓̳ 
✓̳ 
✓̳ 
✓̳ 
✓̳ 

CCENERGY 
✓̳ 
✓̳ 
✓̳ 
✓̳ 
✓̳ 
✓̳ 

cc3 
✓̳ 
✓̳ 
✓̳ 
✓̳ 
✓̳ 
✓̳ 

CCENERGY 
✓̳ 
✓̳ 
✓̳ 
✓̳ 
✓̳ 
✓̳ 

MRCC 
✓ 
✓ 
✓ 
✓ 

omp2 
✓ 
✓̳ 
✓̳ 
✓ 
✓ 
✓ 
✓̳ 
✓̳ 
∷ 
∷ 
✓ 
✓̳ 
✓̳ 
✓ 
✓ 
✓ 
✓̳ 
✓̳ 
∷ 
∷ 
✓ 
✓̳ 
✓̳ 
✓ 
✓ 
✓ 
✓̳ 
✓̳ 
∷ 
∷ 

OCC[4] 
✓̲ 
✓̳ 
✓̳ 
✓̲ 
✓̲ 
✓̲ 
✓̳ 
✓̳ 
✓̲ 
✓̳ 
✓̳ 
✓̲ 
✓̲ 
✓̲ 
✓̳ 
✓̳ 
✓̲ 
✓̳ 
✓̳ 
✓̲ 
✓̲ 
✓̲ 
✓̳ 
✓̳ 

omp2.5 
✓̳ 
✓ 
✓ 
✓ 
✓ 
✓̳ 
✓ 
✓ 
∷ 
∷ 
✓̳ 
✓ 
✓ 
✓ 
✓ 
✓̳ 
✓ 
✓ 
∷ 
∷ 
✓̳ 
✓ 
✓ 
✓ 
✓ 
✓̳ 
✓ 
✓ 
∷ 
∷ 

OCC[4] 
✓̳ 
✓̲ 
✓̲ 
✓̲ 
✓̲ 
✓̳ 
✓̲ 
✓̲ 
✓̳ 
✓̲ 
✓̲ 
✓̲ 
✓̲ 
✓̳ 
✓̲ 
✓̲ 
✓̳ 
✓̲ 
✓̲ 
✓̲ 
✓̲ 
✓̳ 
✓̲ 
✓̲ 

omp3 
✓̳ 
✓ 
✓ 
✓ 
✓ 
✓̳ 
✓ 
✓ 
∷ 
∷ 
✓̳ 
✓ 
✓ 
✓ 
✓ 
✓̳ 
✓ 
✓ 
∷ 
∷ 
✓̳ 
✓ 
✓ 
✓ 
✓ 
✓̳ 
✓ 
✓ 
∷ 
∷ 

OCC[4] 
✓̳ 
✓̲ 
✓̲ 
✓̲ 
✓̲ 
✓̳ 
✓̲ 
✓̲ 
✓̳ 
✓̲ 
✓̲ 
✓̲ 
✓̲ 
✓̳ 
✓̲ 
✓̲ 
✓̳ 
✓̲ 
✓̲ 
✓̲ 
✓̲ 
✓̳ 
✓̲ 
✓̲ 

oremp2 
✓̳ 
✓ 
✓ 
✓ 
✓ 
✓̳ 
✓ 
✓ 
∷ 
∷ 
✓̳ 
✓ 
✓ 
✓ 
✓ 
✓̳ 
✓ 
✓ 
∷ 
∷ 
✓̳ 
✓ 
✓ 
✓ 
✓ 
✓̳ 
✓ 
✓ 
∷ 
∷ 

OCC[4] 
✓̳ 
✓̲ 
✓̲ 
✓̲ 
✓̲ 
✓̳ 
✓̲ 
✓̲ 
✓̳ 
✓̲ 
✓̲ 
✓̲ 
✓̲ 
✓̳ 
✓̲ 
✓̲ 
✓̳ 
✓̲ 
✓̲ 
✓̲ 
✓̲ 
✓̳ 
✓̲ 
✓̲ 

olccd 
✓̳ 
✓ 
✓ 
✓ 
✓ 
✓̳ 
✓ 
✓ 
∷ 
∷ 
✓̳ 
✓ 
✓ 
✓ 
✓ 
✓̳ 
✓ 
✓ 
∷ 
∷ 
✓̳ 
✓ 
✓ 
✓ 
✓ 
✓̳ 
✓ 
✓ 
∷ 
∷ 

OCC[4] 
✓̳ 
✓̲ 
✓̲ 
✓̲ 
✓̲ 
✓̳ 
✓̲ 
✓̲ 
✓̳ 
✓̲ 
✓̲ 
✓̲ 
✓̲ 
✓̳ 
✓̲ 
✓̲ 
✓̳ 
✓̲ 
✓̲ 
✓̲ 
✓̲ 
✓̳ 
✓̲ 
✓̲ 

svwn, LSDA DFT 
✓ 
✓̳ 
✓ 
✓ 
✓̳ 
∷ 
✓ 
✓̳ 
✓ 
✓ 
✓̳ 
∷ 

SCF 
✓̲ 
✓̳ 
✓̲ 
✓̲ 
✓̳ 
✓̲ 
✓̳ 
✓̲ 
✓̲ 
✓̳ 

pbe, GGA DFT 
✓ 
✓̳ 
✓ 
✓ 
✓̳ 
∷ 
✓ 
✓̳ 
✓ 
✓ 
✓̳ 
∷ 

SCF 
✓̲ 
✓̳ 
✓̲ 
✓̲ 
✓̳ 
✓̲ 
✓̳ 
✓̲ 
✓̲ 
✓̳ 

b3lyp, Hybrid DFT 
✓ 
✓̳ 
✓ 
✓ 
✓̳ 
∷ 
✓ 
✓̳ 
✓ 
✓ 
✓̳ 
∷ 

SCF 
✓̲ 
✓̳ 
✓̲ 
✓̲ 
✓̳ 
✓̲ 
✓̳ 
✓̲ 
✓̲ 
✓̳ 

wb97x, LRC DFT 
✓ 
✓̳ 
✓ 
✓̳ 
✓ 
✓̳ 
✓ 
✓̳ 

SCF 
✓̲ 
✓̳ 
✓̲ 
✓̳ 
✓̲ 
✓̳ 
✓̲ 
✓̳ 

b2plyp, DH DFT[8] 
✓ 
✓ 
✓̳ 
✓̳ 
✓ 
✓ 
✓ 
✓ 
✓̳ 
✓̳ 
✓ 
✓ 

SCF 
✓̲ 
✓̲ 
✓̳ 
✓̳ 
✓̲ 
✓̲ 
✓̲ 
✓̲ 
✓̳ 
✓̳ 
✓̲ 
✓̲ 
