59 _x(
"x",
"Dependent", this, x),
60 _coefList(
"coefList",
"List of coefficients",this),
66 <<
") WARNING: lowestOrder must be >=0, setting value to 0" << endl ;
73 if (!dynamic_cast<RooAbsReal*>(coef)) {
75 <<
" is not of type RooAbsReal" << endl ;
89 _x(
"x",
"Dependent", this, x),
90 _coefList(
"coefList",
"List of coefficients",this),
101 _x(
"x", this, other.
_x),
125 if (!sz)
return lowestOrder ? 1. : 0.;
136 for (
unsigned i = sz - 1; i--; ) retVal =
_wksp[i] + x * retVal;
137 return retVal *
std::pow(x, lowestOrder);
169 unsigned i = 1 + lowestOrder;
177 for (
unsigned i = sz - 1; i--; )
virtual const char * GetName() const
Returns name of object.
virtual ~RooPolyVar()
Destructor.
Bool_t matchArgs(const RooArgSet &allDeps, RooArgSet &numDeps, const RooArgProxy &a) const
Utility function for use in getAnalyticalIntegral().
Double_t getVal(const RooArgSet *set=0) const
Int_t getAnalyticalIntegral(RooArgSet &allVars, RooArgSet &analVars, const char *rangeName=0) const
Advertise that we can internally integrate over x.
double pow(double, double)
Class RooPolyVar is a RooAbsReal implementing a polynomial in terms of a list of RooAbsReal coefficie...
virtual Bool_t add(const RooAbsArg &var, Bool_t silent=kFALSE)
Reimplementation of standard RooArgList::add()
const RooArgSet * nset() const
Double_t min(const char *rname=0) const
RooAbsReal is the common abstract base class for objects that represent a real value and implements f...
RooFIter fwdIterator() const
Double_t max(const char *rname=0) const
Double_t evaluate() const
do not persist
Double_t analyticalIntegral(Int_t code, const char *rangeName=0) const
Calculate and return analytical integral over x.
RooAbsArg is the common abstract base class for objects that represent a value (of arbitrary type) an...
std::vector< Double_t > _wksp
RooPolyVar()
Default constructor.