20t = ROOT.RooRealVar(
"t",
"time", -1.0, 15.0)
21cosa = ROOT.RooRealVar(
"cosa",
"cos(alpha)", -1.0, 1.0)
23tau = ROOT.RooRealVar(
"tau",
"#tau", 1.5)
24deltaGamma = ROOT.RooRealVar(
"deltaGamma",
"deltaGamma", 0.3)
25coshG = ROOT.RooFormulaVar(
"coshGBasis",
"exp(-@0/ @1)*cosh(@0*@2/2)", [t, tau, deltaGamma])
26sinhG = ROOT.RooFormulaVar(
"sinhGBasis",
"exp(-@0/ @1)*sinh(@0*@2/2)", [t, tau, deltaGamma])
29poly1 = ROOT.RooPolyVar(
"poly1",
"poly1", cosa, [0.5, 0.2, 0.2], 0)
30poly2 = ROOT.RooPolyVar(
"poly2",
"poly2", cosa, [1.0, -0.2, 3.0], 0)
33ampl1 = ROOT.RooProduct(
"ampl1",
"amplitude 1", [poly1, coshG])
34ampl2 = ROOT.RooProduct(
"ampl2",
"amplitude 2", [poly2, sinhG])
40f1 = ROOT.RooRealVar(
"f1",
"f1", 1, 0, 2)
41f2 = ROOT.RooRealVar(
"f2",
"f2", 0.5, 0, 2)
44pdf = ROOT.RooRealSumPdf(
"pdf",
"pdf", [ampl1, ampl2], [f1, f2])
47data = pdf.generate({t, cosa}, 10000)
50pdf.fitTo(data, PrintLevel=-1)
56hh_cos = ampl1.createHistogram(
"hh_cos", t, Binning=50, YVar=dict(var=cosa, Binning=50))
57hh_sin = ampl2.createHistogram(
"hh_sin", t, Binning=50, YVar=dict(var=cosa, Binning=50))
58hh_cos.SetLineColor(ROOT.kBlue)
59hh_sin.SetLineColor(ROOT.kRed)
67pdf.plotOn(frame1, Components=ampl1, LineStyle=
"--")
68pdf.plotOn(frame1, Components=ampl2, LineStyle=
"--", LineColor=
"r")
76pdf.plotOn(frame2, Components=ampl1, LineStyle=
"--")
77pdf.plotOn(frame2, Components=ampl2, LineStyle=
"--", LineColor=
"r")
79c = ROOT.TCanvas(
"rf704_amplitudefit",
"rf704_amplitudefit", 800, 800)
82ROOT.gPad.SetLeftMargin(0.15)
83frame1.GetYaxis().SetTitleOffset(1.4)
86ROOT.gPad.SetLeftMargin(0.15)
87frame2.GetYaxis().SetTitleOffset(1.4)
90ROOT.gPad.SetLeftMargin(0.20)
91hh_cos.GetZaxis().SetTitleOffset(2.3)
94ROOT.gPad.SetLeftMargin(0.20)
95hh_sin.GetZaxis().SetTitleOffset(2.3)
98c.SaveAs(
"rf704_amplitudefit.png")