Dear PSI4 community,

I have been working recently on a second order electron propagator methods python scripts in psi4. As long as I use symm=c1 everything works fine. However, if I use a higher symmetry things don’t work properly. For example, water molecule with c2v abelian group and sto-3g basis set gives a Ca matrix that is an array of 4 matrices (one for each irreducible representation or irrep). I generated a matrix with this blocks using np.block()

and gives this:

[[ 0.99413 0.23279 0.10317 0.13235 0. 0. 0. ]

[ 0.02656 -0.83358 -0.53681 -0.8843 0. 0. 0. ]

[ 0.00434 -0.12952 0.77666 -0.74235 0. 0. 0. ]

[-0.00844 -0.22444 0.39307 1.12708 0. 0. 0. ]

[ 0. 0. 0. 0. 1. 0. 0. ]

[ 0. 0. 0. 0. 0. 0.60645 0.99043]

[ 0. 0. 0. 0. 0. -0.62936 1.18578]]

Then, I try to transform the integrals using these lines:

aux1 = np.einsum(‘sS,pqrs->pqrS’,Ca,I)

aux2 = np.einsum(‘rR,pqrS->pqRS’,Ca,aux1)

aux1 = np.einsum(‘qQ,pqRS->pQRS’,Ca,aux2)

MO = np.einsum(‘pP,pQRS->PQRS’,Ca,aux1)

I is obtained from mints

I = np.array(mints.ao_eri())

I = I.reshape(nmo, nmo, nmo, nmo)

However, the results are not equal to the ones obtained are not equal to the ones obtained without symmetry.

I also tried using

MO_TEI = mints.mo_eri(wfn.Ca(), wfn.Ca(), wfn.Ca(), wfn.Ca())

but this gives an array of (4,4,4,4) inside a 1 dimension tuple instead of a (7,7,7,7)

array

Best regards and thank you for your help!

Manuel Diaz-Tinoco