55double StandardFrequentistDiscovery(
const char *infile =
"",
const char *workspaceName =
"channel1",
56 const char *modelConfigNameSB =
"ModelConfig",
const char *dataName =
"obsData",
57 int toys = 1000,
double poiValueForBackground = 0.0,
double poiValueForSignal = 1.0)
71 const char *filename =
"";
72 if (!strcmp(infile,
"")) {
73 filename =
"results/example_channel1_GammaExample_model.root";
74 bool fileExist = !
gSystem->AccessPathName(filename);
78 cout <<
"will run standard hist2workspace example" << endl;
79 gROOT->ProcessLine(
".! prepareHistFactory .");
80 gROOT->ProcessLine(
".! hist2workspace config/example.xml");
81 cout <<
"\n\n---------------------" << endl;
82 cout <<
"Done creating example input" << endl;
83 cout <<
"---------------------\n\n" << endl;
94 cout <<
"StandardRooStatsDemoMacro: Input file " << filename <<
" is not found" << endl;
108 cout <<
"workspace not found" << endl;
121 cout <<
"data or ModelConfig was not found" << endl;
126 firstPOI->
setVal(poiValueForSignal);
130 firstPOI->
setVal(poiValueForBackground);
152 if (data->numEntries() == 1) {
153 toymcs.SetNEventsPerToy(1);
155 cout <<
"Not sure what to do about this model" << endl;
160 freqCalc.SetToys(toys, toys);
166 freqCalcResult->
Print();
171 cout <<
"total CPU time: " << mn_t->
CpuTime() << endl;
172 cout <<
"total real time: " << mn_t->
RealTime() << endl;
187 c1->SaveAs(
"standard_discovery_output.pdf");
RooAbsArg * first() const
Abstract base class for binned and unbinned datasets.
bool canBeExtended() const
If true, PDF can provide extended likelihood term.
RooArgSet is a container object that can hold multiple RooAbsArg objects.
RooArgSet * snapshot(bool deepCopy=true) const
Use RooAbsCollection::snapshot(), but return as RooArgSet.
Variable that can be changed from the outside.
void setVal(double value) override
Set value of variable to 'value'.
Does a frequentist hypothesis test.
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 override
Print out some information about the results Note: use Alt/Null labels for the hypotheses here as the...
virtual double NullPValue() const
Return p-value for null hypothesis.
SamplingDistribution * GetNullDistribution(void) const
SamplingDistribution * GetAltDistribution(void) const
void SetSnapshot(const RooArgSet &set)
Set parameter values for a particular hypothesis if using a common PDF by saving a snapshot in the wo...
ModelConfig * Clone(const char *name="") const override
clone
const RooArgSet * GetParametersOfInterest() const
get RooArgSet containing the parameter of interest (return nullptr if not existing)
RooAbsPdf * GetPdf() const
get model PDF (return nullptr if pdf has not been specified or does not exist)
ProfileLikelihoodTestStat is an implementation of the TestStatistic interface that calculates the pro...
void SetOneSidedDiscovery(bool flag=true)
virtual void SetVarName(const char *name)
void Draw(Option_t *options=nullptr) override
Draw this plot and all of the elements it contains.
void SetLogYaxis(bool ly)
changes plot to log scale on y axis
void AddTF1(TF1 *f, const char *title=nullptr, Option_t *drawOptions="SAME")
add a TF1
ToyMCSampler is an implementation of the TestStatSampler interface.
Persistable container for RooFit projects.
TObject * Get(const char *namecycle) override
Return pointer to object identified by namecycle.
A file, usually with extension .root, that stores data and code in the form of serialized objects in ...
static TFile * Open(const char *name, Option_t *option="", const char *ftitle="", Int_t compress=ROOT::RCompressionSetting::EDefaults::kUseCompiledDefault, Int_t netopt=0)
Create / open a file.
virtual void SetTitle(const char *title="")
Set the title of the TNamed.
Double_t RealTime()
Stop the stopwatch (if it is running) and return the realtime (in seconds) passed between the start a...
void Start(Bool_t reset=kTRUE)
Start the stopwatch.
Double_t CpuTime()
Stop the stopwatch (if it is running) and return the cputime (in seconds) passed between the start an...
void Stop()
Stop the stopwatch.
static TString Format(const char *fmt,...)
Static method which formats a string using a printf style format descriptor and return a TString.
The namespace RooFit contains mostly switches that change the behaviour of functions of PDFs (or othe...
RooStats::ModelConfig ModelConfig
Namespace for the RooStats classes.