I am interested in seeing qualitative differences in energies of electronic states of small molecules.

For example, I’d like to see if I can use Psi4 to run calculations to distinguish the ^1 \Sigma^+, ^3 \Sigma^+, ^3 \Pi^{+/-}, and ^1 \Pi^{+/-} states at different interatomic distances. I don’t care so much about quantitative accuracy, so small basis sets with a single reference method is fine (I suspect some will be spin contaminated, but maybe it’ll be less so with a KS-DFT method). I expect energies to go as:

^1 \Sigma^+ << ^3 \Pi^{+/-} < ^1 \Pi^{+/-} << ^3 \Sigma^+,

It seems that I’d want to use molecular symmetry and make specifications to the DOCC and SOCC arrays. To make things easy, I thought I’d use the C2v point group for FH and recognize that in bonding FH, F has the electronic configuration of 1s2 2s2 2px2 2py2 2pz1, and H has 1s1.

When I run a default singlet RHF calculation and don’t specify anything about DOCC or SOCC, the default calculation prints out DOCC = [3, 0, 1, 1], which makes sense for only doubly occupied orbitals. Psi4 found the ^1 \Sigma^+ state.

When I run a default triplet UHF calculation and don’t specify anything about DOCC or SOCC, the default calculation prints out DOCC = [3, 0, 0, 1]; SOCC = [1,0,1,0], which makes sense for FH with singly occupied A1 (H 1s1) and B1 (F 2px1). My understanding of B1 mapping to 2px might be wrong, so I reran the calculation with DOCC = [3, 0, 1, 0]; SOCC = [1,0,0,1] and got a nearly identical energy, so either way I’m pretty sure Psi4 found the ^3 \Pi^{+/-} state here.

When I run a triplet calculation with DOCC = [2, 0, 1, 1] and SOCC = [1,1,0,0], I think I should be requesting the ^3 \Sigma^+ state with singly occupied A1 (H 1s1) and A2 (F 2pz1). This energy is significantly larger than either calculation above, so I’m pretty confident Psi4 found the ^3 \Sigma^+ state here. (I also ran DOCC = [2, 0, 1, 1], SOCC = [2,0,0,0], that was slightly higher in energy than the ^3 \Pi^{+/-} state, I think that corresponds to a detached electron Rydberg state, which makes sense since experimentally the ^3 \Sigma^+ state isn’t observed.)

When I try to run an UHF singlet calculation with DOCC = [3, 0, 0, 1]; SOCC = [1,0,1,0], the program crashes and prints: “Fatal Error: Got 6 alpha electrons, expected 5.”, implying that Psi4 thinks that SOCC entries are always interpreted as alpha spins. I see in the documentation that there is a keyword to use a broken symmetry wavefunction, so I try using C1 symmetry with “guess_mix true”, but this ends up converging to the same energy as the ^1 \Sigma^+ state, while I want a ^1 \Pi^{+/-} state that should be between the ^3 \Pi^{+/-} state and the ^3 \Sigma^+ state.

Are there other tricks to trap this state somehow? Thanks in advance!

–john