Google

Main Page   Class Hierarchy   Compound List   File List   Compound Members   Related Pages  

build.h

00001 #ifdef __GNUG__
00002 #pragma interface
00003 #endif
00004 
00005 #ifndef _chemistry_qc_oint3_build_h
00006 #define _chemistry_qc_oint3_build_h
00007 
00008 #include <chemistry/qc/intv3/array.h>
00009 
00010 namespace sc {
00011 
00012 #define MG 3
00013 
00014 #define DECLARE_BUILD(ii,j,k,l) \
00015   int i ## ii ## j ## k ## l ();\
00016   int i ## ii ## j ## k ## l ## eAB ()
00017 
00018 class BuildIntV3 {
00019   public:
00020     double int_v_ooze;
00021     double int_v_zeta12;
00022     double int_v_zeta34;
00023     double int_v_oo2zeta12;
00024     double int_v_oo2zeta34;
00025     double int_v_W0;
00026     double int_v_W1;
00027     double int_v_W2;
00028     double int_v_p120;
00029     double int_v_p121;
00030     double int_v_p122;
00031     double int_v_p340;
00032     double int_v_p341;
00033     double int_v_p342;
00034     double int_v_r10;
00035     double int_v_r11;
00036     double int_v_r12;
00037     double int_v_r20;
00038     double int_v_r21;
00039     double int_v_r22;
00040     double int_v_r30;
00041     double int_v_r31;
00042     double int_v_r32;
00043     double int_v_r40;
00044     double int_v_r41;
00045     double int_v_r42;
00046     double int_v_k12;
00047     double int_v_k34;
00048     IntV3Arraydoublep3 int_v_list;
00049   public:
00050     BuildIntV3();
00051     ~BuildIntV3();
00052 
00053     int impossible_integral();
00054 
00055 #if (MG == 1) || (MG == 2) || (MG == 3) || (MG == 4)
00056     DECLARE_BUILD(0,1,0,0);
00057     DECLARE_BUILD(0,1,0,1);
00058     DECLARE_BUILD(0,1,1,1);
00059     DECLARE_BUILD(1,1,0,0);
00060     DECLARE_BUILD(1,1,1,1);
00061 #endif
00062 
00063 #if (MG == 2) || (MG == 3) || (MG == 4)
00064     DECLARE_BUILD(0,2,0,0);
00065     DECLARE_BUILD(0,2,0,1);
00066     DECLARE_BUILD(0,2,0,2);
00067     DECLARE_BUILD(0,2,1,1);
00068     DECLARE_BUILD(0,2,1,2);
00069     DECLARE_BUILD(0,2,2,2);
00070     DECLARE_BUILD(1,2,0,0);
00071     DECLARE_BUILD(1,2,0,1);
00072     DECLARE_BUILD(1,2,1,1);
00073     DECLARE_BUILD(1,2,1,2);
00074     DECLARE_BUILD(1,2,2,2);
00075     DECLARE_BUILD(2,2,0,0);
00076     DECLARE_BUILD(2,2,0,1);
00077     DECLARE_BUILD(2,2,1,1);
00078     DECLARE_BUILD(2,2,2,2);
00079 #endif
00080 
00081 #if (MG == 3) || (MG == 4)
00082     DECLARE_BUILD(0,3,0,0);
00083     DECLARE_BUILD(0,3,0,1);
00084     DECLARE_BUILD(0,3,0,2);
00085     DECLARE_BUILD(0,3,0,3);
00086     DECLARE_BUILD(0,3,1,1);
00087     DECLARE_BUILD(0,3,1,2);
00088     DECLARE_BUILD(0,3,1,3);
00089     DECLARE_BUILD(0,3,2,2);
00090     DECLARE_BUILD(0,3,2,3);
00091     DECLARE_BUILD(0,3,3,3);
00092     DECLARE_BUILD(1,3,0,0);
00093     DECLARE_BUILD(1,3,0,1);
00094     DECLARE_BUILD(1,3,0,2);
00095     DECLARE_BUILD(1,3,1,1);
00096     DECLARE_BUILD(1,3,1,2);
00097     DECLARE_BUILD(1,3,1,3);
00098     DECLARE_BUILD(1,3,2,2);
00099     DECLARE_BUILD(1,3,2,3);
00100     DECLARE_BUILD(1,3,3,3);
00101     DECLARE_BUILD(2,3,0,0);
00102     DECLARE_BUILD(2,3,0,1);
00103     DECLARE_BUILD(2,3,0,2);
00104     DECLARE_BUILD(2,3,1,1);
00105     DECLARE_BUILD(2,3,1,2);
00106     DECLARE_BUILD(2,3,2,2);
00107     DECLARE_BUILD(2,3,2,3);
00108     DECLARE_BUILD(2,3,3,3);
00109     DECLARE_BUILD(3,3,0,0);
00110     DECLARE_BUILD(3,3,0,1);
00111     DECLARE_BUILD(3,3,0,2);
00112     DECLARE_BUILD(3,3,1,1);
00113     DECLARE_BUILD(3,3,1,2);
00114     DECLARE_BUILD(3,3,2,2);
00115     DECLARE_BUILD(3,3,3,3);
00116 #endif
00117 };
00118 
00119 }
00120 
00121 #endif

Generated at Fri Jan 10 08:14:08 2003 for MPQC 2.1.3 using the documentation package Doxygen 1.2.14.