5 #ifndef _chemistry_qc_basis_extent_h
6 #define _chemistry_qc_basis_extent_h
11 #include <chemistry/qc/basis/basis.h>
19 ExtentData(
int s,
double b): shell(s), bound(b) {}
26 std::vector<ExtentData> *contributing_shells_;
27 std::vector<ExtentData> null_;
29 std::vector<ExtentData> &data(
int *b);
30 double distance(
double loc,
int axis,
int origin,
int point);
31 std::vector<ExtentData> &data(
int x,
int y,
int z);
36 double resolution = 1.0,
double tolerance = DBL_EPSILON);
40 {
return data(x,y,z); }
43 const int *n()
const {
return n_; }
44 int n(
int ixyz)
const {
return n_[ixyz]; }
45 double lower(
int ixyz)
const {
return lower_[ixyz]; }
46 double upper(
int ixyz)
const {
return resolution_*n_[ixyz] + lower_[ixyz]; }
47 double resolution()
const {
return resolution_; }