[molpro-user] Ambiguity in labelling of matrix elements in MCSCF

Lorenzo Lodi l.lodi at ucl.ac.uk
Mon Mar 19 13:31:32 GMT 2012


I have a question (and possible feature request) concerning the 
labelling of states.
Consider, for example, this state-averaged calculation of 5 low-lying 
states the OH radical:

***, Calculation of the OH radical for MOLPRO 2010
r=1.85
geometry={O; H, O, r}
basis=cc-pVDZ

{CASSCF; OCC, 4,1,1,0; CLOSED,1,0,0,0; FROZEN, 0,0,0,0;
WF, ELEC=9, SYM=2, SPIN=1; LQUANT, 1; WF, ELEC=9, SYM=3, SPIN=1; 
LQUANT,1;           ! Two degenerate components of the ground "X doublet 
PI" state
WF, ELEC=9, SYM=1, SPIN=1;LQUANT, 
0                                                                       
       ! State "A doublet Sigma+"
WF, ELEC=9, SYM=1, SPIN=1; STATE,1; LQUANT, 2; WF, ELEC=9, SYM=4, 
SPIN=1; LQUANT, 2  ! Two degenerate components of the "1 doublet DELTA" 
state
WF, ELEC=9, SYM=4, SPIN=3; STATE,1; LQUANT, 
0                                                            ! The "1 
quadruplet SIGMA-" state
WF, ELEC=9, SYM=2, SPIN=3; LQUANT, 1; WF, ELEC=9, SYM=3, SPIN=3; 
LQUANT,1            ! Two degenerate components of the "1 quadruplet PI" 
state
TRAN, LX, LY, LZ
}

The problem is that, in the output, different states receive exactly the 
same labels. More specifically:
-states "A doublet Sigma+" and "1 doublet Delta_{xx-yy}" are both called 
"1.1"
-states "1 doublet Delta_xy" and "1 quartet Sigma-" are both called "1.4"

This makes it difficult to tell which is which. For example, I get
  !MCSCF trans <1.1|LX|1.3>     0.923014720972i
  !MCSCF trans <1.1|LX|1.3>    -0.152058834585i
  !MCSCF trans <1.4|LX|1.2>    -0.152058834585i
  !MCSCF trans <1.2|LX|1.4>     0.977906055030i

I can only tell from the degeneracies that the "1.1" in the first line 
is "A doublet Sigma+" while in the second line is "1 doublet Delta_{xx-yy}".
Similarly the matrix elements in the last two lines can be identified 
only by looking at the degeneracies.
It would be nice to have in the output also the values of SPIN and 
LQUANT, say like this
  !MCSCF trans <1.1, SPIN=1, LQUANT=0|LX|1.3, SPIN=1, LQUANT=1>     
0.923014720972i

This would make it much easier to grep the result without having to 
scrutinize them... Or maybe I am missing something here?


Lorenzo



More information about the Molpro-user mailing list