16 #ifndef ROO_REAL_INTEGRAL 17 #define ROO_REAL_INTEGRAL
virtual const char * GetName() const
Returns name of object.
Bool_t initNumIntegrator() const
(Re)Initialize numerical integration engine if necessary.
RooAbsIntegrator is the abstract interface for integrators of real-valued functions that implement th...
const RooAbsReal & integrand() const
RooArgSet intVars() const
virtual ~RooRealIntegral()
RooNumIntConfig holds the configuration parameters of the various numeric integrators used by RooReal...
RooRealProxy _function
Iterator over lvalue observables with Jacobian.
virtual Bool_t add(const RooAbsCollection &col, Bool_t silent=kFALSE)
Add a collection of arguments to this collection by calling add() for each element in the source coll...
virtual Bool_t isValidReal(Double_t value, Bool_t printError=kFALSE) const
Check if current value is valid.
void setAllowComponentSelection(Bool_t allow)
Set component selection to be allowed/forbidden.
Bool_t _restartNumIntEngine
Bool_t _respectCompSelect
virtual Double_t jacobianProduct() const
Return product of jacobian terms originating from analytical integration.
1-D histogram with a float per channel (see TH1 documentation)}
void printMultiline(std::ostream &os, Int_t contents, Bool_t verbose=kFALSE, TString indent="") const
Print the state of this object to the specified output stream.
Double_t evaluate() const
Perform the integration and return the result.
TIterator * _jacListIter
Iterator over factorizing observables.
const RooArgSet & parameters() const
const RooArgSet & numIntCatVars() const
Iterator abstract base class.
RooRealIntegral performs hybrid numerical/analytical integrals of RooAbsReal objects The class perfor...
#define ClassDef(name, id)
RooAbsIntegrator * _numIntEngine
do not persist
RooNumIntConfig * _iconfig
do not persist
The TNamed class is the base class for all named ROOT classes.
Bool_t isValid() const
Check if current value is valid.
virtual Double_t sum() const
Perform summation of list of category dependents to be integrated.
static Int_t getCacheAllNumeric()
Return minimum dimensions of numeric integration for which values are cached.
RooRealVar represents a fundamental (non-derived) real valued object.
const RooArgSet & numIntRealVars() const
RooArgSet _saveSum
do not persist
Bool_t getAllowComponentSelection() const
Check if component selection is allowed.
virtual void operModeHook()
Cache all integrals with given numeric dimension.
TIterator * _sumCatIter
do not persist
RooListProxy is the concrete proxy for RooArgList objects.
static Int_t _cacheAllNDim
void autoSelectDirtyMode()
Set appropriate cache operation mode for integral depending on cache operation mode of server objects...
const RooArgSet & anaIntVars() const
Bool_t servesExclusively(const RooAbsArg *server, const RooArgSet &exclLVBranches, const RooArgSet &allBranches) const
Utility function that returns true if 'object server' is a server to exactly one of the RooAbsArgs in...
RooAbsReal is the common abstract base class for objects that represent a real value and implements f...
virtual Double_t integrate() const
Perform hybrid numerical/analytical integration over all real-valued dependents.
virtual std::list< Double_t > * plotSamplingHint(RooAbsRealLValue &, Double_t, Double_t) const
Bool_t _cacheNum
cache for set of parameters
Mother of all ROOT objects.
RooAbsCollection is an abstract container object that can hold multiple RooAbsArg objects...
static void setCacheAllNumeric(Int_t ndim)
Global switch to cache all integral values that integrate at least ndim dimensions numerically...
virtual std::list< Double_t > * plotSamplingHint(RooAbsRealLValue &obs, Double_t xlo, Double_t xhi) const
virtual Bool_t redirectServersHook(const RooAbsCollection &newServerList, Bool_t mustReplaceAll, Bool_t nameChange, Bool_t isRecursive)
Intercept server redirects and reconfigure internal object accordingly.
RooAbsRealLValue is the common abstract base class for objects that represent a real value that may a...
virtual RooAbsReal * createIntegral(const RooArgSet &iset, const RooArgSet *nset=0, const RooNumIntConfig *cfg=0, const char *rangeName=0) const
Create an object that represents the integral of the function over one or more observables listed in ...
RooAbsCategory is the common abstract base class for objects that represent a discrete value with a f...
RooSetProxy is the concrete proxy for RooArgSet objects.
RooAbsFunc * _numIntegrand
do not persist
RooRealProxy is the concrete proxy for RooAbsReal objects A RooRealProxy is the general mechanism to ...
RooAbsArg is the common abstract base class for objects that represent a value (of arbitrary type) an...
const RooAbsReal & arg() const
void printMetaArgs(std::ostream &os) const
Customized printing of arguments of a RooRealIntegral to more intuitively reflect the contents of the...
TNamed * _rangeName
do not persist
Abstract interface for evaluating a real-valued function of one real variable and performing numerica...
virtual Double_t getValV(const RooArgSet *set=0) const
Return value of object.
void setCacheNumeric(Bool_t flag)
virtual TObject * clone(const char *newname) const