Hello all,
Context
I am doing a stabilization calculation for the H2(-) anion, that is, there is a loop repeating CI for neutral H2 followed by FCI for H2(-). Typically 5 to 8 states negative ion states are requested, and the loop scales the set of diffuse basis functions centered at the origin. Then one can plot the electron binding energies as a function of the parameter scaling the basis set. And, the whole procedure is repeated at different bond lengths.
Issue
At certain bond lengths and for certain scaling parameters, the Davidson algorithm produces nonphysical energies. For example, the lowest three roots converge, but then a state below these roots appears and starts to diverge to negative infinity. [No so sure whether “intruder” is exactly the right term, but it feels right enough.] The CI matrix seems reasonably health; fully diagonalized works [RSP option] at least for this small basis set, and the basis set itself is not too close to near-linear-denpendency.
Code
With my psi4 version [1.9.1 on Linux], the follwoing input works fine for R=1.40 Angs, but produces artificial “intruders” for R=1.50 Angs.
Blockquote
molecule h2 {
-1 2
H 0.0 0.0 -0.75
H 0.0 0.0 0.75
Gh(He) 0.0 0.0 0.0
symmetry d2h
}
set {
reference rohf
scf_type PK
basis aug-cc-pVDZ
docc [1,0,0,0, 0,0,0,0]
socc [0,0,0,0, 0,1,0,0]
CALC_S_SQUARED True
num_roots 5
R_convergence 1e-7
CI_MaxIter 120
Diag_Method SEM
}
basis {
assign aug-cc-pVDZ
assign He DC5p
[DC5p]
spherical
He 0
P 1 1.00
0.00300000 1.0
P 1 1.00
0.00150000 1.0
P 1 1.00
0.00075000 1.0
P 1 1.00
0.00037500 1.0
P 1 1.00
0.00018750 1.0
}
thisenergy = energy(‘fci’)
Blockquote