Logo ROOT  
Reference Guide
Loading...
Searching...
No Matches
RooIntegralMorph::MorphCacheElem Class Reference

Definition at line 52 of file RooIntegralMorph.h.

Public Types

enum  Action { OperModeChange , OptimizeCaching , FindConstantNodes }

Public Member Functions

 MorphCacheElem (RooIntegralMorph &self, const RooArgSet *nset)
 Construct of cache element, copy relevant input from RooIntegralMorph, create the cdfs from the input p.d.fs and instantiate the root finders on the cdfs to perform the inversion.
 ~MorphCacheElem () override
 Destructor.
void calculate (TIterator *iter)
 Calculate shape of p.d.f for x,alpha values defined by dIter iterator over cache histogram.
RooArgList containedArgs (Action) override
 Return all RooAbsArg components contained in this cache.
virtual void findConstantNodes (const RooArgSet &obs, RooArgSet &cacheList, RooLinkedList &processedNodes)
 Interface for constant term optimization calls.
RooDataHisthist ()
virtual TClassIsA () const
const RooArgSetnset ()
virtual void operModeHook (RooAbsArg::OperMode)
 Interface for changes of operation mode.
virtual void optimizeCacheMode (const RooArgSet &obs, RooArgSet &optNodes, RooLinkedList &processedNodes)
 Interface for cache optimization calls.
RooChangeTrackerparamTracker ()
RooHistPdfpdf ()
void printCompactTreeHook (std::ostream &, const char *, Int_t, Int_t) override
 Print contents of cache when printing self as part of object tree.
virtual bool redirectServersHook (const RooAbsCollection &, bool, bool, bool)
 Interface for server redirect calls.
void setOwner (RooAbsArg *owner)
void setUnitNorm ()
virtual void Streamer (TBuffer &)
void StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b)

Static Public Member Functions

static TClassClass ()
static const char * Class_Name ()
static constexpr Version_t Class_Version ()
static const char * DeclFileName ()

Protected Member Functions

Int_t binX (double x)
 Return the bin number enclosing the given x value.
double calcX (double y, bool &ok)
 Calculate the x value of the output p.d.f at the given cdf value y.
void fillGap (Int_t ixlo, Int_t ixhi, double splitPoint=0.5)
 Fill all empty histogram bins between bins ixlo and ixhi.
void findRange ()
 Determine which range of y values can be mapped to x values from the numeric inversion of the input c.d.fs.
void interpolateGap (Int_t ixlo, Int_t ixhi)
 Fill empty histogram bins between ixlo and ixhi with values obtained from linear interpolation of ixlo,ixhi elements.

Protected Attributes

RooAbsReal_alpha
std::unique_ptr< RooAbsReal_c1
std::unique_ptr< RooAbsReal_c2
std::vector< double_calcX
std::unique_ptr< RooAbsFunc_cb1
std::unique_ptr< RooAbsFunc_cb2
Int_t _ccounter
std::unique_ptr< RooArgSet_nset
RooAbsArg_owner
 ! Pointer to owning RooAbsArg
RooAbsPdf_pdf1
RooAbsPdf_pdf2
std::unique_ptr< RooBrentRootFinder_rf1
std::unique_ptr< RooBrentRootFinder_rf2
RooIntegralMorph_self
RooRealVar_x
std::vector< double_yatX
Int_t _yatXmax
Int_t _yatXmin
double _ycutoff

Private Attributes

std::unique_ptr< RooDataHist_hist
std::unique_ptr< RooAbsReal_norm
std::unique_ptr< RooChangeTracker_paramTracker
std::unique_ptr< RooHistPdf_pdf

#include <RooIntegralMorph.h>

Inheritance diagram for RooIntegralMorph::MorphCacheElem:
RooAbsCachedPdf::PdfCacheElem RooAbsCacheElement

Member Enumeration Documentation

◆ Action

Enumerator
OperModeChange 
OptimizeCaching 
FindConstantNodes 

Definition at line 39 of file RooAbsCacheElement.h.

Constructor & Destructor Documentation

◆ MorphCacheElem()

RooIntegralMorph::MorphCacheElem::MorphCacheElem ( RooIntegralMorph & self,
const RooArgSet * nset )

Construct of cache element, copy relevant input from RooIntegralMorph, create the cdfs from the input p.d.fs and instantiate the root finders on the cdfs to perform the inversion.

Definition at line 237 of file RooIntegralMorph.cxx.

◆ ~MorphCacheElem()

RooIntegralMorph::MorphCacheElem::~MorphCacheElem ( )
override

Destructor.

Definition at line 274 of file RooIntegralMorph.cxx.

Member Function Documentation

◆ binX()

Int_t RooIntegralMorph::MorphCacheElem::binX ( double x)
protected

Return the bin number enclosing the given x value.

Definition at line 305 of file RooIntegralMorph.cxx.

◆ calculate()

void RooIntegralMorph::MorphCacheElem::calculate ( TIterator * iter)

Calculate shape of p.d.f for x,alpha values defined by dIter iterator over cache histogram.

Definition at line 316 of file RooIntegralMorph.cxx.

◆ calcX()

double RooIntegralMorph::MorphCacheElem::calcX ( double y,
bool & ok )
protected

Calculate the x value of the output p.d.f at the given cdf value y.

The ok boolean is filled with the success status of the operation.

Definition at line 282 of file RooIntegralMorph.cxx.

◆ Class()

TClass * RooAbsCacheElement::Class ( )
staticinherited
Returns
TClass describing this class

◆ Class_Name()

const char * RooAbsCacheElement::Class_Name ( )
staticinherited
Returns
Name of this class

◆ Class_Version()

constexpr Version_t RooAbsCacheElement::Class_Version ( )
inlinestaticconstexprinherited
Returns
Version of this class

Definition at line 55 of file RooAbsCacheElement.h.

◆ containedArgs()

RooArgList RooIntegralMorph::MorphCacheElem::containedArgs ( Action action)
overridevirtual

Return all RooAbsArg components contained in this cache.

Implements RooAbsCacheElement.

Definition at line 217 of file RooIntegralMorph.cxx.

◆ DeclFileName()

const char * RooAbsCacheElement::DeclFileName ( )
inlinestaticinherited
Returns
Name of the file containing the class declaration

Definition at line 55 of file RooAbsCacheElement.h.

◆ fillGap()

void RooIntegralMorph::MorphCacheElem::fillGap ( Int_t ixlo,
Int_t ixhi,
double splitPoint = 0.5 )
protected

Fill all empty histogram bins between bins ixlo and ixhi.

The value of 'splitPoint' defines the split point for the recursive division strategy to fill the gaps If the midpoint value of y is very close to the midpoint in x, use interpolation to fill the gaps, otherwise the intervals again.

Definition at line 447 of file RooIntegralMorph.cxx.

◆ findConstantNodes()

void RooAbsCacheElement::findConstantNodes ( const RooArgSet & obs,
RooArgSet & cacheList,
RooLinkedList & processedNodes )
virtualinherited

Interface for constant term optimization calls.

The default implementation is to forward all these calls to all contained RooAbsArg objects as publicized through containedArg()

Definition at line 71 of file RooAbsCacheElement.cxx.

◆ findRange()

void RooIntegralMorph::MorphCacheElem::findRange ( )
protected

Determine which range of y values can be mapped to x values from the numeric inversion of the input c.d.fs.

Start with a y range of [0.1-0.9] and push boundaries outward with a factor of 1/sqrt(10). Stop iteration if inverted x values no longer change

Definition at line 560 of file RooIntegralMorph.cxx.

◆ hist()

RooDataHist * RooAbsCachedPdf::PdfCacheElem::hist ( )
inlineinherited

Definition at line 71 of file RooAbsCachedPdf.h.

◆ interpolateGap()

void RooIntegralMorph::MorphCacheElem::interpolateGap ( Int_t ixlo,
Int_t ixhi )
protected

Fill empty histogram bins between ixlo and ixhi with values obtained from linear interpolation of ixlo,ixhi elements.

Definition at line 531 of file RooIntegralMorph.cxx.

◆ IsA()

virtual TClass * RooAbsCacheElement::IsA ( ) const
inlinevirtualinherited
Returns
TClass describing current object

Definition at line 55 of file RooAbsCacheElement.h.

◆ nset()

const RooArgSet & RooAbsCachedPdf::PdfCacheElem::nset ( )
inlineinherited

Definition at line 72 of file RooAbsCachedPdf.h.

◆ operModeHook()

virtual void RooAbsCacheElement::operModeHook ( RooAbsArg::OperMode )
inlinevirtualinherited

Interface for changes of operation mode.

Reimplemented in RooLagrangianMorphFunc::CacheElem.

Definition at line 42 of file RooAbsCacheElement.h.

◆ optimizeCacheMode()

void RooAbsCacheElement::optimizeCacheMode ( const RooArgSet & obs,
RooArgSet & optNodes,
RooLinkedList & processedNodes )
virtualinherited

Interface for cache optimization calls.

The default implementation is to forward all these calls to all contained RooAbsArg objects as publicized through containedArg()

Definition at line 58 of file RooAbsCacheElement.cxx.

◆ paramTracker()

RooChangeTracker * RooAbsCachedPdf::PdfCacheElem::paramTracker ( )
inlineinherited

Definition at line 73 of file RooAbsCachedPdf.h.

◆ pdf()

RooHistPdf * RooAbsCachedPdf::PdfCacheElem::pdf ( )
inlineinherited

Definition at line 70 of file RooAbsCachedPdf.h.

◆ printCompactTreeHook()

void RooAbsCachedPdf::PdfCacheElem::printCompactTreeHook ( std::ostream & os,
const char * indent,
Int_t curElem,
Int_t maxElem )
overridevirtualinherited

Print contents of cache when printing self as part of object tree.

Reimplemented from RooAbsCacheElement.

Definition at line 279 of file RooAbsCachedPdf.cxx.

◆ redirectServersHook()

bool RooAbsCacheElement::redirectServersHook ( const RooAbsCollection & ,
bool ,
bool ,
bool  )
virtualinherited

Interface for server redirect calls.

Definition at line 37 of file RooAbsCacheElement.cxx.

◆ setOwner()

void RooAbsCacheElement::setOwner ( RooAbsArg * owner)
inlineinherited

Definition at line 46 of file RooAbsCacheElement.h.

◆ setUnitNorm()

void RooAbsCachedPdf::PdfCacheElem::setUnitNorm ( )
inlineinherited

Definition at line 74 of file RooAbsCachedPdf.h.

◆ Streamer()

virtual void RooAbsCacheElement::Streamer ( TBuffer & )
virtualinherited

◆ StreamerNVirtual()

void RooAbsCacheElement::StreamerNVirtual ( TBuffer & ClassDef_StreamerNVirtual_b)
inlineinherited

Definition at line 55 of file RooAbsCacheElement.h.

Member Data Documentation

◆ _alpha

RooAbsReal* RooIntegralMorph::MorphCacheElem::_alpha
protected

Definition at line 72 of file RooIntegralMorph.h.

◆ _c1

std::unique_ptr<RooAbsReal> RooIntegralMorph::MorphCacheElem::_c1
protected

Definition at line 73 of file RooIntegralMorph.h.

◆ _c2

std::unique_ptr<RooAbsReal> RooIntegralMorph::MorphCacheElem::_c2
protected

Definition at line 74 of file RooIntegralMorph.h.

◆ _calcX

std::vector<double> RooIntegralMorph::MorphCacheElem::_calcX
protected

Definition at line 81 of file RooIntegralMorph.h.

◆ _cb1

std::unique_ptr<RooAbsFunc> RooIntegralMorph::MorphCacheElem::_cb1
protected

Definition at line 75 of file RooIntegralMorph.h.

◆ _cb2

std::unique_ptr<RooAbsFunc> RooIntegralMorph::MorphCacheElem::_cb2
protected

Definition at line 76 of file RooIntegralMorph.h.

◆ _ccounter

Int_t RooIntegralMorph::MorphCacheElem::_ccounter
protected

Definition at line 83 of file RooIntegralMorph.h.

◆ _hist

std::unique_ptr<RooDataHist> RooAbsCachedPdf::PdfCacheElem::_hist
privateinherited

Definition at line 80 of file RooAbsCachedPdf.h.

◆ _norm

std::unique_ptr<RooAbsReal> RooAbsCachedPdf::PdfCacheElem::_norm
privateinherited

Definition at line 82 of file RooAbsCachedPdf.h.

◆ _nset

std::unique_ptr<RooArgSet> RooIntegralMorph::MorphCacheElem::_nset
protected

Definition at line 68 of file RooIntegralMorph.h.

◆ _owner

RooAbsArg* RooAbsCacheElement::_owner
protectedinherited

! Pointer to owning RooAbsArg

Definition at line 53 of file RooAbsCacheElement.h.

◆ _paramTracker

std::unique_ptr<RooChangeTracker> RooAbsCachedPdf::PdfCacheElem::_paramTracker
privateinherited

Definition at line 79 of file RooAbsCachedPdf.h.

◆ _pdf

std::unique_ptr<RooHistPdf> RooAbsCachedPdf::PdfCacheElem::_pdf
privateinherited

Definition at line 78 of file RooAbsCachedPdf.h.

◆ _pdf1

RooAbsPdf* RooIntegralMorph::MorphCacheElem::_pdf1
protected

Definition at line 69 of file RooIntegralMorph.h.

◆ _pdf2

RooAbsPdf* RooIntegralMorph::MorphCacheElem::_pdf2
protected

Definition at line 70 of file RooIntegralMorph.h.

◆ _rf1

std::unique_ptr<RooBrentRootFinder> RooIntegralMorph::MorphCacheElem::_rf1
protected

Definition at line 77 of file RooIntegralMorph.h.

◆ _rf2

std::unique_ptr<RooBrentRootFinder> RooIntegralMorph::MorphCacheElem::_rf2
protected

Definition at line 78 of file RooIntegralMorph.h.

◆ _self

RooIntegralMorph* RooIntegralMorph::MorphCacheElem::_self
protected

Definition at line 67 of file RooIntegralMorph.h.

◆ _x

RooRealVar* RooIntegralMorph::MorphCacheElem::_x
protected

Definition at line 71 of file RooIntegralMorph.h.

◆ _yatX

std::vector<double> RooIntegralMorph::MorphCacheElem::_yatX
protected

Definition at line 80 of file RooIntegralMorph.h.

◆ _yatXmax

Int_t RooIntegralMorph::MorphCacheElem::_yatXmax
protected

Definition at line 82 of file RooIntegralMorph.h.

◆ _yatXmin

Int_t RooIntegralMorph::MorphCacheElem::_yatXmin
protected

Definition at line 82 of file RooIntegralMorph.h.

◆ _ycutoff

double RooIntegralMorph::MorphCacheElem::_ycutoff
protected

Definition at line 85 of file RooIntegralMorph.h.


The documentation for this class was generated from the following files: