32 #ifndef _chemistry_qc_cints_grt_h
33 #define _chemistry_qc_cints_grt_h
37 #include <util/ref/ref.h>
38 #include <chemistry/qc/basis/basis.h>
39 #include <chemistry/qc/cints/shellpairs.h>
40 #include <chemistry/qc/intv3/fjt.h>
41 #include <chemistry/qc/cints/int2e.h>
42 #include <libr12/libr12.h>
53 #define num_te_types_ 4
56 double *target_ints_buffer_[num_te_types_];
59 double *cart_ints_[num_te_types_];
60 double *sphharm_ints_;
64 double *prim_ints_[num_te_types_];
65 double *contr_quartets_[num_te_types_];
66 double *shell_quartet_[num_te_types_];
77 int *op1, *op2, *op3, *op4;
79 double A[3], B[3], C[3], D[3];
81 int gc1, gc2, gc3, gc4;
85 void grt_quartet_data_(prim_data *Data,
double scale);
100 if (te_type == TwoBodyInt::eri ||
101 te_type == TwoBodyInt::r12 ||
102 te_type == TwoBodyInt::r12t1 ||
103 te_type == TwoBodyInt::r12t2)
104 return target_ints_buffer_[te_type];
118 #include <chemistry/qc/cints/grt_quartet_data.h>
GRTCints is a specialization of Int2eCints that computes two-electron integrals specific to linear R1...
Definition: grt.h:49
double * buffer(TwoBodyInt::tbint_type te_type) const
Returns the location of the buffer with target integrals.
Definition: grt.h:99
void compute_quartet(int *, int *, int *, int *)
Evaluate the target quartet of integrals.
Int2eCints is an interface to various specializations of two-electron integral evaluators implemented...
Definition: cints/int2e.h:48
The Integral abstract class acts as a factory to provide objects that compute one and two electron in...
Definition: integral.h:58
A template class that maintains references counts.
Definition: ref.h:332
ShellPairCints provides all primitive pair data for a given shell pair.
Definition: shellpairs.h:44
tbint_type
Types of two-body integrals that TwoBodyInt understands: eri stands for electron repulsion integral,...
Definition: tbint.h:111