14#ifndef ROOT_Math_AdaptiveIntegratorMultiDim
15#define ROOT_Math_AdaptiveIntegratorMultiDim
Class for adaptive quadrature integration in multi-dimensions using rectangular regions.
void SetOptions(const ROOT::Math::IntegratorMultiDimOptions &opt)
set the options
void SetAbsTolerance(double absTol)
set absolute tolerance
const IMultiGenFunction * fFun
double Result() const
return result of integration
int Status() const
return status of integration
double DoIntegral(const double *xmin, const double *xmax, bool absVal=false)
AdaptiveIntegratorMultiDim(double absTol=0.0, double relTol=1E-9, unsigned int maxpts=100000, unsigned int size=0)
Construct given optionally tolerance (absolute and relative), maximum number of function evaluation (...
void SetSize(unsigned int size)
set workspace size
int NEval() const
return number of function evaluations in calculating the integral
virtual ~AdaptiveIntegratorMultiDim()
destructor (no operations)
void SetMaxPts(unsigned int n)
set max points
void SetFunction(const IMultiGenFunction &f)
set the integration function (must implement multi-dim function interface: IBaseFunctionMultiDim)
double Error() const
return integration error
ROOT::Math::IntegratorMultiDimOptions Options() const
get the option used for the integration
void SetRelTolerance(double relTol)
set relative tolerance
double RelError() const
return relative error
double Integral(const double *xmin, const double *xmax)
evaluate the integral with the previously given function between xmin[] and xmax[]
void SetMinPts(unsigned int n)
set min points
Documentation for the abstract class IBaseFunctionMultiDim.
Numerical multi dimensional integration options.
Interface (abstract) class for multi numerical integration It must be implemented by the concrete Int...
Namespace for new Math classes and functions.
constexpr Double_t E()
Base of natural log: