57 _x(
"x",
"Dependent", this, x),
58 _coefList(
"coefficients",
"List of coefficients",this)
63 if (!dynamic_cast<RooAbsReal*>(coef)) {
64 cout <<
"RooBernstein::ctor(" <<
GetName() <<
") ERROR: coefficient " << coef->
GetName()
65 <<
" is not of type RooAbsReal" << endl ;
79 _x(
"x", this, other.
_x),
98 }
else if(degree == 1) {
104 }
else if(degree == 2) {
109 return (a2 * x + a1) * x + a0;
111 }
else if(degree > 2) {
117 for(
Int_t i = 1; i < degree; i++) {
136 if (rangeName && strlen(rangeName)) {
156 for (
int i=0; i<=degree; ++i){
161 for (
int j=i; j<=degree; ++j){
virtual const char * GetName() const
Returns name of object.
TIterator * createIterator(Bool_t dir=kIterForward) const
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
Bernstein basis polynomials are positive-definite in the range [0,1].
Int_t getAnalyticalIntegral(RooArgSet &allVars, RooArgSet &analVars, const char *rangeName=0) const
No analytical calculation available (yet) of integrals over subranges.
Iterator abstract base class.
Double_t analyticalIntegral(Int_t code, const char *rangeName=0) const
Implements the actual analytical integral(s) advertised by getAnalyticalIntegral. ...
double pow(double, double)
virtual Bool_t add(const RooAbsArg &var, Bool_t silent=kFALSE)
Reimplementation of standard RooArgList::add()
Double_t evaluate() const
Double_t Binomial(Int_t n, Int_t k)
Calculate the binomial coefficient n over k.
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
RooAbsPdf is the abstract interface for all probability density functions The class provides hybrid a...
virtual TObject * Next()=0
RooAbsArg is the common abstract base class for objects that represent a value (of arbitrary type) an...
double norm(double *x, double *p)