Example on how to use the HybridCalculatorOriginal class
With this example, you should get: CL_sb = 0.130 and CL_b = 0.946 (if data had -2lnQ = -3.0742).
Processing /mnt/build/workspace/root-makedoc-v610/rootspi/rdoc/src/v6-10-00-patches/tutorials/roostats/HybridOriginalDemo.C...
void HybridOriginalDemo(int ntoys = 1000)
{
RooExtendPdf bkg_ext_pdf(
"bkg_ext_pdf",
"",bkg_pdf,bkg_yield);
sig_yield.setConstant(
kTRUE);
&nuisance_parameters, &bkg_yield_prior);
myHybridCalc.SetTestStatistic(1);
myHybridCalc.SetNumberOfToys(ntoys);
myHybridCalc.UseNuisance(true);
myHybridCalc.SetGenerateBinned(false);
if (! myHybridResult) {
std::cerr << "\nError returned from Hypothesis test" << std::endl;
return;
}
HybridPlot* myHybridPlot = myHybridResult->
GetPlot(
"myHybridPlot",
"Plot of results with HybridCalculatorOriginal",100);
double clsb_data = myHybridResult->
CLsplusb();
double clb_data = myHybridResult->
CLb();
double cls_data = myHybridResult->
CLs();
double mean_sb_toys_test_stat = myHybridPlot->
GetSBmean();
std::cout << "Completed HybridCalculatorOriginal example:\n";
std::cout << " - -2lnQ = " << min2lnQ_data << endl;
std::cout << " - CL_sb = " << clsb_data << std::endl;
std::cout << " - CL_b = " << clb_data << std::endl;
std::cout << " - CL_s = " << cls_data << std::endl;
std::cout << " - significance of data = " << data_significance << std::endl;
std::cout << " - mean significance of toys = " << toys_significance << std::endl;
}
- Author
- Gregory Schott
Definition in file HybridOriginalDemo.C.