4
namespace psi{ namespace psimrcc{
6
void MP2_CCSD::add_matrices()
9
blas->add_Matrix("<[oo]:[oo]>");
10
blas->add_Matrix("<[oo]|[oo]>");
13
blas->add_Matrix("([oo]:[ov])");
14
blas->add_Matrix("([oo]|[ov])");
15
blas->add_Matrix("<[o]:[voo]>");
16
blas->add_Matrix("<[o]|[voo]>");
17
blas->add_Matrix("<[ooo]|[v]>");
18
blas->add_Matrix("<[o]:[oov]>");
19
blas->add_Matrix("<[o]|[oov]>");
20
blas->add_Matrix("<[o]|[ovo]>");
23
blas->add_Matrix("<[oo]:[vv]>");
24
blas->add_Matrix("<[oo]|[vv]>");
25
blas->add_Matrix("<[v]:[voo]>");
26
blas->add_Matrix("<[v]|[voo]>");
27
blas->add_Matrix("<[o]:[ovv]>");
28
blas->add_Matrix("<[o]|[ovv]>");
29
blas->add_Matrix("([ov]:[ov])");
30
blas->add_Matrix("([ov]|[ov])");
31
blas->add_Matrix("([ov]|[vo])");
32
blas->add_Matrix("<[ov]|[ov]>");
33
blas->add_Matrix("<[ov]|[vo]>"); // used only once
36
blas->add_Matrix("([ov]:[vv])");
37
blas->add_Matrix("([ov]|[vv])");
38
blas->add_Matrix("<[v]:[ovv]>");
39
blas->add_Matrix("<[v]|[ovv]>");
40
blas->add_Matrix("<[vo]|[vv]>");
41
blas->add_Matrix("([vvo]|[v])");
42
blas->add_Matrix("<[ovv]:[v]>");
45
blas->add_Matrix("fock[o][o]{u}");
46
blas->add_Matrix("fock[o][v]{u}");
47
blas->add_Matrix("fock[v][v]{u}");
48
blas->add_Matrix("fock[O][O]{u}");
49
blas->add_Matrix("fock[O][V]{u}");
50
blas->add_Matrix("fock[V][V]{u}");
52
blas->add_Matrix("fock[v][o]{u}");
53
blas->add_Matrix("fock[V][O]{u}");
55
blas->add_Matrix("fock[oo]{u}");
56
blas->add_Matrix("fock[ov]{u}");
57
blas->add_Matrix("fock[vv]{u}");
58
blas->add_Matrix("fock[OO]{u}");
59
blas->add_Matrix("fock[OV]{u}");
60
blas->add_Matrix("fock[VV]{u}");
62
blas->add_Matrix("fock[vo]{u}");
63
blas->add_Matrix("fock[VO]{u}");
66
blas->add_Matrix("d1[o][v]{u}");
67
blas->add_Matrix("d1[O][V]{u}");
68
blas->add_Matrix("d2[oo][vv]{u}");
69
blas->add_Matrix("d2[oO][vV]{u}");
70
blas->add_Matrix("d2[OO][VV]{u}");
72
// Shifted denominators
73
blas->add_Matrix("d'1[o][v]{u}");
74
blas->add_Matrix("d'1[O][V]{u}");
75
blas->add_Matrix("d'2[oo][vv]{u}");
76
blas->add_Matrix("d'2[oO][vV]{u}");
77
blas->add_Matrix("d'2[OO][VV]{u}");
80
blas->add_Matrix("t1[ov]{u}");
81
blas->add_Matrix("t1[OV]{u}");
82
blas->add_Matrix("t1[o][v]{u}");
83
blas->add_Matrix("t1[O][V]{u}");
85
blas->add_Matrix("t1_delta[o][v]{u}");
87
blas->add_Matrix("t2[oO][vV]{u}");
88
blas->add_Matrix("t2[oo][vv]{u}");
89
blas->add_Matrix("t2[OO][VV]{u}");
91
blas->add_Matrix("t2[ov][ov]{u}");
92
blas->add_Matrix("t2[ov][OV]{u}");
94
blas->add_Matrix("t2[o][ovv]{u}");
95
blas->add_Matrix("t2[o][OvV]{u}");
96
blas->add_Matrix("t2[O][oVv]{u}");
97
blas->add_Matrix("t2[O][OVV]{u}");
99
blas->add_Matrix("t2[v][voo]{u}");
100
blas->add_Matrix("t2[v][VoO]{u}");
101
blas->add_Matrix("t2[V][vOo]{u}");
102
blas->add_Matrix("t2[V][VOO]{u}");
104
blas->add_Matrix("tau[oo][vv]{u}");
105
blas->add_Matrix("tau[oO][vV]{u}");
106
blas->add_Matrix("tau[OO][VV]{u}");
108
blas->add_Matrix("t2_delta[oO][vV]{u}");
110
blas->add_Matrix("tau2[v][voo]{u}");
111
blas->add_Matrix("tau2[v][VoO]{u}");
112
blas->add_Matrix("tau2[V][VOO]{u}");
113
blas->add_Matrix("tau2[V][vOo]{u}");
115
blas->add_Matrix("tau2[o][ovv]{u}");
116
blas->add_Matrix("tau2[o][OvV]{u}");
117
blas->add_Matrix("tau2[O][oVv]{u}");
118
blas->add_Matrix("tau2[O][OVV]{u}");
120
blas->add_Matrix("W_mNiJ[oO][oO]{u}");
122
// Similarity transformed Hamiltonian
123
blas->add_Matrix("t1_eqns[a][a]{u}");
124
blas->add_Matrix("t1_eqns[o][v]{u}");
125
blas->add_Matrix("t1_eqns[O][V]{u}");
126
blas->add_Matrix("t2_eqns[oo][vv]{u}");
127
blas->add_Matrix("t2_eqns[oO][vV]{u}");
128
blas->add_Matrix("t2_eqns[OO][VV]{u}");
131
blas->add_Matrix("F_ae[v][v]{u}");
132
blas->add_Matrix("F_AE[V][V]{u}");
133
blas->add_Matrix("F_mi[o][o]{u}");
134
blas->add_Matrix("F_MI[O][O]{u}");
135
blas->add_Matrix("F_me[o][v]{u}");
136
blas->add_Matrix("F_ME[O][V]{u}");
137
blas->add_Matrix("F_me[ov]{u}");
138
blas->add_Matrix("F_ME[OV]{u}");
139
blas->add_Matrix("F'_mi[o][o]{u}");
141
// MRPT2 Intermediates
142
blas->add_Matrix("ERef{u}");
143
blas->add_Matrix("EPT2{u}");
144
blas->add_Matrix("Eaa{u}");
145
blas->add_Matrix("Ebb{u}");
146
blas->add_Matrix("Eaaaa{u}");
147
blas->add_Matrix("Eabab{u}");
148
blas->add_Matrix("Ebbbb{u}");
151
blas->add_Matrix("<[aa]|[aa]>");
152
blas->add_Matrix("<[aa]:[aa]>");
155
blas->add_Matrix("<[o]|[aaa]>");
156
blas->add_Matrix("<[o]:[aaa]>");
157
blas->add_Matrix("<[oa]|[aa]>");
160
blas->add_Matrix("<[v]|[aaa]>");
161
blas->add_Matrix("<[v]:[aaa]>");
162
blas->add_Matrix("<[aa]|[va]>");
165
blas->add_Matrix("<[oo]|[aa]>");
166
blas->add_Matrix("<[oo]:[aa]>");
167
blas->add_Matrix("<[o]|[aoa]>");
168
blas->add_Matrix("<[o]|[aao]>");
171
blas->add_Matrix("<[aa]|[ov]>");
172
blas->add_Matrix("<[aa]|[vo]>");
173
blas->add_Matrix("<[ov]|[aa]>");
174
blas->add_Matrix("([ov]|[aa])");
175
blas->add_Matrix("([ov]:[aa])");
176
blas->add_Matrix("<[oa]|[va]>");
177
blas->add_Matrix("<[oa]:[va]>");
178
blas->add_Matrix("<[oa]|[av]>");
179
blas->add_Matrix("<[v]|[oav]>");
180
blas->add_Matrix("<[v]|[oaa]>");
181
blas->add_Matrix("<[o]|[vaa]>");
182
blas->add_Matrix("<[ov]|[av]>");
186
blas->add_Matrix("<[aa]|[vv]>");
187
blas->add_Matrix("<[aa]:[vv]>");
188
blas->add_Matrix("<[v]|[ava]>");
189
blas->add_Matrix("<[v]|[aav]>");
190
blas->add_Matrix("<[ov]:[va]>");
193
blas->add_Matrix("<[a]:[voo]>");
194
blas->add_Matrix("<[a]|[voo]>");
195
blas->add_Matrix("<[o]|[oav]>");
196
blas->add_Matrix("<[o]:[oav]>");
197
blas->add_Matrix("<[o]|[ova]>");
198
blas->add_Matrix("<[oav]:[v]>");
199
blas->add_Matrix("<[ov]|[oa]>");
200
blas->add_Matrix("([ov]|[ao])");
201
blas->add_Matrix("<[oa]:[vo]>");
202
blas->add_Matrix("<[oa]|[vo]>");
203
blas->add_Matrix("<[oa]|[ov]>");
206
blas->add_Matrix("<[a]:[ovv]>");
207
blas->add_Matrix("<[a]|[ovv]>");
208
blas->add_Matrix("<[ao]|[vv]>");
209
blas->add_Matrix("([avo]|[v])");
210
blas->add_Matrix("<[va]|[vv]>");
211
blas->add_Matrix("([ov]|[va])");
212
blas->add_Matrix("<[ov]|[va]>");
214
// Effective Hamiltonian in the active space
215
blas->add_Matrix("Hia[a][a]{u}");
216
blas->add_Matrix("HIA[A][A]{u}");
217
blas->add_Matrix("Hijab[aa][aa]{u}");
218
blas->add_Matrix("HiJaB[aA][aA]{u}");
219
blas->add_Matrix("HIJAB[AA][AA]{u}");
221
blas->add_Matrix("HiJaB[oA][aA]{u}");
222
blas->add_Matrix("HiJaB[aO][aA]{u}");
223
blas->add_Matrix("HiJaB[aA][vA]{u}");
224
blas->add_Matrix("HiJaB[aA][aV]{u}");
226
blas->add_Matrix("t1_ov[a][v]{u}");
227
blas->add_Matrix("t1_OV[A][V]{u}");
228
blas->add_Matrix("t1_ov[o][a]{u}");
229
blas->add_Matrix("t1_OV[O][A]{u}");
232
blas->add_Matrix("t2_oovv[ao][av]{u}");
233
blas->add_Matrix("t2_oOvV[aO][aV]{u}");
234
blas->add_Matrix("t2_oOvV[oA][vA]{u}");
235
blas->add_Matrix("t2_OOVV[AO][AV]{u}");
236
blas->add_Matrix("t2_oOvV[oA][aV]{u}");
237
blas->add_Matrix("t2_oOvV[aO][vA]{u}");
239
blas->add_Matrix("t2_oovv[a][ovv]{u}");
240
blas->add_Matrix("t2_oOvV[a][OvV]{u}");
241
blas->add_Matrix("t2_OoVv[A][oVv]{u}");
242
blas->add_Matrix("t2_OOVV[A][OVV]{u}");
243
blas->add_Matrix("t2_oovv[oo][aa]{u}");
244
blas->add_Matrix("t2_oOvV[oO][aA]{u}");
245
blas->add_Matrix("t2_OOVV[OO][AA]{u}");
246
blas->add_Matrix("t2_oovv[aa][vv]{u}");
247
blas->add_Matrix("t2_oOvV[aA][vV]{u}");
248
blas->add_Matrix("t2_OOVV[AA][VV]{u}");
250
blas->add_Matrix("t2_ovov[aa][ov]{u}");
251
blas->add_Matrix("t2_ovov[oa][ov]{u}");
252
blas->add_Matrix("t2_ovov[av][ov]{u}");
254
blas->add_Matrix("t2_ovOV[aa][OV]{u}");
255
blas->add_Matrix("t2_ovOV[oa][OV]{u}");
256
blas->add_Matrix("t2_ovOV[ov][AA]{u}");
257
blas->add_Matrix("t2_ovOV[av][OV]{u}");
259
blas->add_Matrix("t2_oVOv[aA][Ov]{u}");
260
blas->add_Matrix("t2_oVOv[oV][Aa]{u}");
261
blas->add_Matrix("t2_oVOv[oA][Ov]{u}");
262
blas->add_Matrix("t2_oVOv[oV][Av]{u}");
263
blas->add_Matrix("t2_OVOV[AA][OV]{u}");
265
blas->add_Matrix("t2_oovv[ao][vv]{u}");
267
blas->add_Matrix("t2_vvoo[a][voo]{u}");
268
blas->add_Matrix("t2_vVoO[a][VoO]{u}");
269
blas->add_Matrix("t2_VvOo[A][vOo]{u}");
270
blas->add_Matrix("t2_VVOO[A][VOO]{u}");
272
blas->add_Matrix("t2_vvoo[v][aaa]{u}");
273
blas->add_Matrix("t2_vVoO[v][AaA]{u}");
274
blas->add_Matrix("t2_VvOo[V][aAa]{u}");
275
blas->add_Matrix("t2_VVOO[V][AAA]{u}");
277
blas->add_Matrix("t2_oovv[o][aaa]{u}");
278
blas->add_Matrix("t2_oOvV[o][AaA]{u}");
279
blas->add_Matrix("t2_OoVv[O][aAa]{u}");
280
blas->add_Matrix("t2_OOVV[O][AAA]{u}");
283
blas->add_Matrix("t2_OoVv[O][oAa]{u}");
286
blas->add_Matrix("t2_vVoO[v][AoA]{u}");
287
blas->add_Matrix("t2_VvOo[V][aAo]{u}");
288
blas->add_Matrix("t2_VvOo[V][vAa]{u}");
290
blas->add_Matrix("fock[o][a]{u}");
291
blas->add_Matrix("fock[O][A]{u}");
292
blas->add_Matrix("fock[a][a]{u}");
293
blas->add_Matrix("fock[a][v]{u}");
294
blas->add_Matrix("fock[A][V]{u}");
295
blas->add_Matrix("fock[A][A]{u}");
296
blas->add_Matrix("fock[aa]{u}");
297
blas->add_Matrix("fock[AA]{u}");
299
blas->add_Matrix("F_ae[a][v]{u}");
300
blas->add_Matrix("F_AE[A][V]{u}");
301
blas->add_Matrix("F'_ae[a][v]{u}");
302
blas->add_Matrix("F'_AE[A][V]{u}");
304
// Off-diagonal Fock matrices
305
blas->add_Matrix("offdiagonal_F[v][v]{u}");
306
blas->add_Matrix("offdiagonal_F[o][o]{u}");
308
blas->add_Matrix("F_ae[a][v]{u}");
309
blas->add_Matrix("F_AE[A][V]{u}");
310
blas->add_Matrix("F'_ae[v][v]{u}");
311
blas->add_Matrix("F'_ae[a][v]{u}");
312
blas->add_Matrix("F'_AE[A][V]{u}");
313
blas->add_Matrix("F'_mi[o][a]{u}");
314
blas->add_Matrix("F'_MI[O][A]{u}");
316
blas->add_Matrix("tau_oOvV[oO][aA]{u}");
317
blas->add_Matrix("tau_oOvV[aA][vV]{u}");
318
blas->add_Matrix("tau_oOVv[aA][Vv]{u}");
319
blas->add_Matrix("tau_oOvV[oA][vV]{u}");
320
blas->add_Matrix("tau_oOvV[oO][vA]{u}");
321
blas->add_Matrix("tau_oOVv[oA][Vv]{u}");
323
blas->add_Matrix("tau3_ovov[aa][ov]{u}");
324
blas->add_Matrix("tau3_ovov[oa][ov]{u}");
325
blas->add_Matrix("tau3_ovov[av][ov]{u}");
326
blas->add_Matrix("tau3_oVvO[aA][vO]{u}");
327
blas->add_Matrix("tau3_oVvO[oA][vO]{u}");
328
blas->add_Matrix("tau3_oVvO[aV][vO]{u}");
330
blas->add_Matrix("t2_oovv[ao][va]{u}");
331
blas->add_Matrix("t2_oovv[oo][va]{u}");
333
blas->add_Matrix("t2_oOvV[aO][vA]{u}");
334
blas->add_Matrix("t2_oOvV[oO][vA]{u}");
335
blas->add_Matrix("t2_oOvV[o][AvA]{u}");
336
blas->add_Matrix("t2_oOvV[aO][vV]{u}");
338
blas->add_Matrix("t2_OoVv[O][aAv]{u}");
341
blas->add_Matrix("W_mNiJ[oO][aA]{u}");
342
blas->add_Matrix("W_mNiJ[oO][oA]{u}");
344
blas->add_Matrix("W_jbme[aa][ov]{u}");
345
blas->add_Matrix("W_jbme[oa][ov]{u}");
346
blas->add_Matrix("W_jbme[av][ov]{u}");
348
blas->add_Matrix("W_jbME[aa][OV]{u}");
349
blas->add_Matrix("W_jbME[oa][OV]{u}");
350
blas->add_Matrix("W_jbME[av][OV]{u}");
352
blas->add_Matrix("W_jBmE[aA][oV]{u}");
353
blas->add_Matrix("W_jBmE[oA][oV]{u}");
354
blas->add_Matrix("W_jBmE[aV][oV]{u}");
356
blas->add_Matrix("Z_iJaM[aAa][O]{u}");
357
blas->add_Matrix("Z_iJAm[aAA][o]{u}");
358
blas->add_Matrix("Z_iJaM[oAa][O]{u}");
359
blas->add_Matrix("Z_iJAm[oAA][o]{u}");
360
blas->add_Matrix("Z_iJaM[aAv][O]{u}");
362
blas->add_Matrix("t1t1_iame[aa][ov]{u}");
363
blas->add_Matrix("t1t1_iame[oa][ov]{u}");
364
blas->add_Matrix("t1t1_iame[av][ov]{u}");
365
blas->add_Matrix("t1t1_IAME[AA][OV]{u}");
366
blas->add_Matrix("t1t1_iAMe[aA][Ov]{u}");
367
blas->add_Matrix("t1t1_iAMe[oV][Aa]{u}");
368
blas->add_Matrix("t1t1_iAMe[oA][Ov]{u}");
369
blas->add_Matrix("t1t1_iAMe[oV][Av]{u}");
373
}} /* End Namespaces */