32 #ifndef _chemistry_qc_intcca_int2e_h
33 #define _chemistry_qc_intcca_int2e_h
35 #include <sidl_cxx.hh>
36 #include <Chemistry_QC_GaussianBasis_IntegralEvaluatorFactory.hh>
37 #include <Chemistry_QC_GaussianBasis_IntegralEvaluator4.hh>
38 #include <Chemistry_QC_GaussianBasis_DerivCenters.hh>
39 #include <Chemistry_Chemistry_QC_GaussianBasis_DerivCenters.hh>
40 #include <MPQC_GaussianBasis_Molecular.hh>
41 #include <chemistry/qc/basis/integral.h>
45 using namespace Chemistry;
46 using namespace Chemistry::QC::GaussianBasis;
58 IntegralEvaluatorFactory eval_factory_;
63 GaussianBasis_Molecular cca_bs1_;
64 GaussianBasis_Molecular cca_bs2_;
65 GaussianBasis_Molecular cca_bs3_;
66 GaussianBasis_Molecular cca_bs4_;
67 sidl::array<double> sidl_buffer_;
70 void copy_buffer(
int);
71 IntegralEvaluator4 erep_;
72 IntegralEvaluator4 erep_1der_;
73 IntegralEvaluator4 *erep_ptr_;
74 IntegralEvaluator4 *erep_1der_ptr_;
75 Chemistry_QC_GaussianBasis_DerivCenters cca_dc_;
77 void remove_redundant(
int,
int,
int,
int);
88 int order,
size_t storage, IntegralEvaluatorFactory,
91 double *buffer() {
return buffer_; }
92 void compute_erep(
int is,
int js,
int ks,
int ls );
93 void compute_erep_1der(
int is,
int js,
int ks,
int ls,
94 Chemistry::QC::GaussianBasis::DerivCenters &dc);
95 int redundant()
const {
return redundant_; }
96 void set_redundant(
int i) { redundant_ = i; }