~ubuntu-branches/ubuntu/quantal/psicode/quantal

« back to all changes in this revision

Viewing changes to src/bin/ccresponse/LHX1Y2.c

  • Committer: Bazaar Package Importer
  • Author(s): Michael Banck
  • Date: 2006-09-10 14:01:33 UTC
  • Revision ID: james.westby@ubuntu.com-20060910140133-ib2j86trekykfsfv
Tags: upstream-3.2.3
ImportĀ upstreamĀ versionĀ 3.2.3

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
#include <stdio.h>
 
2
#include <string.h>
 
3
#include <libdpd/dpd.h>
 
4
#define EXTERN
 
5
#include "globals.h"
 
6
 
 
7
double LHX1Y2(char *pert_x, char *cart_x, int irrep_x, double omega_x, 
 
8
              char *pert_y, char *cart_y, int irrep_y, double omega_y)
 
9
{
 
10
  dpdfile2 z, z1, X1, l1, F;
 
11
  dpdbuf4 Z, Z1, Z2, I, Y2, L2, W;
 
12
  char lbl[32];
 
13
  double polar;
 
14
 
 
15
  sprintf(lbl, "Z_%s_%1s_MI", pert_y, cart_y);
 
16
  dpd_file2_init(&z1, CC_TMP0, irrep_y, 0, 0, lbl);
 
17
  dpd_buf4_init(&I, CC_DINTS, 0, 0, 5, 0, 5, 0, "D 2<ij|ab> - <ij|ba>");
 
18
  sprintf(lbl, "X_%s_%1s_IjAb (%5.3f)", pert_y, cart_y, omega_y);
 
19
  dpd_buf4_init(&Y2, CC_LR, irrep_y, 0, 5, 0, 5, 0, lbl);
 
20
  dpd_contract442(&I, &Y2, &z1, 0, 0, 1, 0);
 
21
  dpd_buf4_close(&Y2);
 
22
  dpd_buf4_close(&I);
 
23
 
 
24
  dpd_file2_init(&z, CC_TMP0, 0, 0, 1, "Z(I,A) Final");
 
25
  sprintf(lbl, "X_%s_%1s_IA (%5.3f)", pert_x, cart_x, omega_x);
 
26
  dpd_file2_init(&X1, CC_OEI, irrep_x, 0, 1, lbl);
 
27
  dpd_contract222(&z1, &X1, &z, 1, 1, -1, 0);
 
28
  dpd_file2_close(&X1);
 
29
  dpd_file2_close(&z1);
 
30
  dpd_file2_close(&z);
 
31
 
 
32
  sprintf(lbl, "Z_%s_%1s_AE", pert_y, cart_y);
 
33
  dpd_file2_init(&z1, CC_TMP0, irrep_y, 1, 1, lbl);
 
34
  dpd_buf4_init(&I, CC_DINTS, 0, 0, 5, 0, 5, 0, "D 2<ij|ab> - <ij|ba>");
 
35
  sprintf(lbl, "X_%s_%1s_IjAb (%5.3f)", pert_y, cart_y, omega_y);
 
36
  dpd_buf4_init(&Y2, CC_LR, irrep_y, 0, 5, 0, 5, 0, lbl);
 
37
  dpd_contract442(&Y2, &I, &z1, 3, 3, -1, 0);
 
38
  dpd_buf4_close(&Y2);
 
39
  dpd_buf4_close(&I);
 
40
 
 
41
  dpd_file2_init(&z, CC_TMP0, 0, 0, 1, "Z(I,A) Final");
 
42
  sprintf(lbl, "X_%s_%1s_IA (%5.3f)", pert_x, cart_x, omega_x);
 
43
  dpd_file2_init(&X1, CC_OEI, irrep_x, 0, 1, lbl);
 
44
  dpd_contract222(&X1, &z1, &z, 0, 0, 1, 1);
 
45
  dpd_file2_close(&X1);
 
46
  dpd_file2_close(&z1);
 
47
  dpd_file2_close(&z);
 
48
 
 
49
 
 
50
  sprintf(lbl, "Z_%s_%1s_ME", pert_x, cart_x);
 
51
  dpd_file2_init(&z1, CC_TMP0, irrep_x, 0, 1, lbl);
 
52
  sprintf(lbl, "X_%s_%1s_IA (%5.3f)", pert_x, cart_x, omega_x);
 
53
  dpd_file2_init(&X1, CC_OEI, irrep_x, 0, 1, lbl);
 
54
  dpd_buf4_init(&I, CC_DINTS, 0, 0, 5, 0, 5, 0, "D 2<ij|ab> - <ij|ba>");
 
55
  dpd_dot24(&X1, &I, &z1, 0, 0, 1, 0);
 
56
  dpd_buf4_close(&I);
 
57
  dpd_file2_close(&X1);
 
58
 
 
59
  dpd_file2_init(&z, CC_TMP0, 0, 0, 1, "Z(I,A) Final");
 
60
  sprintf(lbl, "X_%s_%1s_(2IjAb-IjbA) (%5.3f)", pert_y, cart_y, omega_y);
 
61
  dpd_buf4_init(&Y2, CC_LR, irrep_y, 0, 5, 0, 5, 0, lbl);
 
62
  dpd_dot24(&z1, &Y2, &z, 0, 0, 1, 1);
 
63
  dpd_buf4_close(&Y2);
 
64
  dpd_file2_close(&z1);
 
65
  dpd_file2_close(&z);
 
66
 
 
67
  dpd_file2_init(&z, CC_TMP0, 0, 0, 1, "Z(I,A) Final");
 
68
  dpd_file2_init(&l1, CC_OEI, 0, 0, 1, "LIA");
 
69
  polar = 2.0 * dpd_file2_dot(&z, &l1);
 
70
  dpd_file2_close(&l1);
 
71
  dpd_file2_close(&z);
 
72
 
 
73
  /*  fprintf(outfile, "L(1)HX1Y2 = %20.12f\n", polar); */
 
74
 
 
75
 
 
76
  dpd_buf4_init(&Z, CC_TMP0, 0, 0, 5, 0, 5, 0, "Z(Ij,Ab) Final");
 
77
  dpd_buf4_scm(&Z, 0);
 
78
 
 
79
  sprintf(lbl, "Z_%s_%1s_MI", pert_x, cart_x);
 
80
  dpd_file2_init(&z1, CC_TMP0, irrep_x, 0, 0, lbl);
 
81
  sprintf(lbl, "X_%s_%1s_IA (%5.3f)", pert_x, cart_x, omega_x);
 
82
  dpd_file2_init(&X1, CC_OEI, irrep_x, 0, 1, lbl);
 
83
  dpd_file2_init(&F, CC_OEI, 0, 0, 1, "FME");
 
84
  dpd_contract222(&F, &X1, &z1, 0, 0, 1, 0);
 
85
  dpd_file2_close(&F);
 
86
  dpd_file2_close(&X1);
 
87
 
 
88
  dpd_buf4_init(&Z1, CC_TMP1, 0, 0, 5, 0, 5, 0, "Z(Ij,Ab)");
 
89
  sprintf(lbl, "X_%s_%1s_IjAb (%5.3f)", pert_y, cart_y, omega_y);
 
90
  dpd_buf4_init(&Y2, CC_LR, irrep_y, 0, 5, 0, 5, 0, lbl);
 
91
  dpd_contract244(&z1, &Y2, &Z1, 0, 0, 0, 1, 0);
 
92
  dpd_buf4_close(&Y2);
 
93
  dpd_file2_close(&z1);
 
94
  dpd_buf4_axpy(&Z1, &Z, -1);
 
95
  dpd_buf4_sort(&Z1, CC_TMP1, qpsr, 0, 5, "Z(jI,bA)");
 
96
  dpd_buf4_close(&Z1);
 
97
  dpd_buf4_init(&Z1, CC_TMP1, 0, 0, 5, 0, 5, 0, "Z(jI,bA)");
 
98
  dpd_buf4_axpy(&Z1, &Z, -1);
 
99
  dpd_buf4_close(&Z1);
 
100
 
 
101
  dpd_buf4_close(&Z);
 
102
 
 
103
 
 
104
  dpd_buf4_init(&Z, CC_TMP0, 0, 0, 5, 0, 5, 0, "Z(Ij,Ab) Final");
 
105
 
 
106
  sprintf(lbl, "Z_%s_%1s_AE", pert_x, cart_x);
 
107
  dpd_file2_init(&z1, CC_TMP0, irrep_x, 1, 1, lbl);
 
108
  sprintf(lbl, "X_%s_%1s_IA (%5.3f)", pert_x, cart_x, omega_x);
 
109
  dpd_file2_init(&X1, CC_OEI, irrep_x, 0, 1, lbl);
 
110
  dpd_file2_init(&F, CC_OEI, 0, 0, 1, "FME");
 
111
  dpd_contract222(&X1, &F, &z1, 1, 1, -1, 0);
 
112
  dpd_file2_close(&F);
 
113
  dpd_file2_close(&X1);
 
114
 
 
115
  dpd_buf4_init(&Z1, CC_TMP1, 0, 0, 5, 0, 5, 0, "Z(Ij,Ab)");
 
116
  sprintf(lbl, "X_%s_%1s_IjAb (%5.3f)", pert_y, cart_y, omega_y);
 
117
  dpd_buf4_init(&Y2, CC_LR, irrep_y, 0, 5, 0, 5, 0, lbl);
 
118
  dpd_contract424(&Y2, &z1, &Z1, 3, 1, 0, 1, 0);
 
119
  dpd_buf4_close(&Y2);
 
120
  dpd_file2_close(&z1);
 
121
  dpd_buf4_axpy(&Z1, &Z, 1);
 
122
  dpd_buf4_sort(&Z1, CC_TMP1, qpsr, 0, 5, "Z(jI,bA)");
 
123
  dpd_buf4_close(&Z1);
 
124
  dpd_buf4_init(&Z1, CC_TMP1, 0, 0, 5, 0, 5, 0, "Z(jI,bA)");
 
125
  dpd_buf4_axpy(&Z1, &Z, 1);
 
126
  dpd_buf4_close(&Z1);
 
127
 
 
128
  dpd_buf4_close(&Z);
 
129
 
 
130
  sprintf(lbl, "X_%s_%1s_IA (%5.3f)", pert_x, cart_x, omega_x);
 
131
  dpd_file2_init(&X1, CC_OEI, irrep_x, 0, 1, lbl);
 
132
 
 
133
  sprintf(lbl, "Z_%s_%1s_MbEj (Mb,jE)", pert_x, cart_x);
 
134
  dpd_buf4_init(&Z1, CC_TMP0, irrep_x, 10, 10, 10, 10, 0, lbl);
 
135
  dpd_buf4_init(&W, CC_HBAR, 0, 10, 5, 10, 5, 0, "WAmEf");
 
136
  dpd_contract244(&X1, &W, &Z1, 1, 2, 1, 1, 0);
 
137
  dpd_buf4_close(&W);
 
138
  sprintf(lbl, "Z_%s_%1s_MbEj (ME,jb)", pert_x, cart_x);
 
139
  dpd_buf4_sort(&Z1, CC_TMP0, psrq, 10, 10, lbl);
 
140
  dpd_buf4_close(&Z1);
 
141
 
 
142
  sprintf(lbl, "Z_%s_%1s_WMbEj (bM,Ej)", pert_x, cart_x);
 
143
  dpd_buf4_init(&Z1, CC_TMP0, irrep_x, 11, 11, 11, 11, 0, lbl);
 
144
  dpd_buf4_init(&W, CC_HBAR, 0, 0, 11, 0, 11, 0, "WMnIe");
 
145
  dpd_contract244(&X1, &W, &Z1, 0, 0, 0, -1, 0);
 
146
  dpd_buf4_close(&W);
 
147
  sprintf(lbl, "Z_%s_%1s_MbEj (ME,jb)", pert_x, cart_x);
 
148
  dpd_buf4_sort_axpy(&Z1, CC_TMP0, qrsp, 10, 10, lbl, 1);
 
149
  dpd_buf4_close(&Z1);
 
150
 
 
151
  sprintf(lbl, "Z_%s_%1s_MbeJ (Mb,eJ)", pert_x, cart_x);
 
152
  dpd_buf4_init(&Z1, CC_TMP0, irrep_x, 10, 11, 10, 11, 0, lbl);
 
153
  dpd_buf4_init(&W, CC_HBAR, 0, 0, 11, 0, 11, 0, "WMnIe");
 
154
  dpd_contract424(&W, &X1, &Z1, 1, 0, 1, 1, 0);
 
155
  dpd_buf4_close(&W);
 
156
  dpd_buf4_init(&W, CC_HBAR, 0, 10, 5, 10, 5, 0, "WAmEf");
 
157
  dpd_contract424(&W, &X1, &Z1, 3, 1, 0, -1, 1);
 
158
  dpd_buf4_close(&W);
 
159
  sprintf(lbl, "Z_%s_%1s_MbeJ (Me,Jb)", pert_x, cart_x);
 
160
  dpd_buf4_sort(&Z1, CC_TMP0, prsq, 10, 10, lbl);
 
161
  dpd_buf4_close(&Z1);
 
162
 
 
163
  dpd_file2_close(&X1);
 
164
 
 
165
  sprintf(lbl, "Z_%s_%1s_MbEj (ME,jb)", pert_x, cart_x);
 
166
  dpd_buf4_init(&Z1, CC_TMP0, irrep_x, 10, 10, 10, 10, 0, lbl);
 
167
  sprintf(lbl, "Z_%s_%1s_(2MbEj+MbeJ) (ME,JB)", pert_x, cart_x);
 
168
  dpd_buf4_scmcopy(&Z1, CC_TMP0, lbl, 2);
 
169
  dpd_buf4_close(&Z1);
 
170
  sprintf(lbl, "Z_%s_%1s_MbeJ (Me,Jb)", pert_x, cart_x);
 
171
  dpd_buf4_init(&Z1, CC_TMP0, irrep_x, 10, 10, 10, 10, 0, lbl);
 
172
  sprintf(lbl, "Z_%s_%1s_(2MbEj+MbeJ) (ME,JB)", pert_x, cart_x);
 
173
  dpd_buf4_init(&Z2, CC_TMP0, irrep_x, 10, 10, 10, 10, 0, lbl);
 
174
  dpd_buf4_axpy(&Z1, &Z2, 1);
 
175
  dpd_buf4_close(&Z2);
 
176
  dpd_buf4_close(&Z1);
 
177
 
 
178
  dpd_buf4_init(&Z1, CC_TMP0, 0, 10, 10, 10, 10, 0, "Z(IA,jb) I");
 
179
  sprintf(lbl, "X_%s_%1s_(2IAjb-IbjA) (%5.3f)", pert_y, cart_y, omega_y);
 
180
  dpd_buf4_init(&Y2, CC_LR, irrep_y, 10, 10, 10, 10, 0, lbl);
 
181
  sprintf(lbl, "Z_%s_%1s_(2MbEj+MbeJ) (ME,JB)", pert_x, cart_x);
 
182
  dpd_buf4_init(&Z, CC_TMP0, irrep_x, 10, 10, 10, 10, 0, lbl);
 
183
  dpd_contract444(&Y2, &Z, &Z1, 0, 1, 0.5, 0);
 
184
  dpd_buf4_close(&Z);
 
185
  dpd_buf4_close(&Y2);
 
186
  dpd_buf4_close(&Z1);
 
187
 
 
188
  dpd_buf4_init(&Z1, CC_TMP0, 0, 10, 10, 10, 10, 0, "Z(IA,jb) Ib");
 
189
  sprintf(lbl, "Z_%s_%1s_MbeJ (Me,Jb)", pert_x, cart_x);
 
190
  dpd_buf4_init(&Z, CC_TMP0, irrep_x, 10, 10, 10, 10, 0, lbl);
 
191
  sprintf(lbl, "X_%s_%1s_IbjA (%5.3f)", pert_y, cart_y, omega_y);
 
192
  dpd_buf4_init(&Y2, CC_LR, irrep_y, 10, 10, 10, 10, 0, lbl);
 
193
  dpd_contract444(&Y2, &Z, &Z1, 0, 1, 1, 0);
 
194
  dpd_buf4_close(&Y2);
 
195
  dpd_buf4_close(&Z);
 
196
  dpd_buf4_close(&Z1);
 
197
 
 
198
  dpd_buf4_init(&Z1, CC_TMP0, 0, 10, 10, 10, 10, 0, "Z(IA,jb) I");
 
199
  dpd_buf4_init(&Z2, CC_TMP0, 0, 10, 10, 10, 10, 0, "Z(IA,jb) Ib");
 
200
  dpd_buf4_axpy(&Z2, &Z1, 0.5);
 
201
  dpd_buf4_sort(&Z2, CC_TMP0, psrq, 10, 10, "Z(IA,jb) III");
 
202
  dpd_buf4_close(&Z2);
 
203
  dpd_buf4_close(&Z1);
 
204
 
 
205
  dpd_buf4_init(&Z1, CC_TMP0, 0, 10, 10, 10, 10, 0, "Z(IA,jb) I");
 
206
  dpd_buf4_init(&Z2, CC_TMP0, 0, 10, 10, 10, 10, 0, "Z(IA,jb) III");
 
207
  dpd_buf4_axpy(&Z2, &Z1, 1);
 
208
  dpd_buf4_close(&Z2);
 
209
  dpd_buf4_sort(&Z1, CC_TMP0, prqs, 0, 5, "Z(Ij,Ab) I+III");
 
210
  dpd_buf4_close(&Z1);
 
211
 
 
212
  dpd_buf4_init(&Z, CC_TMP0, 0, 0, 5, 0, 5, 0, "Z(Ij,Ab) I+III");
 
213
  dpd_buf4_sort(&Z, CC_TMP0, qpsr, 0, 5, "Z(Ij,Ab) II+IV");
 
214
  dpd_buf4_close(&Z);
 
215
 
 
216
  dpd_buf4_init(&Z, CC_TMP0, 0, 0, 5, 0, 5, 0, "Z(Ij,Ab) Final");
 
217
  dpd_buf4_init(&Z1, CC_TMP0, 0, 0, 5, 0, 5, 0, "Z(Ij,Ab) I+III");
 
218
  dpd_buf4_axpy(&Z1, &Z, 1);
 
219
  dpd_buf4_close(&Z1);
 
220
  dpd_buf4_init(&Z1, CC_TMP0, 0, 0, 5, 0, 5, 0, "Z(Ij,Ab) II+IV");
 
221
  dpd_buf4_axpy(&Z1, &Z, 1);
 
222
  dpd_buf4_close(&Z1);
 
223
  dpd_buf4_close(&Z);
 
224
 
 
225
 
 
226
  sprintf(lbl, "X_%s_%1s_IA (%5.3f)", pert_x, cart_x, omega_x);
 
227
  dpd_file2_init(&X1, CC_OEI, irrep_x, 0, 1, lbl);
 
228
  sprintf(lbl, "X_%s_%1s_IjAb (%5.3f)", pert_y, cart_y, omega_y);
 
229
  dpd_buf4_init(&Y2, CC_LR, irrep_y, 0, 5, 0, 5, 0, lbl);
 
230
 
 
231
  sprintf(lbl, "Z_%s_%1s_mj" , pert_x, cart_x);
 
232
  dpd_file2_init(&z, CC_TMP0, irrep_x, 0, 0, lbl);
 
233
  dpd_buf4_init(&W, CC_HBAR, 0, 0, 11, 0, 11, 0, "2WMnIe - WnMIe");
 
234
  dpd_dot23(&X1, &W, &z, 0, 0, 1, 0);
 
235
  dpd_buf4_close(&W);
 
236
  dpd_buf4_init(&Z1, CC_TMP0, 0, 0, 5, 0, 5, 0, "Z(Ij,Ab)");
 
237
  dpd_contract424(&Y2, &z, &Z1, 1, 0, 1, -1, 0);
 
238
  dpd_buf4_init(&Z, CC_TMP0, 0, 0, 5, 0, 5, 0, "Z(Ij,Ab) Final");
 
239
  dpd_buf4_axpy(&Z1, &Z, 1);
 
240
  dpd_buf4_close(&Z);
 
241
  dpd_buf4_sort_axpy(&Z1, CC_TMP0, qpsr, 0, 5, "Z(Ij,Ab) Final", 1);
 
242
  dpd_buf4_close(&Z1);
 
243
  dpd_file2_close(&z);
 
244
 
 
245
 
 
246
 
 
247
  sprintf(lbl, "Z_%s_%1s_ae", pert_x, cart_x);
 
248
  dpd_file2_init(&z, CC_TMP0, irrep_x, 1, 1, lbl);
 
249
 
 
250
  dpd_buf4_init(&W, CC_HBAR, 0, 11, 5, 11, 5, 0, "WAmEf 2(Am,Ef) - (Am,fE)");
 
251
  dpd_dot24(&X1, &W, &z, 0, 0, 1, 0);
 
252
  dpd_buf4_close(&W);
 
253
  dpd_buf4_init(&Z1, CC_TMP0, 0, 0, 5, 0, 5, 0, "Z(Ij,Ab) temp");
 
254
  dpd_contract424(&Y2, &z, &Z1, 3, 1, 0, 1, 0);
 
255
  dpd_buf4_init(&Z, CC_TMP0, 0, 0, 5, 0, 5, 0, "Z(Ij,Ab) Final");
 
256
  dpd_buf4_axpy(&Z1, &Z, 1);
 
257
  dpd_buf4_close(&Z);
 
258
  dpd_buf4_sort_axpy(&Z1, CC_TMP0, qpsr, 0, 5, "Z(Ij,Ab) Final", 1);
 
259
  dpd_buf4_close(&Z1);
 
260
  dpd_file2_close(&z);
 
261
 
 
262
  dpd_file2_close(&X1);
 
263
  dpd_buf4_close(&Y2);
 
264
 
 
265
 
 
266
  sprintf(lbl, "X_%s_%1s_IA (%5.3f)", pert_x, cart_x, omega_x);
 
267
  dpd_file2_init(&X1, CC_OEI, irrep_x, 0, 1, lbl);
 
268
  sprintf(lbl, "Z_%s_%1s_MnjI", pert_x, cart_x);
 
269
  dpd_buf4_init(&Z1, CC_TMP0, irrep_x, 0, 0, 0, 0, 0, lbl);
 
270
  dpd_buf4_init(&W, CC_HBAR, 0, 0, 11, 0, 11, 0, "WMnIe");
 
271
  dpd_contract244(&X1, &W, &Z1, 1, 2, 1, 1, 0);
 
272
  dpd_buf4_close(&W);
 
273
  sprintf(lbl, "Z_%s_%1s_MnIj", pert_x, cart_x);
 
274
  dpd_buf4_sort(&Z1, CC_TMP0, pqsr, 0, 0, lbl);
 
275
  dpd_buf4_sort_axpy(&Z1, CC_TMP0, qprs, 0, 0, lbl, 1);
 
276
  dpd_buf4_close(&Z1);
 
277
  dpd_file2_close(&X1);
 
278
 
 
279
  dpd_buf4_init(&Z, CC_TMP0, 0, 0, 5, 0, 5, 0, "Z(Ij,Ab) Final");
 
280
  sprintf(lbl, "Z_%s_%1s_MnIj", pert_x, cart_x);
 
281
  dpd_buf4_init(&Z1, CC_TMP0, irrep_x, 0, 0, 0, 0, 0, lbl);
 
282
  sprintf(lbl, "X_%s_%1s_IjAb (%5.3f)", pert_y, cart_y, omega_y);
 
283
  dpd_buf4_init(&Y2, CC_LR, irrep_y, 0, 5, 0, 5, 0, lbl);
 
284
  dpd_contract444(&Z1, &Y2, &Z, 1, 1, 1, 1);
 
285
  dpd_buf4_close(&Y2);
 
286
  dpd_buf4_close(&Z1);
 
287
  dpd_buf4_close(&Z);
 
288
 
 
289
  sprintf(lbl, "Z_%s_%1s_AmIj (mA,Ij)", pert_y, cart_y);
 
290
  dpd_buf4_init(&Z1, CC_TMP0, irrep_y, 10, 0, 10, 0, 0, lbl);
 
291
  sprintf(lbl, "X_%s_%1s_IjAb (%5.3f)", pert_y, cart_y, omega_y);
 
292
  dpd_buf4_init(&Y2, CC_LR, irrep_y, 0, 5, 0, 5, 0, lbl);
 
293
  dpd_buf4_init(&W, CC_HBAR, 0, 10, 5, 10, 5, 0, "WAmEf");
 
294
  dpd_contract444(&W, &Y2, &Z1, 0, 0, 1, 0);
 
295
  dpd_buf4_close(&W);
 
296
  dpd_buf4_close(&Y2);
 
297
 
 
298
  dpd_buf4_init(&Z, CC_TMP0, 0, 0, 5, 0, 5, 0, "Z(Ij,bA)");
 
299
  sprintf(lbl, "X_%s_%1s_IA (%5.3f)", pert_x, cart_x, omega_x);
 
300
  dpd_file2_init(&X1, CC_OEI, irrep_x, 0, 1, lbl);
 
301
  dpd_contract244(&X1, &Z1, &Z, 0, 0, 1, -2, 0);
 
302
  dpd_file2_close(&X1);
 
303
  dpd_buf4_close(&Z1);
 
304
  dpd_buf4_sort_axpy(&Z, CC_TMP0, pqsr, 0, 5, "Z(Ij,Ab) Final", 1);
 
305
  dpd_buf4_close(&Z);
 
306
 
 
307
  dpd_buf4_init(&Z, CC_TMP0, 0, 0, 5, 0, 5, 0, "Z(Ij,Ab) Final");
 
308
  dpd_buf4_init(&L2, CC_LAMPS, 0, 0, 5, 0, 5, 0, "2 LIjAb - LIjBa");
 
309
  polar += dpd_buf4_dot(&L2, &Z);
 
310
  dpd_buf4_close(&L2);
 
311
  dpd_buf4_close(&Z);
 
312
 
 
313
  return polar;
 
314
}