MPQC 2.3.1

- Main Page
- Related Pages
- Classes
- Files

- File List

build.h
1 #ifdef __GNUG__
2 #pragma interface
3 #endif
4
5 #ifndef _chemistry_qc_oint3_build_h
6 #define _chemistry_qc_oint3_build_h
7
8 #include <scconfig.h>
9 #include <chemistry/qc/intv3/array.h>
10
11 namespace sc {
12
13 #define MG 3
14
15 #define DECLARE_BUILD(ii,j,k,l) \
16 int i ## ii ## j ## k ## l ();\
17 int i ## ii ## j ## k ## l ## eAB ()
18
19 class BuildIntV3 {
20 public:
21 double int_v_ooze;
22 double int_v_zeta12;
23 double int_v_zeta34;
24 double int_v_oo2zeta12;
25 double int_v_oo2zeta34;
26 double int_v_W0;
27 double int_v_W1;
28 double int_v_W2;
29 double int_v_p120;
30 double int_v_p121;
31 double int_v_p122;
32 double int_v_p340;
33 double int_v_p341;
34 double int_v_p342;
35 double int_v_r10;
36 double int_v_r11;
37 double int_v_r12;
38 double int_v_r20;
39 double int_v_r21;
40 double int_v_r22;
41 double int_v_r30;
42 double int_v_r31;
43 double int_v_r32;
44 double int_v_r40;
45 double int_v_r41;
46 double int_v_r42;
47 double int_v_k12;
48 double int_v_k34;
49 IntV3Arraydoublep3 int_v_list;
50 public:
51 BuildIntV3();
52 ~BuildIntV3();
53
54 int impossible_integral();
55
56 #if (MG == 1) || (MG == 2) || (MG == 3) || (MG == 4)
57 DECLARE_BUILD(0,1,0,0);
58 DECLARE_BUILD(0,1,0,1);
59 DECLARE_BUILD(0,1,1,1);
60 DECLARE_BUILD(1,1,0,0);
61 DECLARE_BUILD(1,1,1,1);
62 #endif
63
64 #if (MG == 2) || (MG == 3) || (MG == 4)
65 DECLARE_BUILD(0,2,0,0);
66 DECLARE_BUILD(0,2,0,1);
67 DECLARE_BUILD(0,2,0,2);
68 DECLARE_BUILD(0,2,1,1);
69 DECLARE_BUILD(0,2,1,2);
70 DECLARE_BUILD(0,2,2,2);
71 DECLARE_BUILD(1,2,0,0);
72 DECLARE_BUILD(1,2,0,1);
73 DECLARE_BUILD(1,2,1,1);
74 DECLARE_BUILD(1,2,1,2);
75 DECLARE_BUILD(1,2,2,2);
76 DECLARE_BUILD(2,2,0,0);
77 DECLARE_BUILD(2,2,0,1);
78 DECLARE_BUILD(2,2,1,1);
79 DECLARE_BUILD(2,2,2,2);
80 #endif
81
82 #if (MG == 3) || (MG == 4)
83 DECLARE_BUILD(0,3,0,0);
84 DECLARE_BUILD(0,3,0,1);
85 DECLARE_BUILD(0,3,0,2);
86 DECLARE_BUILD(0,3,0,3);
87 DECLARE_BUILD(0,3,1,1);
88 DECLARE_BUILD(0,3,1,2);
89 DECLARE_BUILD(0,3,1,3);
90 DECLARE_BUILD(0,3,2,2);
91 DECLARE_BUILD(0,3,2,3);
92 DECLARE_BUILD(0,3,3,3);
93 DECLARE_BUILD(1,3,0,0);
94 DECLARE_BUILD(1,3,0,1);
95 DECLARE_BUILD(1,3,0,2);
96 DECLARE_BUILD(1,3,1,1);
97 DECLARE_BUILD(1,3,1,2);
98 DECLARE_BUILD(1,3,1,3);
99 DECLARE_BUILD(1,3,2,2);
100 DECLARE_BUILD(1,3,2,3);
101 DECLARE_BUILD(1,3,3,3);
102 DECLARE_BUILD(2,3,0,0);
103 DECLARE_BUILD(2,3,0,1);
104 DECLARE_BUILD(2,3,0,2);
105 DECLARE_BUILD(2,3,1,1);
106 DECLARE_BUILD(2,3,1,2);
107 DECLARE_BUILD(2,3,2,2);
108 DECLARE_BUILD(2,3,2,3);
109 DECLARE_BUILD(2,3,3,3);
110 DECLARE_BUILD(3,3,0,0);
111 DECLARE_BUILD(3,3,0,1);
112 DECLARE_BUILD(3,3,0,2);
113 DECLARE_BUILD(3,3,1,1);
114 DECLARE_BUILD(3,3,1,2);
115 DECLARE_BUILD(3,3,2,2);
116 DECLARE_BUILD(3,3,3,3);
117 #endif
118 };
119
120 }
121
122 #endif