3
\brief Enter brief description of file here
7
#include <libciomr/libciomr.h>
11
namespace psi { namespace cchbar {
13
void cache_abcd_rhf(int **cachelist);
14
void cache_iabc_rhf(int **cachelist);
15
void cache_ijab_rhf(int **cachelist);
16
void cache_iajb_rhf(int **cachelist);
17
void cache_ijka_rhf(int **cachelist);
18
void cache_ijkl_rhf(int **cachelist);
20
void cache_abcd_uhf(int **cachelist);
21
void cache_iabc_uhf(int **cachelist);
22
void cache_ijab_uhf(int **cachelist);
23
void cache_iajb_uhf(int **cachelist);
24
void cache_ijka_uhf(int **cachelist);
25
void cache_ijkl_uhf(int **cachelist);
27
int **cacheprep_uhf(int level, int *cachefiles)
31
/* The listing of CC files whose entries may be cached */
32
cachefiles[CC_AINTS] = 1;
33
cachefiles[CC_CINTS] = 1;
34
cachefiles[CC_DINTS] = 1;
35
cachefiles[CC_EINTS] = 1;
36
cachefiles[CC_DENOM] = 1;
37
cachefiles[CC_TAMPS] = 1;
38
cachefiles[CC_LAMPS] = 1;
39
cachefiles[CC_HBAR] = 1;
41
/* The listing of DPD patterns which may be cached */
42
cachelist = init_int_matrix(32,32);
44
if(level == 0) return cachelist;
47
/*** Cache oooo and ooov ***/
48
cache_ijkl_uhf(cachelist);
49
cache_ijka_uhf(cachelist);
55
/*** Cache oooo, ooov, oovv, and ovov ***/
56
cache_ijkl_uhf(cachelist);
57
cache_ijka_uhf(cachelist);
58
cache_ijab_uhf(cachelist);
59
cache_iajb_uhf(cachelist);
65
/*** Cache, oooo, oov, oovv, ovov, and ovvv ***/
67
cache_ijkl_uhf(cachelist);
68
cache_ijka_uhf(cachelist);
69
cache_ijab_uhf(cachelist);
70
cache_iajb_uhf(cachelist);
71
cache_iabc_uhf(cachelist);
77
/*** Cache everything ***/
78
cache_ijkl_uhf(cachelist);
79
cache_ijka_uhf(cachelist);
80
cache_ijab_uhf(cachelist);
81
cache_iajb_uhf(cachelist);
82
cache_iabc_uhf(cachelist);
83
cache_abcd_uhf(cachelist);
87
else { printf("Error: invalid cache level!\n"); exit(PSI_RETURN_FAILURE); }
90
int **cacheprep_rhf(int level, int *cachefiles)
94
/* The listing of CC files whose entries may be cached */
95
cachefiles[CC_AINTS] = 1;
96
cachefiles[CC_CINTS] = 1;
97
cachefiles[CC_DINTS] = 1;
98
cachefiles[CC_EINTS] = 1;
99
cachefiles[CC_DENOM] = 1;
100
cachefiles[CC_TAMPS] = 1;
101
cachefiles[CC_LAMPS] = 1;
102
cachefiles[CC_HBAR] = 1;
104
/* The listing of DPD patterns which may be cached */
105
cachelist = init_int_matrix(12,12);
107
if(level == 0) return cachelist;
108
else if(level == 1) {
110
/*** Cache oooo and ooov ***/
111
cache_ijkl_rhf(cachelist);
112
cache_ijka_rhf(cachelist);
116
else if(level == 2) {
118
/*** Cache oooo, ooov, oovv, and ovov ***/
119
cache_ijkl_rhf(cachelist);
120
cache_ijka_rhf(cachelist);
121
cache_ijab_rhf(cachelist);
122
cache_iajb_rhf(cachelist);
126
else if(level == 3) {
128
/*** Cache, oooo, oov, oovv, ovov, and ovvv ***/
130
cache_ijkl_rhf(cachelist);
131
cache_ijka_rhf(cachelist);
132
cache_ijab_rhf(cachelist);
133
cache_iajb_rhf(cachelist);
134
cache_iabc_rhf(cachelist);
138
else if(level == 4) {
140
/*** Cache everything ***/
141
cache_ijkl_rhf(cachelist);
142
cache_ijka_rhf(cachelist);
143
cache_ijab_rhf(cachelist);
144
cache_iajb_rhf(cachelist);
145
cache_iabc_rhf(cachelist);
146
cache_abcd_rhf(cachelist);
150
else { printf("Error: invalid cache level!\n"); exit(PSI_RETURN_FAILURE); }
153
void cache_abcd_uhf(int **cachelist)
182
cachelist[15][15] = 1;
183
cachelist[15][16] = 1;
184
cachelist[15][17] = 1;
185
cachelist[15][18] = 1;
186
cachelist[15][19] = 1;
187
cachelist[16][15] = 1;
188
cachelist[16][16] = 1;
189
cachelist[16][17] = 1;
190
cachelist[16][18] = 1;
191
cachelist[16][19] = 1;
192
cachelist[17][15] = 1;
193
cachelist[17][16] = 1;
194
cachelist[17][17] = 1;
195
cachelist[17][18] = 1;
196
cachelist[17][19] = 1;
197
cachelist[18][15] = 1;
198
cachelist[18][16] = 1;
199
cachelist[18][17] = 1;
200
cachelist[18][18] = 1;
201
cachelist[18][19] = 1;
202
cachelist[19][15] = 1;
203
cachelist[19][16] = 1;
204
cachelist[19][17] = 1;
205
cachelist[19][18] = 1;
206
cachelist[19][19] = 1;
208
cachelist[28][28] = 1;
209
cachelist[29][29] = 1;
210
cachelist[28][29] = 1;
211
cachelist[29][28] = 1;
214
void cache_abcd_rhf(int **cachelist)
244
void cache_iabc_rhf(int **cachelist)
247
cachelist[10][5] = 1;
248
cachelist[10][6] = 1;
249
cachelist[10][7] = 1;
250
cachelist[10][8] = 1;
251
cachelist[10][9] = 1;
252
cachelist[11][5] = 1;
253
cachelist[11][6] = 1;
254
cachelist[11][7] = 1;
255
cachelist[11][8] = 1;
256
cachelist[11][9] = 1;
258
cachelist[5][10] = 1;
259
cachelist[5][11] = 1;
260
cachelist[6][10] = 1;
261
cachelist[6][11] = 1;
262
cachelist[7][10] = 1;
263
cachelist[7][11] = 1;
264
cachelist[8][10] = 1;
265
cachelist[8][11] = 1;
266
cachelist[9][10] = 1;
267
cachelist[9][11] = 1;
270
void cache_iabc_uhf(int **cachelist)
273
cachelist[20][5] = 1;
274
cachelist[20][6] = 1;
275
cachelist[20][7] = 1;
276
cachelist[20][8] = 1;
277
cachelist[20][9] = 1;
278
cachelist[21][5] = 1;
279
cachelist[21][6] = 1;
280
cachelist[21][7] = 1;
281
cachelist[21][8] = 1;
282
cachelist[21][9] = 1;
284
cachelist[5][20] = 1;
285
cachelist[5][21] = 1;
286
cachelist[6][20] = 1;
287
cachelist[6][21] = 1;
288
cachelist[7][20] = 1;
289
cachelist[7][21] = 1;
290
cachelist[8][20] = 1;
291
cachelist[8][21] = 1;
292
cachelist[9][20] = 1;
293
cachelist[9][21] = 1;
296
cachelist[30][15] = 1;
297
cachelist[30][16] = 1;
298
cachelist[30][17] = 1;
299
cachelist[30][18] = 1;
300
cachelist[30][19] = 1;
301
cachelist[31][15] = 1;
302
cachelist[31][16] = 1;
303
cachelist[31][17] = 1;
304
cachelist[31][18] = 1;
305
cachelist[31][19] = 1;
307
cachelist[15][30] = 1;
308
cachelist[15][31] = 1;
309
cachelist[16][30] = 1;
310
cachelist[16][31] = 1;
311
cachelist[17][30] = 1;
312
cachelist[17][31] = 1;
313
cachelist[18][30] = 1;
314
cachelist[18][31] = 1;
315
cachelist[19][30] = 1;
316
cachelist[19][31] = 1;
319
cachelist[24][28] = 1;
320
cachelist[24][29] = 1;
321
cachelist[25][28] = 1;
322
cachelist[25][29] = 1;
325
cachelist[28][24] = 1;
326
cachelist[28][25] = 1;
327
cachelist[29][24] = 1;
328
cachelist[29][25] = 1;
331
void cache_ijab_rhf(int **cachelist)
387
void cache_ijab_uhf(int **cachelist)
443
cachelist[10][15] = 1;
444
cachelist[10][16] = 1;
445
cachelist[10][17] = 1;
446
cachelist[10][18] = 1;
447
cachelist[10][19] = 1;
448
cachelist[11][15] = 1;
449
cachelist[11][16] = 1;
450
cachelist[11][17] = 1;
451
cachelist[11][18] = 1;
452
cachelist[11][19] = 1;
453
cachelist[12][15] = 1;
454
cachelist[12][16] = 1;
455
cachelist[12][17] = 1;
456
cachelist[12][18] = 1;
457
cachelist[12][19] = 1;
458
cachelist[13][15] = 1;
459
cachelist[13][16] = 1;
460
cachelist[13][17] = 1;
461
cachelist[13][18] = 1;
462
cachelist[13][19] = 1;
463
cachelist[14][15] = 1;
464
cachelist[14][16] = 1;
465
cachelist[14][17] = 1;
466
cachelist[14][18] = 1;
467
cachelist[14][19] = 1;
469
cachelist[15][10] = 1;
470
cachelist[15][11] = 1;
471
cachelist[15][12] = 1;
472
cachelist[15][13] = 1;
473
cachelist[15][14] = 1;
474
cachelist[16][10] = 1;
475
cachelist[16][11] = 1;
476
cachelist[16][12] = 1;
477
cachelist[16][13] = 1;
478
cachelist[16][14] = 1;
479
cachelist[17][10] = 1;
480
cachelist[17][11] = 1;
481
cachelist[17][12] = 1;
482
cachelist[17][13] = 1;
483
cachelist[17][14] = 1;
484
cachelist[18][10] = 1;
485
cachelist[18][11] = 1;
486
cachelist[18][12] = 1;
487
cachelist[18][13] = 1;
488
cachelist[18][14] = 1;
489
cachelist[19][10] = 1;
490
cachelist[19][11] = 1;
491
cachelist[19][12] = 1;
492
cachelist[19][13] = 1;
493
cachelist[19][14] = 1;
496
cachelist[22][28] = 1;
497
cachelist[23][28] = 1;
498
cachelist[22][29] = 1;
499
cachelist[23][29] = 1;
501
cachelist[28][22] = 1;
502
cachelist[28][23] = 1;
503
cachelist[29][22] = 1;
504
cachelist[29][23] = 1;
507
void cache_iajb_rhf(int **cachelist)
510
cachelist[10][10] = 1;
511
cachelist[10][11] = 1;
512
cachelist[11][10] = 1;
513
cachelist[11][11] = 1;
516
void cache_iajb_uhf(int **cachelist)
519
cachelist[20][20] = 1;
520
cachelist[20][21] = 1;
521
cachelist[21][20] = 1;
522
cachelist[21][21] = 1;
524
cachelist[30][30] = 1;
525
cachelist[30][31] = 1;
526
cachelist[31][30] = 1;
527
cachelist[31][31] = 1;
529
cachelist[24][24] = 1;
530
cachelist[24][25] = 1;
531
cachelist[25][24] = 1;
532
cachelist[25][25] = 1;
535
void cache_ijka_rhf(int **cachelist)
538
cachelist[0][10] = 1;
539
cachelist[0][11] = 1;
540
cachelist[1][10] = 1;
541
cachelist[1][11] = 1;
542
cachelist[2][10] = 1;
543
cachelist[2][11] = 1;
544
cachelist[3][10] = 1;
545
cachelist[3][11] = 1;
546
cachelist[4][10] = 1;
547
cachelist[4][11] = 1;
549
cachelist[10][0] = 1;
550
cachelist[10][1] = 1;
551
cachelist[10][2] = 1;
552
cachelist[10][3] = 1;
553
cachelist[10][4] = 1;
554
cachelist[11][0] = 1;
555
cachelist[11][1] = 1;
556
cachelist[11][2] = 1;
557
cachelist[11][3] = 1;
558
cachelist[11][4] = 1;
561
void cache_ijka_uhf(int **cachelist)
564
cachelist[0][20] = 1;
565
cachelist[0][21] = 1;
566
cachelist[1][20] = 1;
567
cachelist[1][21] = 1;
568
cachelist[2][20] = 1;
569
cachelist[2][21] = 1;
570
cachelist[3][20] = 1;
571
cachelist[3][21] = 1;
572
cachelist[4][20] = 1;
573
cachelist[4][21] = 1;
575
cachelist[20][0] = 1;
576
cachelist[20][1] = 1;
577
cachelist[20][2] = 1;
578
cachelist[20][3] = 1;
579
cachelist[20][4] = 1;
580
cachelist[21][0] = 1;
581
cachelist[21][1] = 1;
582
cachelist[21][2] = 1;
583
cachelist[21][3] = 1;
584
cachelist[21][4] = 1;
587
cachelist[10][30] = 1;
588
cachelist[10][31] = 1;
589
cachelist[11][30] = 1;
590
cachelist[11][31] = 1;
591
cachelist[12][30] = 1;
592
cachelist[12][31] = 1;
593
cachelist[13][30] = 1;
594
cachelist[13][31] = 1;
595
cachelist[14][30] = 1;
596
cachelist[14][31] = 1;
598
cachelist[30][10] = 1;
599
cachelist[30][11] = 1;
600
cachelist[30][12] = 1;
601
cachelist[30][13] = 1;
602
cachelist[30][14] = 1;
603
cachelist[31][10] = 1;
604
cachelist[31][11] = 1;
605
cachelist[31][12] = 1;
606
cachelist[31][13] = 1;
607
cachelist[31][14] = 1;
610
cachelist[22][24] = 1;
611
cachelist[22][25] = 1;
612
cachelist[23][24] = 1;
613
cachelist[23][25] = 1;
615
cachelist[24][22] = 1;
616
cachelist[25][22] = 1;
617
cachelist[24][23] = 1;
618
cachelist[25][23] = 1;
621
void cache_ijkl_rhf(int **cachelist)
651
void cache_ijkl_uhf(int **cachelist)
680
cachelist[10][10] = 1;
681
cachelist[10][11] = 1;
682
cachelist[10][12] = 1;
683
cachelist[10][13] = 1;
684
cachelist[10][14] = 1;
685
cachelist[11][10] = 1;
686
cachelist[11][11] = 1;
687
cachelist[11][12] = 1;
688
cachelist[11][13] = 1;
689
cachelist[11][14] = 1;
690
cachelist[12][10] = 1;
691
cachelist[12][11] = 1;
692
cachelist[12][12] = 1;
693
cachelist[12][13] = 1;
694
cachelist[12][14] = 1;
695
cachelist[13][10] = 1;
696
cachelist[13][11] = 1;
697
cachelist[13][12] = 1;
698
cachelist[13][13] = 1;
699
cachelist[13][14] = 1;
700
cachelist[14][10] = 1;
701
cachelist[14][11] = 1;
702
cachelist[14][12] = 1;
703
cachelist[14][13] = 1;
704
cachelist[14][14] = 1;
706
cachelist[22][22] = 1;
707
cachelist[22][23] = 1;
708
cachelist[23][22] = 1;
709
cachelist[23][23] = 1;
712
void cachedone_uhf(int **cachelist)
714
free_int_matrix(cachelist);
717
void cachedone_rhf(int **cachelist)
719
free_int_matrix(cachelist);
722
}} // namespace psi::cchbar