12#ifndef ROOSTATS_MarkovChain
13#define ROOSTATS_MarkovChain
41 virtual void Add(
RooArgSet& entry,
double nllValue,
double weight = 1.0);
44 virtual void AddFast(
RooArgSet& entry,
double nllValue,
double weight = 1.0);
48 virtual void Add(
MarkovChain& otherChain,
double discardEntries = 0.0);
58 virtual double Weight()
const;
64 virtual double NLL()
const;
80 R__DEPRECATED(6,36,
"This functionality can be implemented by calling RooAbsData::reduce on the Markov Chain's RooDataSet* (obtained using MarkovChain::GetAsConstDataSet)");
98 R__DEPRECATED(6,36,
"This functionality can be implemented by calling RooAbsData::reduce on the Markov Chain's RooDataSet* (obtained using MarkovChain::GetAsConstDataSet) and then obtaining its binned clone.");
#define R__DEPRECATED(MAJOR, MINOR, REASON)
#define ClassDefOverride(name, id)
TObject * Clone(const char *newname=nullptr) const override
Make a clone of an object using the Streamer facility.
Abstract container object that can hold multiple RooAbsArg objects.
virtual Int_t numEntries() const
Return number of entries in dataset, i.e., count unweighted entries.
RooArgSet is a container object that can hold multiple RooAbsArg objects.
Named container for two doubles, two integers two object points and three string pointers that can be...
Container class to hold unbinned data.
const RooArgSet * get(Int_t index) const override
Return RooArgSet with coordinates of event 'index'.
RooRealVar * weightVar() const
Returns a pointer to the weight variable (if set).
Variable that can be changed from the outside.
Stores the steps in a Markov Chain of points.
virtual RooRealVar * GetWeightVar() const
get a clone of the weight variable
virtual THnSparse * GetAsSparseHist(RooAbsCollection &whichVars) const
virtual void AddFast(RooArgSet &entry, double nllValue, double weight=1.0)
add an entry to the chain ONLY IF you have constructed with parameters or called SetParameters
virtual double NLL() const
get the NLL value of the current (last indexed) entry
virtual void AddWithBurnIn(MarkovChain &otherChain, Int_t burnIn=0)
add another markov chain
virtual RooFit::OwningPtr< RooDataHist > GetAsDataHist(RooArgSet *whichVars=nullptr) const
get this MarkovChain as a RooDataHist whose entries contain the values of whichVars.
virtual void Add(RooArgSet &entry, double nllValue, double weight=1.0)
safely add an entry to the chain
virtual RooFit::OwningPtr< RooDataSet > GetAsDataSet(RooArgSet *whichVars=nullptr) const
get this MarkovChain as a RooDataSet whose entries contain the values of whichVars.
virtual THnSparse * GetAsSparseHist(RooAbsCollection *whichVars=nullptr) const
Get a clone of the markov chain on which this interval is based as a sparse histogram.
virtual const RooArgSet * Get() const
get the entry at the current position
virtual void SetParameters(RooArgSet ¶meters)
set which of your parameters this chain should store
virtual RooRealVar * GetNLLVar() const
get a clone of the NLL variable
virtual const RooArgSet * Get(Int_t i) const
get the entry at position i
virtual double Weight() const
get the weight of the current (last indexed) entry
virtual const RooDataSet * GetAsConstDataSet() const
virtual Int_t Size() const
get the number of steps in the chain
Efficient multidimensional histogram.
The TNamed class is the base class for all named ROOT classes.
T * OwningPtr
An alias for raw pointers for indicating that the return type of a RooFit function is an owning point...
Namespace for the RooStats classes.