60 RooCategory extrap(
"extrapolation",
"Extrapolation procedure") ;
64 RooRealVar maxSteps(
"maxSteps",
"Maximum number of steps",20) ;
65 RooRealVar minSteps(
"minSteps",
"Minimum number of steps",999) ;
66 RooRealVar fixSteps(
"fixSteps",
"Fixed number of steps",0) ;
80 _h(0), _s(0), _c(0), _d(0), _x(0)
142 oocoutE((
TObject*)0,
Integration) <<
"RooIntegrator1D::ctor() ERROR: fixSteps>maxSteps, fixSteps set to maxSteps" << endl ;
265 oocoutE((
TObject*)0,
Integration) <<
"RooIntegrator1D::checkLimits: bad range with min >= max (_xmin = " << _xmin <<
" _xmax = " <<
_xmax <<
")" << endl;
295 Int_t jj ;
for (jj=0 ; jj<=j ; jj++) {
296 if (
_s[j]>=zeroThresh) {
364 for(it=1, j=1; j < n-1; j++) it*= 3;
369 for(sum= 0, j= 1; j <= it; j++) {
398 for(it=1, j=1; j < n-1; j++) it <<= 1;
402 for(sum=0.0, j=1; j<=it; j++, x+=del) sum +=
integrand(
xvec(x));
421 if ((dift=
fabs(xa[i])) < dif) {
430 for(i= 1; i <= _nPoints-
m; i++) {
434 if((den=ho-hp) == 0.0) {
static RooNumIntConfig & defaultConfig()
Return reference to instance of default numeric integrator configuration object.
RooAbsIntegrator is the abstract interface for integrators of real-valued functions that implement th...
Int_t getCatIndex(const char *name, Int_t defVal=0, Bool_t verbose=kFALSE) const
Get index value of a RooAbsCategory stored in set with given name.
static long int sum(long int i)
Double_t * _s
Integrator workspace.
RooNumIntConfig holds the configuration parameters of the various numeric integrators used by RooReal...
Double_t _extrapError
Extrapolated value.
RooIntegrator1D()
coverity[UNINIT_CTOR] Default constructor
Double_t * _c
Integrator workspace.
Double_t * xvec(Double_t &xx)
Integrator workspace.
RooNumIntFactory is a factory to instantiate numeric integrators from a given function binding and a ...
Bool_t initialize()
Initialize the integrator.
static void registerIntegrator(RooNumIntFactory &fact)
Register RooIntegrator1D, is parameters and capabilities with RooNumIntFactory.
Double_t _extrapValue
Size of integration range.
Bool_t printEvalCounter() const
Double_t addMidpoints(Int_t n)
Calculate the n-th stage of refinement of the Second Euler-Maclaurin summation rule which has the use...
const RooArgSet & getConfigSection(const char *name) const
Retrieve configuration information specific to integrator with given name.
static Int_t isInfinite(Double_t x)
Return true if x is infinite by RooNumBer internal specification.
virtual ~RooIntegrator1D()
Destructor.
Double_t addTrapezoids(Int_t n)
Calculate the n-th stage of refinement of the extended trapezoidal summation rule.
virtual Bool_t setLabel(const char *label, Bool_t printError=kTRUE)
Set value by specifying the name of the desired state If printError is set, a message will be printed...
Double_t _savedResult
Integrator workspace.
void function(const Char_t *name_, T fun, const Char_t *docstring=0)
Double_t _range
Upper integration bound.
virtual const char * getName() const
Double_t * _d
Integrator workspace.
RooRealVar represents a fundamental (non-derived) real valued object.
virtual Bool_t checkLimits() const
Check that our integration range is finite and otherwise return kFALSE.
VecExpr< UnaryOp< Fabs< T >, VecExpr< A, T, D >, T >, T, D > fabs(const VecExpr< A, T, D > &rhs)
virtual RooAbsIntegrator * clone(const RooAbsFunc &function, const RooNumIntConfig &config) const
Clone integrator with new function binding and configuration. Needed by RooNumIntFactory.
virtual Double_t integral(const Double_t *yvec=0)
Calculate numeric integral at given set of function binding parameters.
UInt_t getDimension() const
const RooAbsFunc * _function
virtual Double_t getMinLimit(UInt_t dimension) const =0
Bool_t setLimits(Double_t *xmin, Double_t *xmax)
Change our integration limits.
RooCategory represents a fundamental (non-derived) discrete value object.
const RooAbsFunc * integrand() const
RooIntegrator1D implements an adaptive one-dimensional numerical integration algorithm.
virtual Double_t getMaxLimit(UInt_t dimension) const =0
you should not use this method at all Int_t Int_t Double_t Double_t Double_t e
Double_t * _h
Error on extrapolated value.
Mother of all ROOT objects.
Bool_t _useIntegrandLimits
Double_t _xmax
Lower integration bound.
Double_t getRealValue(const char *name, Double_t defVal=0, Bool_t verbose=kFALSE) const
Get value of a RooAbsReal stored in set with given name.
Bool_t defineType(const char *label)
Define a state with given name, the lowest available positive integer is assigned as index...
void extrapolate(Int_t n)
Extrapolate result to final value.
virtual const char * GetName() const
Returns name of object.
Abstract interface for evaluating a real-valued function of one real variable and performing numerica...
static constexpr double ns
Bool_t storeProtoIntegrator(RooAbsIntegrator *proto, const RooArgSet &defConfig, const char *depName="")
Method accepting registration of a prototype numeric integrator along with a RooArgSet of its default...