00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012 #ifndef HAINTENGINE_H
00013 #define HAINTENGINE_H
00014
00015 #include "halinalg.h"
00016
00017 class HaQCMod;
00018
00019
00020 enum TwoElComb{REG=0,RAFF1=11,RAFF2=12,RAFF3=13};
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030 class HaIntEngine
00031
00032
00033
00034 {
00035 public:
00036
00037 HaIntEngine();
00038 HaIntEngine(const HaQCMod & host);
00039 virtual ~HaIntEngine();
00040
00041
00042 int Gen2eInt(HaMat_double & R1, HaMat_double & R2, HaMat_double & R3,
00043 const TwoElComb &Type2e) const;
00044
00045 static int IntCanonToSq(double *pcan, HaMat_double & SqInt, int N);
00046
00047
00048 protected:
00049 int LoadGauCom() const;
00050 const HaQCMod* ptr_qc_mod;
00051
00052
00053 };
00054
00055
00056
00057
00058
00059
00060 #endif