24 using namespace RooFit;
26 void rf307_fullpereventerrors()
32 RooRealVar dt(
"dt",
"dt", -10, 10);
33 RooRealVar dterr(
"dterr",
"per-event error on dt", 0.01, 10);
36 RooRealVar bias(
"bias",
"bias", 0, -10, 10);
37 RooRealVar sigma(
"sigma",
"per-event error scale factor", 1, 0.1, 10);
38 RooGaussModel gm(
"gm1",
"gauss model scaled bt per-event error", dt, bias, sigma, dterr);
41 RooRealVar tau(
"tau",
"tau", 1.548);
42 RooDecay decay_gm(
"decay_gm",
"decay", dt, tau, gm, RooDecay::DoubleSided);
48 RooLandau pdfDtErr(
"pdfDtErr",
"pdfDtErr", dterr, RooConst(1), RooConst(0.25));
49 RooDataSet *expDataDterr = pdfDtErr.generate(dterr, 10000);
52 RooDataHist *expHistDterr = expDataDterr->binnedClone();
53 RooHistPdf pdfErr(
"pdfErr",
"pdfErr", dterr, *expHistDterr);
60 RooProdPdf model(
"model",
"model", pdfErr, Conditional(decay_gm, dt));
69 RooDataSet *data = model.generate(RooArgSet(dt, dterr), 10000);
81 TH1 *hh_model = model.createHistogram(
"hh_model", dt, Binning(50), YVar(dterr, Binning(50)));
82 hh_model->SetLineColor(kBlue);
85 RooPlot *frame = dt.frame(Title(
"Projection of model(dt|dterr) on dt"));
90 TCanvas *c =
new TCanvas(
"rf307_fullpereventerrors",
"rf307_fullperventerrors", 800, 400);
93 gPad->SetLeftMargin(0.20);
94 hh_model->GetZaxis()->SetTitleOffset(2.5);
95 hh_model->Draw(
"surf");
97 gPad->SetLeftMargin(0.15);
98 frame->GetYaxis()->SetTitleOffset(1.6);