void DirectInterActEx1(REAL *pH00, REAL*pS00,REAL*pH01,REAL* pS01, REAL* Sbasis, REAL* aoI1e, REAL* aoI2e, REAL***pppC, INTEGER *nOcc, INTEGER *nBas, INTEGER *nOrb,REAL* pCorr2C)

Now only support C(1) symmetry.

Types are defined here.

HEADER: source/noxci/DAct.h

LIB: libnoxci.a

SOURCE source/noxci/DAct.cpp

REAL* Sbasis

Input, array size nBas*nBas, AO overlap matrix in Rectangle Full Packed format.

REAL* aoI1e

Input, array size $\frac{nBas*(nBas+1)}{2}$ , 1e AO integral symmetry matrix in lower triangle packed format.

REAL* aoI2e

Input, array size $\frac{\frac{nBas*(nBas+1)}{2}(\frac{nBas*(nBas+1)}{2}+1)}{2}$ , 2e AO integral symmetry 4D-matrix in lower triangle-liked packed format.

REAL***pppC

Input, pppC[4][nEle][nBas], occupied MO coefficient. pppC[0]:A Alpha,nele=nOcc[0],pppC[1]:A Beta,nele=nOcc[1],pppC[0]:B Alpha,nele=nOrb[0],pppC[1]:B Beta,nele=nOrb[1]

INTEGER *nOcc

Input, array size 2, alpha/beta occupation numbers == INTEGER *nOrb== Input, array size 2, number of alpha/beta orbitals

INTEGER *nBas

Input, pointer to number of basis

REAL* pCorr2C

Input, coefficient of double excitation. Order :
$\alpha\alpha\to\alpha\alpha$(lower triangle packed format of occ orb & vir orb separately ), $\beta\beta\to\beta\beta$(lower triangle packed format of occ orb & vir orb separately ), $\alpha\alpha\to\beta\beta$(Rectangle Full Packed format).

REAL *pH00

Output, Save $\langle A_0\vert H\vert B_0\rangle$ to the address the pointer points.

REAL *pS00

Output, Save $\langle A_0\vert S\vert B_0\rangle$ to the address the pointer points.

REAL *pH00

Output, Save $\sum\langle A_0\vert H\vert B_1\rangle$ to the address the pointer points.

REAL *pS00

Output, Save $\sum\langle A_0\vert S\vert B_1\rangle$ to the address the pointer points.