-- Hartree-Fock Slater integrals and spin-orbit coupling of Ni2+ in a 3d8 multiplet calculation G, F, x, Atom = CalculateAtomicBasisFunctions(28, "[Ar] 3d8") eV = 27.211386 F2 = Atom.SlaterIntegralsNL["3d 3d 3d 3d"][2]*eV F4 = Atom.SlaterIntegralsNL["3d 3d 3d 3d"][4]*eV zeta = Atom.Zeta["3d"]*eV print(string.format("F2 = %.4f eV, F4 = %.4f eV, zeta = %.4f eV", F2, F4, zeta)) NF = 10 IndexDn = {0, 2, 4, 6, 8} IndexUp = {1, 3, 5, 7, 9} H = NewOperator("U", NF, IndexUp, IndexDn, {0, F2, F4}) + zeta*NewOperator("ldots", NF, IndexUp, IndexDn) psiList = Eigensystem(H, {NF, 0, {"1111111111", 8, 8}}, 45) E0 = psiList[1]*H*psiList[1] for i = 1, #psiList, 1 do local E = psiList[i]*H*psiList[i] if i == 1 or math.abs(E - (psiList[i-1]*H*psiList[i-1])) > 1e-6 then print(string.format("%8.4f eV", E - E0)) end end