17
21
void dijabL2(int L_irr);
19
23
void BL2_AO(int L_irr);
21
void L2_build(int L_irr, int root_L_irr) {
23
DL2(L_irr, root_L_irr);
25
check_sum("DL2", L_irr);
30
check_sum("FaeL2", L_irr);
35
check_sum("FmiL2", L_irr);
24
void status(char *, FILE *);
26
void L2_build(struct L_Params L_params) {
29
L_irr = L_params.irrep;
32
if(params.print & 2) status("<ij||ab> -> L2", outfile);
35
check_sum("DL2", L_irr);
40
check_sum("WijmnL2", L_irr);
40
check_sum("WijmnL2", L_irr);
42
if(params.print & 2) status("Wmnij -> L2", outfile);
45
check_sum("WefabL2", L_irr);
46
check_sum("WefabL2", L_irr);
48
if(params.print & 2) status("Wabef -> L2", outfile);
50
check_sum("WejabL2", L_irr);
52
check_sum("WejabL2", L_irr);
54
if(params.print & 2) status("Wamef -> L2", outfile);
55
check_sum("WijmbL2", L_irr);
60
check_sum("WmbejL2", L_irr);
65
check_sum("L1FL2", L_irr);
58
check_sum("WijmbL2", L_irr);
60
if(params.print & 2) status("Wmnie -> L2", outfile);
70
check_sum("GaeL2", L_irr);
64
check_sum("GaeL2", L_irr);
75
check_sum("GmiL2", L_irr);
69
check_sum("GmiL2", L_irr);
71
if(params.print & 2) status("G -> L2", outfile);
73
/* For RHF-CCSD response calculations, save all the above
74
contributions to the L2 residual for use in the ccresponse code
75
(specifically, HX1Y1 and LHX1Y1). */
76
if(params.ref == 0 && params.dertype == 3) {
77
dpd_buf4_init(&L2, CC_LAMBDA, L_irr, 0, 5, 0, 5, 0, "New LIjAb");
78
dpd_buf4_copy(&L2, CC_LAMPS, "LHX1Y1 Residual I");
84
check_sum("FaeL2", L_irr);
89
check_sum("FmiL2", L_irr);
91
if(params.print & 2) status("F -> L2", outfile);
95
check_sum("WmbejL2", L_irr);
97
if(params.print & 2) status("Wmbej -> L2", outfile);
99
if(!params.sekino) L1FL2(L_irr); /* should be dropped for Sekino-Bartlett modelIII approach */
101
check_sum("L1FL2", L_irr);
103
if(params.print & 2) status("L1*F -> L2", outfile);
80
107
check_sum("after D2s", L_irr);
109
if(params.print & 2) status("L2 amplitudes", outfile);