50     _varList(
"varList", 
"List of variables", 
this),
 
   51     _pdfList(
"pdfList", 
"List of pdfs", 
this),
 
 
   74     _varList(
"varList", 
"List of variables", 
this),
 
   75     _pdfList(
"pdfList", 
"List of pdfs", 
this),
 
   91      coutE(InputArguments) << 
"RooMomentMorph::ctor(" << 
GetName() << 
") ERROR: mref " << 
mref->GetName() << 
" is not of type RooAbsReal" << std::endl ;
 
   92      throw std::string(
"RooPolyMorh::ctor() ERROR mref is not of type RooAbsReal") ;
 
   95      coutW(InputArguments) << 
"RooMomentMorph::ctor(" << 
GetName() << 
") WARNING mref point " << i << 
" is not a constant, taking a snapshot of its value" << std::endl ;
 
 
  111     _varList(
"varList", 
this, 
other._varList),
 
  112     _pdfList(
"pdfList", 
this, 
other._pdfList),
 
  114     _setting(
other._setting),
 
  115     _useHorizMorph(
other._useHorizMorph)
 
 
  138    coutE(InputArguments) << 
"RooMomentMorph::initialize(" << 
GetName() << 
") ERROR: nPdf != nRefPoints" << std::endl ;
 
  148    dm[i] = (*_mref)[i]-(*_mref)[0];
 
  150    if (i>0) M(0,i) = 0.;
 
  154      M(i,
j) = std::pow(dm[i],(
double)
j);
 
 
  163                                       std::unique_ptr<RooChangeTracker> && 
tracker,
 
 
  182  std::vector<RooAbsReal*> 
myrms(
nVar,null);
 
  183  std::vector<RooAbsReal*> 
mypos(
nVar,null);
 
  197    std::string 
fracName = 
"frac_" + std::to_string(i);
 
  202    if (i<
nPdf) coefList.
add(*frac);
 
  223   mom->setLocalNoDirtyInhibit(
true) ;
 
  224   mom->mean()->setLocalNoDirtyInhibit(
true) ;
 
  254      std::string 
pdfName = 
"pdf_" + std::to_string(i);
 
  303  cache->calculateFractions(*
this, 
false);
 
 
  333  if (cache->
_tracker->hasChanged(
true)) {
 
 
  346  if (cache->
_tracker->hasChanged(
true)) {
 
 
  357  return static_cast<RooRealVar*
>(_frac.at(i))  ;
 
 
  364  return static_cast<RooRealVar*
>(_frac.at(i))  ;
 
 
  373  double dm = 
self.m - (*
self._mref)[0];
 
  385    if (verbose) { std::cout << 
ffrac << std::endl; }
 
  392  switch (
self._setting) {
 
  427         if (frac(i)->getVal() < 0)
 
  428            const_cast<RooRealVar *
>(frac(i))->setVal(0.);
 
 
size_t size(const MatrixT &matrix)
retrieve the size of a square matrix
ROOT::Detail::TRangeCast< T, true > TRangeDynCast
TRangeDynCast is an adapter class that allows the typed iteration through a TCollection.
TMatrixT< Double_t > TMatrixD
char * Form(const char *fmt,...)
Formats a string in a circular formatting buffer.
virtual bool add(const RooAbsArg &var, bool silent=false)
Add the specified argument to list.
Storage_t::size_type size() const
bool addTyped(const RooAbsCollection &list, bool silent=false)
Adds elements of a given RooAbsCollection to the container if they match the specified type.
Abstract interface for all probability density functions.
double getValV(const RooArgSet *set=nullptr) const override
Return current value, normalized by integrating over the observables in nset.
const RooArgSet * nset() const
Abstract base class for objects that represent a real value and implements functionality common to al...
double getVal(const RooArgSet *normalisationSet=nullptr) const
Evaluate object.
Calculates the sum of a set of RooAbsReal terms, or when constructed with two sets,...
RooArgList is a container object that can hold multiple RooAbsArg objects.
RooAbsArg * at(Int_t idx) const
Return object at given index, or nullptr if index is out of range.
RooArgSet is a container object that can hold multiple RooAbsArg objects.
Int_t setObj(const RooArgSet *nset, T *obj, const TNamed *isetRangeName=nullptr)
Setter function without integration set.
T * getObj(const RooArgSet *nset, Int_t *sterileIndex=nullptr, const TNamed *isetRangeName=nullptr)
Getter function without integration set.
Represents a constant real-valued object.
RooCustomizer is a factory class to produce clones of a prototype composite PDF object with the same ...
RooLinearVar is the most general form of a derived real-valued object that can be used by RooRealInte...
RooArgList containedArgs(Action) override
CacheElem(std::unique_ptr< RooAbsPdf > &&sumPdf, std::unique_ptr< RooChangeTracker > &&tracker, const RooArgList &flist)
RooRealVar * frac(Int_t i)
void calculateFractions(const RooMomentMorph &self, bool verbose=true) const
std::unique_ptr< RooAbsPdf > _sumPdf
std::unique_ptr< RooChangeTracker > _tracker
RooObjCacheManager _cacheMgr
friend class CacheElem
Current normalization set.
~RooMomentMorph() override
double evaluate() const override
Evaluate this PDF / function / constant. Needs to be overridden by all derived classes.
RooMomentMorph()
coverity[UNINIT_CTOR]
RooAbsPdf * sumPdf(const RooArgSet *nset)
Int_t ij(const Int_t &i, const Int_t &j) const
RooArgSet * _curNormSet
The cache manager.
int idxmin(const double &m) const
int idxmax(const double &m) const
double getValV(const RooArgSet *set=nullptr) const override
Special version of getVal() overrides RooAbsReal::getVal() to save value of current normalization set...
CacheElem * getCache(const RooArgSet *nset) const
Variable that can be changed from the outside.
void setVal(double value) override
Set value of variable to 'value'.
const T & arg() const
Return reference to object held in proxy.
const char * GetName() const override
Returns name of object.
constexpr Double_t PiOver2()