21 using namespace RooFit;
23 void rf703_effpdfprod()
29 RooRealVar t(
"t",
"t", 0, 5);
32 RooRealVar tau(
"tau",
"tau", -1.54, -4, -0.1);
33 RooExponential model(
"model",
"model", t, tau);
39 RooFormulaVar eff(
"eff",
"0.5*(TMath::Erf((t-1)/0.5)+1)", t);
45 RooEffProd modelEff(
"modelEff",
"model with efficiency", model, eff);
50 RooPlot *frame1 = t.frame(Title(
"Efficiency"));
51 eff.plotOn(frame1, LineColor(kRed));
53 RooPlot *frame2 = t.frame(Title(
"Pdf with and without efficiency"));
55 model.plotOn(frame2, LineStyle(kDashed));
56 modelEff.plotOn(frame2);
63 RooDataSet *data = modelEff.generate(t, 10000);
66 modelEff.fitTo(*data);
69 RooPlot *frame3 = t.frame(Title(
"Fitted pdf with efficiency"));
71 modelEff.plotOn(frame3);
73 TCanvas *c =
new TCanvas(
"rf703_effpdfprod",
"rf703_effpdfprod", 1200, 400);
76 gPad->SetLeftMargin(0.15);
77 frame1->GetYaxis()->SetTitleOffset(1.4);
80 gPad->SetLeftMargin(0.15);
81 frame2->GetYaxis()->SetTitleOffset(1.6);
84 gPad->SetLeftMargin(0.15);
85 frame3->GetYaxis()->SetTitleOffset(1.6);