91 BinCountTestStat(
void) : fColumnName(
"tmp") {}
92 BinCountTestStat(
string columnName) : fColumnName(columnName) {}
117 void HybridInstructional()
147 w->
factory(
"Poisson::px(x[150,0,500],sum::splusb(s[0,0,100],b[100,0,300]))");
148 w->
factory(
"Poisson::py(y[100,0,500],prod::taub(tau[1.],b))");
149 w->
factory(
"PROD::model(px,py)");
150 w->
factory(
"Uniform::prior_b(b)");
176 w->
factory(
"PROJ::averagedModel(PROD::foo(px|b,py,prior_b),b)");
198 cout <<
"-----------------------------------------" << endl;
199 cout <<
"Part 2" << endl;
200 cout <<
"Hybrid p-value from direct integration = " << 1 - cdf->
getVal() << endl;
213 cout <<
"-----------------------------------------" << endl;
214 cout <<
"Part 3" << endl;
215 std::cout <<
"Z_Bi p-value (analytic): " << p_Bi << std::endl;
216 std::cout <<
"Z_Bi significance (analytic): " << Z_Bi << std::endl;
245 data->
add(*w->
set(
"obs"));
251 b_model.SetPdf(*w->
pdf(
"px"));
252 b_model.SetObservables(*w->
set(
"obs"));
253 b_model.SetParametersOfInterest(*w->
set(
"poi"));
255 b_model.SetSnapshot(*w->
set(
"poi"));
259 sb_model.SetPdf(*w->
pdf(
"px"));
260 sb_model.SetObservables(*w->
set(
"obs"));
261 sb_model.SetParametersOfInterest(*w->
set(
"poi"));
263 sb_model.SetSnapshot(*w->
set(
"poi"));
273 BinCountTestStat binCount(
"x");
295 w->
factory(
"Gaussian::gauss_prior(b,y, expr::sqrty('sqrt(y)',y))");
299 w->
factory(
"Lognormal::lognorm_prior(b,y, expr::kappa('1+1./sqrt(y)',y))");
321 hc1.SetToys(20000, 1000);
322 hc1.ForcePriorNuisanceAlt(*w->
pdf(
"py"));
323 hc1.ForcePriorNuisanceNull(*w->
pdf(
"py"));
345 cout <<
"-----------------------------------------" << endl;
346 cout <<
"Part 4" << endl;
366 slrts.SetNullParameters(*b_model.GetSnapshot());
367 slrts.SetAltParameters(*sb_model.GetSnapshot());
374 hc2.SetToys(20000, 1000);
375 hc2.ForcePriorNuisanceAlt(*w->
pdf(
"py"));
376 hc2.ForcePriorNuisanceNull(*w->
pdf(
"py"));
396 cout <<
"-----------------------------------------" << endl;
397 cout <<
"Part 5" << endl;
428 dataXY->
add(*w->
set(
"obsXY"));
432 b_modelXY.SetPdf(*w->
pdf(
"model"));
433 b_modelXY.SetObservables(*w->
set(
"obsXY"));
434 b_modelXY.SetParametersOfInterest(*w->
set(
"poi"));
436 b_modelXY.SetSnapshot(*w->
set(
"poi"));
440 sb_modelXY.SetPdf(*w->
pdf(
"model"));
441 sb_modelXY.SetObservables(*w->
set(
"obsXY"));
442 sb_modelXY.SetParametersOfInterest(*w->
set(
"poi"));
444 sb_modelXY.SetSnapshot(*w->
set(
"poi"));
459 ropl.SetSubtractMLE(
false);
475 w->
factory(
"Gamma::gamma_y0(b,sum::temp0(y0,1),1,0)");
476 w->
factory(
"Gaussian::gauss_prior_y0(b,y0, expr::sqrty0('sqrt(y0)',y0))");
483 hc3.SetToys(30000, 1000);
484 hc3.ForcePriorNuisanceAlt(*w->
pdf(
"gamma_y0"));
485 hc3.ForcePriorNuisanceNull(*w->
pdf(
"gamma_y0"));
505 cout <<
"-----------------------------------------" << endl;
506 cout <<
"Part 6" << endl;
515 c->GetPad(4)->SetLogy();
519 c->SaveAs(
"zbi.pdf");
#define ClassDef(name, id)
RooAbsData is the common abstract base class for binned and unbinned datasets.
virtual const RooArgSet * get() const
virtual Int_t numEntries() const
RooAbsReal * createCdf(const RooArgSet &iset, const RooArgSet &nset=RooArgSet())
Create a cumulative distribution function of this p.d.f in terms of the observables listed in iset.
virtual RooPlot * plotOn(RooPlot *frame, const RooCmdArg &arg1=RooCmdArg::none(), const RooCmdArg &arg2=RooCmdArg::none(), const RooCmdArg &arg3=RooCmdArg::none(), const RooCmdArg &arg4=RooCmdArg::none(), const RooCmdArg &arg5=RooCmdArg::none(), const RooCmdArg &arg6=RooCmdArg::none(), const RooCmdArg &arg7=RooCmdArg::none(), const RooCmdArg &arg8=RooCmdArg::none(), const RooCmdArg &arg9=RooCmdArg::none(), const RooCmdArg &arg10=RooCmdArg::none()) const
Helper calling plotOn(RooPlot*, RooLinkedList&) const.
RooPlot * frame(const RooCmdArg &arg1, const RooCmdArg &arg2=RooCmdArg::none(), const RooCmdArg &arg3=RooCmdArg::none(), const RooCmdArg &arg4=RooCmdArg::none(), const RooCmdArg &arg5=RooCmdArg::none(), const RooCmdArg &arg6=RooCmdArg::none(), const RooCmdArg &arg7=RooCmdArg::none(), const RooCmdArg &arg8=RooCmdArg::none()) const
Create a new RooPlot on the heap with a drawing frame initialized for this object,...
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.
Double_t getRealValue(const char *name, Double_t defVal=0, Bool_t verbose=kFALSE) const
Get value of a RooAbsReal stored in set with given name.
RooDataSet is a container class to hold unbinned data.
virtual void add(const RooArgSet &row, Double_t weight=1.0, Double_t weightError=0) override
Add a data point, with its coordinates specified in the 'data' argset, to the data set.
static RooMsgService & instance()
Return reference to singleton instance.
void setGlobalKillBelow(RooFit::MsgLevel level)
RooFit::MsgLevel globalKillBelow() const
A RooPlot is a plot frame and a container for graphics objects within that frame.
virtual void Draw(Option_t *options=0)
Draw this plot and all of the elements it contains.
virtual void setVal(Double_t value)
Set value of variable to 'value'.
Same purpose as HybridCalculatorOriginal, but different implementation.
This class provides the plots for the result of a study performed with any of the HypoTestCalculatorG...
HypoTestResult is a base class for results from hypothesis tests.
void Print(const Option_t *="") const
Print out some information about the results Note: use Alt/Null labels for the hypotheses here as the...
MaxLikelihoodEstimateTestStat: TestStatistic that returns maximum likelihood estimate of a specified ...
ModelConfig is a simple class that holds configuration information specifying how a model should be u...
ProfileLikelihoodTestStat is an implementation of the TestStatistic interface that calculates the pro...
Holds configuration options for proof and proof-lite.
TestStatistic that returns the ratio of profiled likelihoods.
void Draw(Option_t *options=0)
Draw this plot and all of the elements it contains.
TestStatistic class that returns -log(L[null] / L[alt]) where L is the likelihood.
TestStatistic is an interface class to provide a facility for construction test statistics distributi...
virtual Double_t Evaluate(RooAbsData &data, RooArgSet &nullPOI)=0
Main interface to evaluate the test statistic on a dataset given the values for the Null Parameters O...
virtual const TString GetVarName() const =0
ToyMCSampler is an implementation of the TestStatSampler interface.
void SetProofConfig(ProofConfig *pc=NULL)
virtual void SetTestStatistic(TestStatistic *testStatistic, unsigned int i)
virtual void SetNEventsPerToy(const Int_t nevents)
Forces the generation of exactly n events even for extended PDFs.
The RooWorkspace is a persistable container for RooFit projects.
Bool_t defineSet(const char *name, const RooArgSet &aset, Bool_t importMissing=kFALSE)
Define a named RooArgSet with given constituents.
RooRealVar * var(const char *name) const
Retrieve real-valued variable (RooRealVar) with given name. A null pointer is returned if not found.
RooFactoryWSTool & factory()
Return instance to factory tool.
const RooArgSet * set(const char *name)
Return pointer to previously defined named set with given nmame If no such set is found a null pointe...
RooAbsPdf * pdf(const char *name) const
Retrieve p.d.f (RooAbsPdf) with given name. A null pointer is returned if not found.
void Start(Bool_t reset=kTRUE)
Start the stopwatch.
void Stop()
Stop 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...
MsgLevel
Verbosity level for RooMsgService::StreamConfig in RooMsgService.
RooCmdArg LineColor(Color_t color)
Double_t BinomialWithTauObsZ(Double_t nObs, Double_t bExp, Double_t tau)
Double_t BinomialWithTauObsP(Double_t nObs, Double_t bExp, Double_t tau)
Namespace for the RooStats classes.
Double_t PValueToSignificance(Double_t pvalue)
returns one-sided significance corresponding to a p-value
static constexpr double pc