59 RooCategory extrap(
"extrapolation",
"Extrapolation procedure") ;
63 RooRealVar maxSteps(
"maxSteps",
"Maximum number of steps",20) ;
64 RooRealVar minSteps(
"minSteps",
"Minimum number of steps",999) ;
65 RooRealVar fixSteps(
"fixSteps",
"Fixed number of steps",0) ;
79 _h(0), _s(0), _c(0), _d(0), _x(0)
129 _epsAbs(config.epsAbs()),
130 _epsRel(config.epsRel())
141 oocoutE((
TObject*)0,
Integration) <<
"RooIntegrator1D::ctor() ERROR: fixSteps>maxSteps, fixSteps set to maxSteps" << endl ;
158 _epsAbs(config.epsAbs()),
159 _epsRel(config.epsRel())
297 for (
int jj=0 ; jj<=j ; jj++) {
298 if (
_s[j]>=zeroThresh) {
365 for(it=1, j=1; j <
n-1; j++) it*= 3;
370 for(
sum= 0, j= 1; j <= it; j++) {
396 const int nInt = 1 << (
n-2);
402 for (
int j=0; j<nInt; ++j) {
425 if ((dift=
fabs(xa[i])) < dif) {
438 if((den=ho-hp) == 0.0) {
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t WindowAttributes_t Float_t Float_t Float_t Int_t Int_t UInt_t UInt_t Rectangle_t Int_t Int_t Window_t TString Int_t del
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.
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.
Abstract interface for evaluating a real-valued function of one real variable and performing numerica...
virtual Double_t getMinLimit(UInt_t dimension) const =0
virtual Double_t getMaxLimit(UInt_t dimension) const =0
UInt_t getDimension() const
virtual const char * getName() const
Name of function binding.
RooAbsIntegrator is the abstract interface for integrators of real-valued functions that implement th...
Bool_t _valid
Is integrator in valid state?
const RooAbsFunc * _function
Pointer to function binding of integrand.
const RooAbsFunc * integrand() const
Return integrand function binding.
Bool_t isValid() const
Is integrator in valid state.
RooArgSet is a container object that can hold multiple RooAbsArg objects.
RooCategory is an object to represent discrete states.
bool defineType(const std::string &label)
Define a state with given name.
Bool_t setLabel(const char *label, bool printError=true) override
Set value by specifying the name of the desired state.
RooIntegrator1D implements an adaptive one-dimensional numerical integration algorithm.
TClass * IsA() const override
Double_t addTrapezoids(Int_t n)
Calculate the n-th stage of refinement of the extended trapezoidal summation rule.
Bool_t checkLimits() const override
Check that our integration range is finite and otherwise return kFALSE.
Double_t _range
! Size of integration range
RooAbsIntegrator * clone(const RooAbsFunc &function, const RooNumIntConfig &config) const override
Clone integrator with new function binding and configuration. Needed by RooNumIntFactory.
void extrapolate(Int_t n)
Extrapolate result to final value.
Double_t _xmin
! Lower integration bound
Double_t * xvec(Double_t &xx)
Bool_t setLimits(Double_t *xmin, Double_t *xmax) override
Change our integration limits.
Int_t _minStepsZero
Minimum number of steps to declare convergence to zero.
Double_t _extrapValue
! Extrapolated value
Int_t _maxSteps
Maximum number of steps.
Bool_t initialize()
Initialize the integrator.
Int_t _fixSteps
Fixed number of steps.
Double_t _epsAbs
Absolute convergence tolerance.
Double_t addMidpoints(Int_t n)
Calculate the n-th stage of refinement of the Second Euler-Maclaurin summation rule which has the use...
Double_t * _d
! Integrator workspace
~RooIntegrator1D() override
Destructor.
Bool_t _useIntegrandLimits
If true limits of function binding are used.
Double_t _epsRel
Relative convergence tolerance.
static void registerIntegrator(RooNumIntFactory &fact)
Register RooIntegrator1D, is parameters and capabilities with RooNumIntFactory.
Double_t * _h
! Integrator workspace
Double_t _savedResult
! Integrator workspace
Double_t _extrapError
! Error on extrapolated value
RooIntegrator1D()
coverity[UNINIT_CTOR] Default constructor
Bool_t _doExtrap
Apply conversion step?
Double_t * _c
! Integrator workspace
Double_t * _s
! Integrator workspace
Double_t integral(const Double_t *yvec=0) override
Calculate numeric integral at given set of function binding parameters.
Double_t _xmax
! Upper integration bound
RooNumIntConfig holds the configuration parameters of the various numeric integrators used by RooReal...
const RooArgSet & getConfigSection(const char *name) const
Retrieve configuration information specific to integrator with given name.
static RooNumIntConfig & defaultConfig()
Return reference to instance of default numeric integrator configuration object.
RooNumIntFactory is a factory to instantiate numeric integrators from a given function binding and a ...
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...
static Int_t isInfinite(Double_t x)
Return true if x is infinite by RooNumBer internal specification.
RooRealVar represents a variable that can be changed from the outside.
Mother of all ROOT objects.
virtual const char * GetName() const
Returns name of object.
VecExpr< UnaryOp< Fabs< T >, VecExpr< A, T, D >, T >, T, D > fabs(const VecExpr< A, T, D > &rhs)
void function(const Char_t *name_, T fun, const Char_t *docstring=0)
static constexpr double ns
static uint64_t sum(uint64_t i)