22 using namespace RooFit;
24 void rf315_projectpdf()
31 RooAbsPdf::defaultIntegratorConfig()->setEpsRel(1e-8);
32 RooAbsPdf::defaultIntegratorConfig()->setEpsAbs(1e-8);
35 RooRealVar x(
"x",
"x", -5, 5);
36 RooRealVar y(
"y",
"y", -2, 2);
39 RooRealVar a0(
"a0",
"a0", 0);
40 RooRealVar a1(
"a1",
"a1", -1.5, -3, 1);
41 RooPolyVar fy(
"fy",
"fy", y, RooArgSet(a0, a1));
44 RooRealVar sigmax(
"sigmax",
"width of gaussian", 0.5);
45 RooGaussian gaussx(
"gaussx",
"Gaussian in x with shifting mean in y", x, fy, sigmax);
48 RooGaussian gaussy(
"gaussy",
"Gaussian in y", y, RooConst(0), RooConst(2));
51 RooProdPdf model(
"model",
"gaussx(x|y)*gaussy(y)", gaussy, Conditional(gaussx, x));
57 RooAbsPdf *modelx = model.createProjection(y);
63 RooAbsData *data = modelx->generateBinned(x, 1000);
66 modelx->fitTo(*data, Verbose());
69 RooPlot *frame = x.frame(40);
71 modelx->plotOn(frame);
74 TH1 *hh = model.createHistogram(
"x,y");
75 hh->SetLineColor(kBlue);
77 TCanvas *c =
new TCanvas(
"rf315_projectpdf",
"rf315_projectpdf", 800, 400);
80 gPad->SetLeftMargin(0.15);
81 frame->GetYaxis()->SetTitleOffset(1.4);
84 gPad->SetLeftMargin(0.20);
85 hh->GetZaxis()->SetTitleOffset(2.5);