75 _x(
"x",
"Dependent", this,
x),
76 _coefList(
"coefList",
"List of coefficients",this),
77 _lowestOrder(lowestOrder)
81 coutE(InputArguments) <<
"RooPolynomial::ctor(" <<
GetName()
82 <<
") WARNING: lowestOrder must be >=0, setting value to 0" << endl ;
90 coutE(InputArguments) <<
"RooPolynomial::ctor(" <<
GetName() <<
") ERROR: coefficient " << coef->
GetName()
91 <<
" is not of type RooAbsReal" << endl ;
103 _x(
"x",
"Dependent", this,
x),
104 _coefList(
"coefList",
"List of coefficients",this),
113 _x(
"x", this, other._x),
114 _coefList(
"coefList",this,other._coefList),
115 _lowestOrder(other._lowestOrder)
132 if (!sz)
return lowestOrder ? 1. : 0.;
143 for (
unsigned i = sz - 1; i--; ) retVal =
_wksp[i] +
x * retVal;
144 return retVal * std::pow(
x, lowestOrder) + (lowestOrder ? 1.0 : 0.0);
186 unsigned i = 1 + lowestOrder;
194 for (
unsigned i = sz - 1; i--; )
196 return max * std::pow(
xmax, 1 + lowestOrder) - min * std::pow(
xmin, 1 + lowestOrder) +
RooAbsArg is the common abstract base class for objects that represent a value and a "shape" in RooFi...
RooFIter fwdIterator() const
One-time forward iterator.
const RooArgSet * nset() const
RooAbsReal is the common abstract base class for objects that represent a real value and implements f...
Bool_t matchArgs(const RooArgSet &allDeps, RooArgSet &numDeps, const RooArgProxy &a) const
Utility function for use in getAnalyticalIntegral().
RooArgList is a container object that can hold multiple RooAbsArg objects.
RooArgSet is a container object that can hold multiple RooAbsArg objects.
A one-time forward iterator working on RooLinkedList or RooAbsCollection.
RooAbsArg * next()
Return next element or nullptr if at end.
virtual Bool_t add(const RooAbsArg &var, Bool_t silent=kFALSE) override
Reimplementation of standard RooArgList::add()
RooPolynomial implements a polynomial p.d.f of the form.
Int_t getAnalyticalIntegral(RooArgSet &allVars, RooArgSet &analVars, const char *rangeName=0) const
Advertise to RooFit that this function can be analytically integrated.
Double_t analyticalIntegral(Int_t code, const char *rangeName=0) const
Do the analytical integral according to the code that was returned by getAnalyticalIntegral().
RooPolynomial()
coverity[UNINIT_CTOR]
double evaluate() const
do not persist
std::vector< Double_t > _wksp
virtual ~RooPolynomial()
Destructor.
double min(const char *rname=0) const
Query lower limit of range. This requires the payload to be RooAbsRealLValue or derived.
double max(const char *rname=0) const
Query upper limit of range. This requires the payload to be RooAbsRealLValue or derived.
virtual const char * GetName() const
Returns name of object.