[molpro-user] enforcing spherical symmetries of atomic states in MRCI

Gershom Martin gershom at weizmann.ac.il
Fri Sep 11 15:20:20 BST 2009


Dear Molpro MRCI gurus:

When doing atomic MRCI calculations, I am having a devil of a time  
getting, say, the five components of a 1D state to come out with the  
same energy.

For example, in a slightly modified version of the spin-orbit example  
in the manual

geometry={s}
basis={spd,s,vtz}                                 !use uncontracted  
basis

{rhf;occ,3,2,2,,2;wf,16,4,2}                      !rhf for 3P state

{multi                                            !casscf
wf,16,4,2;wf,16,6,2;wf,16,7,2;wf,16,1,0;state,3;  !1D and 1S states
wf,16,4,0;wf,16,6,0;wf,16,7,0}                    !3P states


{ci;wf,16,1,0;save,4010.1;state,3}                !mrci calculations  
for 1D, 1S states
ed=energy(1)                                      !save energy for 1D  
state in variable ed
edqes=energy(2)
es=energy(3)                                      !save energy for 1S  
state in variable es
{ci;wf,16,4,0;save,5004.1}
edbis=energy
{ci;wf,16,6,0;save,5006.1}
edter=energy
{ci;wf,16,7,0;save,5007.1}
edqtr=energy
edt2g=(edbis+edter+edqtr)/3.0
edeg=(ed+edqesl)/2.0
edavg=0.4*edeg+0.6*edt2g
{ci;wf,16,4,2;save,4042.1}                        !mrci calculations  
for 3P states
ep=energy                                         !save energy for 3P  
state in variable ep
{ci;wf,16,6,2;save,4062.1}                        !mrci calculations  
for 3P states
{ci;wf,16,7,2;save,4072.1}                        !mrci calculations  
for 3P states

lsint
{ci;hlsmat,ls,3010.1,3040.1,3060.1,3070.1,3042.1,3062.1,3072.1}


edbis,edter,and edqtr all will get the same value (edt2g) and ed and  
edqes will both be equal to a different value (edeg), and of course  
this will mess up the subsequent spin-orbit matrix calc.

A workaround is of course to "retouch" the diagonal of the SO matrix,  
i.e., follow lsint with

hlsdiag=[ed,ed,es,ed,ed,ed,ep,ep,ep]             !set variable hlsdiag  
to mrci energies

or

hlsdiag=[edavg,edavg,es,edavg,edavg,edavg,ep,ep,ep]

but I was wondering if there is no way to properly symmetrize the wave  
function to begin with?

(I tried "ref", to no avail.)

Many thanks in advance for any ideas!

Jan Martin




More information about the Molpro-user mailing list