44void rs_numberCountingCombination_expected();
45void rs_numberCountingCombination_observed();
46void rs_numberCountingCombination_observedWithTau();
50void rs_numberCountingCombination(
int flag = 1)
53 rs_numberCountingCombination_expected();
55 rs_numberCountingCombination_observed();
57 rs_numberCountingCombination_observedWithTau();
61void rs_numberCountingCombination_expected()
86 f.AddModel(
s, 2, wspace,
"TopLevelPdf",
"masterSignal");
91 f.AddExpData(
s,
b, db, 2, wspace,
"ExpectedNumberCountingData");
116 cout <<
"-------------------------------------------------" << endl;
117 cout <<
"The p-value for the null is " << htr->
NullPValue() << endl;
118 cout <<
"Corresponding to a significance of " << htr->
Significance() << endl;
119 cout <<
"-------------------------------------------------\n\n" << endl;
133 RooArgSet *paramsOfInterest = nullParams;
134 plc.SetParameters(*paramsOfInterest);
145 lrPlot.SetMaximum(3.);
149 cout <<
"lower limit on master signal = " << lower << endl;
150 cout <<
"upper limit on master signal = " << upper << endl;
158 cout <<
"-------------------------------------------------" << endl;
159 std::cout <<
"Consider this parameter point:" << std::endl;
162 std::cout <<
"It IS in the interval." << std::endl;
164 std::cout <<
"It is NOT in the interval." << std::endl;
165 cout <<
"-------------------------------------------------\n\n" << endl;
169 cout <<
"-------------------------------------------------" << endl;
170 std::cout <<
"Consider this parameter point:" << std::endl;
173 std::cout <<
"It IS in the interval." << std::endl;
175 std::cout <<
"It is NOT in the interval." << std::endl;
176 cout <<
"-------------------------------------------------\n\n" << endl;
219void rs_numberCountingCombination_observed()
244 f.AddModel(
s, 2, wspace,
"TopLevelPdf",
"masterSignal");
248 Double_t mainMeas[2] = {123., 117.};
249 Double_t bkgMeas[2] = {111.23, 98.76};
251 f.AddData(mainMeas, bkgMeas, dbMeas, 2, wspace,
"ObservedNumberCountingData");
278 cout <<
"-------------------------------------------------" << endl;
279 cout <<
"The p-value for the null is " << htr->
NullPValue() << endl;
280 cout <<
"Corresponding to a significance of " << htr->
Significance() << endl;
281 cout <<
"-------------------------------------------------\n\n" << endl;
295 RooArgSet *paramsOfInterest = nullParams;
296 plc.SetParameters(*paramsOfInterest);
301 cout <<
"lower limit on master signal = " << lrint->
LowerLimit(*mu) << endl;
302 cout <<
"upper limit on master signal = " << lrint->
UpperLimit(*mu) << endl;
311void rs_numberCountingCombination_observedWithTau()
336 f.AddModel(
s, 2, wspace,
"TopLevelPdf",
"masterSignal");
340 Double_t mainMeas[2] = {123., 117.};
341 Double_t sideband[2] = {11123., 9876.};
343 f.AddDataWithSideband(mainMeas, sideband, tau, 2, wspace,
"ObservedNumberCountingDataWithSideband");
363 *poi, 0.05, nullParams);
367 cout <<
"-------------------------------------------------" << endl;
368 cout <<
"The p-value for the null is " << htr->
NullPValue() << endl;
369 cout <<
"Corresponding to a significance of " << htr->
Significance() << endl;
370 cout <<
"-------------------------------------------------\n\n" << endl;
384 RooArgSet *paramsOfInterest = nullParams;
385 plc.SetParameters(*paramsOfInterest);
390 cout <<
"lower limit on master signal = " << lrint->
LowerLimit(*mu) << endl;
391 cout <<
"upper limit on master signal = " << lrint->
UpperLimit(*mu) << endl;
virtual void Print(Option_t *options=0) const
Print TNamed name and title.
RooAbsArg * first() const
RooArgSet is a container object that can hold multiple RooAbsArg objects.
Bool_t setRealValue(const char *name, Double_t newVal=0, Bool_t verbose=kFALSE)
Set value of a RooAbsRealLValye stored in set with given name to newVal No error messages are printed...
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...
RooRealVar represents a fundamental (non-derived) real valued object.
HypoTestResult is a base class for results from hypothesis tests.
virtual Double_t Significance() const
familiar name for the Null p-value in terms of 1-sided Gaussian significance
virtual Double_t NullPValue() const
Return p-value for null hypothesis.
This class provides simple and straightforward utilities to plot a LikelihoodInterval object.
LikelihoodInterval is a concrete implementation of the RooStats::ConfInterval interface.
Double_t LowerLimit(const RooRealVar ¶m)
return the lower bound of the interval on a given parameter
virtual void SetConfidenceLevel(Double_t cl)
set the confidence level for the interval (e.g 0.682 for a 1-sigma interval)
Double_t UpperLimit(const RooRealVar ¶m)
return the upper bound of the interval on a given parameter
virtual Bool_t IsInInterval(const RooArgSet &) const
check if given point is in the interval
A factory for building PDFs and data for a number counting combination.
The ProfileLikelihoodCalculator is a concrete implementation of CombinedCalculator (the interface cla...
The RooWorkspace is a persistable container for RooFit projects.
RooAbsData * data(const char *name) const
Retrieve dataset (binned or unbinned) with given name. A null pointer is returned if not found.
RooRealVar * var(const char *name) const
Retrieve real-valued variable (RooRealVar) with given name. A null pointer is returned if not found.
RooAbsPdf * pdf(const char *name) const
Retrieve p.d.f (RooAbsPdf) with given name. A null pointer is returned if not found.
Template specialisation used in RooAbsArg:
Namespace for the RooStats classes.
static constexpr double s