26 using namespace RooFit;
28 void rf803_mcstudy_addons2()
37 RooRealVar mjjj(
"mjjj",
"m(3jet) (GeV)", 100, 85., 350.);
40 RooRealVar mtop(
"mtop",
"m(top)", 162);
41 RooRealVar wtop(
"wtop",
"m(top) resolution", 15.2);
42 RooGaussian sig(
"sig",
"top signal", mjjj, mtop, wtop);
45 RooRealVar c0(
"c0",
"Chebychev coefficient 0", -0.846, -1., 1.);
46 RooRealVar c1(
"c1",
"Chebychev coefficient 1", 0.112, -1., 1.);
47 RooRealVar c2(
"c2",
"Chebychev coefficient 2", 0.076, -1., 1.);
48 RooChebychev bkg(
"bkg",
"combinatorial background", mjjj, RooArgList(c0, c1, c2));
51 RooRealVar nsig(
"nsig",
"number of signal events", 53, 0, 1e3);
52 RooRealVar nbkg(
"nbkg",
"number of background events", 103, 0, 5e3);
53 RooAddPdf model(
"model",
"model", RooArgList(sig, bkg), RooArgList(nsig, nbkg));
60 RooMCStudy *mcs =
new RooMCStudy(model, mjjj, Binned(), Silence(), Extended(kTRUE),
61 FitOptions(Extended(kTRUE), PrintEvalErrors(-1)));
74 RooRandomizeParamMCSModule randModule;
75 randModule.sampleSumUniform(RooArgSet(nsig, nbkg), 50, 500);
76 mcs->addModule(randModule);
84 RooDLLSignificanceMCSModule sigModule(nsig, 0);
85 mcs->addModule(sigModule);
93 mcs->generateAndFit(500);
96 TH1 *dll_vs_ngen = mcs->fitParDataSet().createHistogram(
"ngen,dll_nullhypo_nsig", -40, -40);
97 TH1 *z_vs_ngen = mcs->fitParDataSet().createHistogram(
"ngen,significance_nullhypo_nsig", -40, -40);
98 TH1 *errnsig_vs_ngen = mcs->fitParDataSet().createHistogram(
"ngen,nsigerr", -40, -40);
99 TH1 *errnsig_vs_nsig = mcs->fitParDataSet().createHistogram(
"nsig,nsigerr", -40, -40);
102 TCanvas *c =
new TCanvas(
"rf803_mcstudy_addons2",
"rf802_mcstudy_addons2", 800, 800);
105 gPad->SetLeftMargin(0.15);
106 dll_vs_ngen->GetYaxis()->SetTitleOffset(1.6);
107 dll_vs_ngen->Draw(
"box");
109 gPad->SetLeftMargin(0.15);
110 z_vs_ngen->GetYaxis()->SetTitleOffset(1.6);
111 z_vs_ngen->Draw(
"box");
113 gPad->SetLeftMargin(0.15);
114 errnsig_vs_ngen->GetYaxis()->SetTitleOffset(1.6);
115 errnsig_vs_ngen->Draw(
"box");
117 gPad->SetLeftMargin(0.15);
118 errnsig_vs_nsig->GetYaxis()->SetTitleOffset(1.6);
119 errnsig_vs_nsig->Draw(
"box");
123 gDirectory->Add(mcs);