18x = ROOT.RooRealVar(
"x",
"x", 0, 10)
23mean = ROOT.RooRealVar(
"mean",
"mean of gaussians", 5, 0, 10)
24sigma1 = ROOT.RooRealVar(
"sigma1",
"width of gaussians", 0.5)
25sigma2 = ROOT.RooRealVar(
"sigma2",
"width of gaussians", 1)
27sig1 = ROOT.RooGaussian(
"sig1",
"Signal component 1", x, mean, sigma1)
28sig2 = ROOT.RooGaussian(
"sig2",
"Signal component 2", x, mean, sigma2)
31a0 = ROOT.RooRealVar(
"a0",
"a0", 0.5, 0.0, 1.0)
32a1 = ROOT.RooRealVar(
"a1",
"a1", -0.2, -1, 1.0)
33bkg = ROOT.RooChebychev(
"bkg",
"Background", x, [a0, a1])
36sig1frac = ROOT.RooRealVar(
"sig1frac",
"fraction of component 1 in signal", 0.8, 0.0, 1.0)
37sig = ROOT.RooAddPdf(
"sig",
"Signal", [sig1, sig2], [sig1frac])
40nbkg = ROOT.RooRealVar(
"nbkg",
"number of background events, ", 150, 0, 1000)
41nsig = ROOT.RooRealVar(
"nsig",
"number of signal events", 150, 0, 1000)
42model = ROOT.RooAddPdf(
"model",
"g1+g2+a", [bkg, sig], [nbkg, nsig])
62mcstudy = ROOT.RooMCStudy(
68 FitOptions=dict(Save=
True, PrintEvalErrors=0),
75mcstudy.generateAndFit(1000)
82frame1 = mcstudy.plotParam(mean, Bins=40)
83frame2 = mcstudy.plotError(mean, Bins=40)
84frame3 = mcstudy.plotPull(mean, Bins=40, FitGauss=
True)
87frame4 = mcstudy.plotNLL(Bins=40)
90hh_cor_a0_s1f = mcstudy.fitParDataSet().createHistogram(
"hh", a1, YVar=sig1frac)
91hh_cor_a0_a1 = mcstudy.fitParDataSet().createHistogram(
"hh", a0, YVar=a1)
94corrHist000 = mcstudy.fitResult(0).correlationHist(
"c000")
95corrHist127 = mcstudy.fitResult(127).correlationHist(
"c127")
96corrHist953 = mcstudy.fitResult(953).correlationHist(
"c953")
99ROOT.gStyle.SetPalette(1)
100ROOT.gStyle.SetOptStat(0)
101c = ROOT.TCanvas(
"rf801_mcstudy",
"rf801_mcstudy", 900, 900)
104ROOT.gPad.SetLeftMargin(0.15)
105frame1.GetYaxis().SetTitleOffset(1.4)
108ROOT.gPad.SetLeftMargin(0.15)
109frame2.GetYaxis().SetTitleOffset(1.4)
112ROOT.gPad.SetLeftMargin(0.15)
113frame3.GetYaxis().SetTitleOffset(1.4)
116ROOT.gPad.SetLeftMargin(0.15)
117frame4.GetYaxis().SetTitleOffset(1.4)
120ROOT.gPad.SetLeftMargin(0.15)
121hh_cor_a0_s1f.GetYaxis().SetTitleOffset(1.4)
122hh_cor_a0_s1f.Draw(
"box")
124ROOT.gPad.SetLeftMargin(0.15)
125hh_cor_a0_a1.GetYaxis().SetTitleOffset(1.4)
126hh_cor_a0_a1.Draw(
"box")
128ROOT.gPad.SetLeftMargin(0.15)
129corrHist000.GetYaxis().SetTitleOffset(1.4)
130corrHist000.Draw(
"colz")
132ROOT.gPad.SetLeftMargin(0.15)
133corrHist127.GetYaxis().SetTitleOffset(1.4)
134corrHist127.Draw(
"colz")
136ROOT.gPad.SetLeftMargin(0.15)
137corrHist953.GetYaxis().SetTitleOffset(1.4)
138corrHist953.Draw(
"colz")
140c.SaveAs(
"rf801_mcstudy.png")
144ROOT.gDirectory.Add(mcstudy)