106 if (
r->getVal() !=
x2.getRealValue(
r->
GetName())) {
126 if (
fMap.size() > 0) {
128 fIt->first->setVal(
fIt->second->getVal(&
x));
134 if (
fMap.size() > 0) {
146 fIt->first->setVal(
fIt->second->getVal(&
x));
184 fIt->first->setVal(
fIt->second->getVal(&
x2));
205 fMap.insert(pair<RooRealVar*, RooAbsReal*>(&proposalParam, &
update));
static void update(gsl_integration_workspace *workspace, double a1, double b1, double area1, double error1, double a2, double b2, double area2, double error2)
static const double x2[5]
static const double x1[5]
RooArgSet * getObservables(const RooArgSet &set, Bool_t valueOnly=kTRUE) const
Return the observables of this pdf given a set of observables.
RooAbsData is the common abstract base class for binned and unbinned datasets.
RooDataSet * generate(const RooArgSet &whatVars, Int_t nEvents, const RooCmdArg &arg1, const RooCmdArg &arg2=RooCmdArg::none(), const RooCmdArg &arg3=RooCmdArg::none(), const RooCmdArg &arg4=RooCmdArg::none(), const RooCmdArg &arg5=RooCmdArg::none())
See RooAbsPdf::generate(const RooArgSet&,const RooCmdArg&,const RooCmdArg&,const RooCmdArg&,...
RooAbsReal is the common abstract base class for objects that represent a real value and implements f...
Double_t getVal(const RooArgSet *normalisationSet=nullptr) const
Evaluate object.
RooArgSet is a container object that can hold multiple RooAbsArg objects.
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 void addClone(const RooAbsCollection &col, Bool_t silent=kFALSE)
Add a collection of arguments to this collection by calling addOwned() for each element in the source...
virtual const RooArgSet * get(Int_t index) const
Return RooArgSet with coordinates of event 'index'.
RooRealVar represents a fundamental (non-derived) real valued object.
PdfProposal is a concrete implementation of the ProposalFunction interface.
std::map< RooRealVar *, RooAbsReal * >::iterator fIt
map of values in pdf to update
virtual Bool_t IsSymmetric(RooArgSet &x1, RooArgSet &x2)
Determine whether or not the proposal density is symmetric for points x1 and x2 - that is,...
RooArgSet fMaster
the cached proposal data set
virtual void AddMapping(RooRealVar &proposalParam, RooAbsReal &update)
specify a mapping between a parameter of the proposal function and a parameter of interest.
virtual Double_t GetProposalDensity(RooArgSet &x1, RooArgSet &x2)
Return the probability of proposing the point x1 given the starting point x2.
virtual Bool_t Equals(RooArgSet &x1, RooArgSet &x2)
whether we own the proposal density function
RooDataSet * fCache
our position in the cached proposal data set
RooArgSet fLastX
pdf iterator
Bool_t fOwnsPdf
pointers to master variables needed for updates
Int_t fCacheSize
the last point we were at
Int_t fCachePosition
how many points to generate each time
std::map< RooRealVar *, RooAbsReal * > fMap
the proposal density function
virtual void Propose(RooArgSet &xPrime, RooArgSet &x)
Populate xPrime with a new proposed point.
PdfProposal()
By default, PdfProposal does NOT own the PDF that serves as the proposal density function.
ProposalFunction is an interface for all proposal functions that would be used with a Markov Chain Mo...
Iterator abstract base class.
virtual TObject * Next()=0
virtual const char * GetName() const
Returns name of object.
Template specialisation used in RooAbsArg:
Namespace for the RooStats classes.
void SetParameters(const RooArgSet *desiredVals, RooArgSet *paramsToChange)