56void MultivariateGaussianTest(
Int_t dim = 4,
Int_t nPOI = 2)
70 for (i = 0; i < dim; i++) {
75 char *mu_name =
Form(
"mu_x%d", i);
76 mu_x =
new RooRealVar(mu_name, mu_name, 0, -2, 2);
81 for (i = 0; i < nPOI; i++) {
82 poi.
add(*muVec.
at(i));
87 for (i = 0; i < dim; i++) {
88 for (j = 0; j < dim; j++) {
106 modelConfig.SetPdf(mvg);
107 modelConfig.SetParametersOfInterest(poi);
125 mc.SetConfidenceLevel(0.95);
126 mc.SetNumBurnInSteps(100);
127 mc.SetNumIters(10000);
129 mc.SetProposalFunction(*pdfProp);
136 plc.SetConfidenceLevel(0.95);
143 mcPlot.SetLineColor(
kGreen);
144 mcPlot.SetLineWidth(2);
154 cout <<
"MCMC interval: [" << ll <<
", " << ul <<
"]" << endl;
163 cout <<
"MCMC interval on p0: [" << ll <<
", " << ul <<
"]" << endl;
166 cout <<
"MCMC interval on p1: [" << ll <<
", " << ul <<
"]" << endl;
171 mcPlot.DrawChainScatter(*p0, *p1);
char * Form(const char *fmt,...)
virtual Bool_t add(const RooAbsArg &var, Bool_t silent=kFALSE)
Add the specified argument to list.
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.
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...
RooDataSet is a container class to hold unbinned data.
RooFitResult is a container class to hold the input and output of a PDF fit to a dataset.
const TMatrixDSym & covarianceMatrix() const
Return covariance matrix.
const RooArgList & floatParsFinal() const
Multivariate Gaussian p.d.f.
RooRealVar represents a variable that can be changed from the outside.
This class provides simple and straightforward utilities to plot a LikelihoodInterval object.
LikelihoodInterval is a concrete implementation of the RooStats::ConfInterval interface.
Bayesian Calculator estimating an interval or a credible region using the Markov-Chain Monte Carlo me...
This class provides simple and straightforward utilities to plot a MCMCInterval object.
MCMCInterval is a concrete implementation of the RooStats::ConfInterval interface.
virtual Double_t UpperLimit(RooRealVar ¶m)
get the highest value of param that is within the confidence interval
virtual RooArgList * GetAxes()
return a list of RooRealVars representing the axes you own the returned RooArgList
virtual Double_t LowerLimit(RooRealVar ¶m)
get the lowest value of param that is within the confidence interval
ModelConfig is a simple class that holds configuration information specifying how a model should be u...
The ProfileLikelihoodCalculator is a concrete implementation of CombinedCalculator (the interface cla...
ProposalFunction is an interface for all proposal functions that would be used with a Markov Chain Mo...
virtual void SetCovMatrix(const TMatrixDSym &covMatrix)
virtual void SetUpdateProposalParameters(Bool_t updateParams)
virtual ProposalFunction * GetProposalFunction()
virtual void SetVariables(RooArgList &vars)
virtual void SetCacheSize(Int_t size)
The RooWorkspace is a persistable container for RooFit projects.
virtual void Update()
Update canvas pad buffers.
void Start(Bool_t reset=kTRUE)
Start the stopwatch.
void Print(Option_t *option="") const
Print the real and cpu time passed between the start and stop events.
The namespace RooFit contains mostly switches that change the behaviour of functions of PDFs (or othe...
RooCmdArg Save(Bool_t flag=kTRUE)
Namespace for the RooStats classes.