33 void print(std::ostream& os,
bool verbose=
false, std::string
const&
indent=
"")
const;
46 double &vol,
bool useQuasiRandom=
true)
const;
48 void refine(
double alpha= 1.5);
70 std::vector<double>
_xl;
71 std::vector<double>
_xu;
73 std::vector<double>
_d;
74 std::vector<double>
_xi;
static void indent(ostringstream &buf, int indent_level)
Abstract interface for evaluating a real-valued function of one real variable and performing numerica...
RooGrid is a utility class for RooMCIntegrator which implements an adaptive multi-dimensional Monte C...
UInt_t getDimension() const
std::vector< double > _xl
! Internal workspace
double value(Int_t i, Int_t j) const
double & value(Int_t i, Int_t j)
bool initialize(const RooAbsFunc &function)
Calculate and store the grid dimensions and volume using the specified function, and initialize the g...
void generatePoint(const UInt_t box[], double x[], UInt_t bin[], double &vol, bool useQuasiRandom=true) const
Generate a random vector in the specified box and store its coordinates in the x[] array provided,...
std::vector< double > _weight
! Internal workspace
std::vector< double > _xu
! Internal workspace
UInt_t _dim
Number of dimensions, bins and boxes.
UInt_t _bins
Number of bins.
bool _valid
Is configuration valid.
void resetValues()
Reset the values associated with each grid cell.
double & coord(Int_t i, Int_t j)
UInt_t _boxes
Numbser of boxes.
std::vector< double > _xi
! Internal workspace
void accumulate(const UInt_t bin[], double amount)
Add the specified amount to bin[j] of the 1D histograms associated with each axis j.
std::vector< double > _d
! Internal workspace
double coord(Int_t i, Int_t j) const
bool nextBox(UInt_t box[]) const
Update the specified array of box indices to refer to the next box in the standard traversal order an...
std::vector< double > _delx
! Internal workspace
void resize(UInt_t bins)
Adjust the subdivision of each axis to give the specified number of bins, using an algorithm that pre...
void setNBoxes(UInt_t boxes)
void refine(double alpha=1.5)
Refine the grid using the values that have been accumulated so far.
void firstBox(UInt_t box[]) const
Reset the specified array of box indices to refer to the first box in the standard traversal order.
std::vector< double > _xin
! Internal workspace
double & newCoord(Int_t i)
void print(std::ostream &os, bool verbose=false, std::string const &indent="") const
Print info about this object to the specified stream.
void box(Int_t pat, Double_t x1, Double_t y1, Double_t x2, Double_t y2)