18t = ROOT.RooRealVar(
"t",
"time", -1.0, 15.0)
19cosa = ROOT.RooRealVar(
"cosa",
"cos(alpha)", -1.0, 1.0)
23tau = ROOT.RooRealVar(
"tau",
"#tau", 1.5)
24deltaGamma = ROOT.RooRealVar(
"deltaGamma",
"deltaGamma", 0.3)
25tm = ROOT.RooTruthModel(
"tm",
"tm", t)
26coshGBasis = ROOT.RooFormulaVar(
"coshGBasis",
"exp(-@0/ @1)*cosh(@0*@2/2)", [t, tau, deltaGamma])
27sinhGBasis = ROOT.RooFormulaVar(
"sinhGBasis",
"exp(-@0/ @1)*sinh(@0*@2/2)", [t, tau, deltaGamma])
28coshGConv = tm.convolution(coshGBasis, t)
29sinhGConv = tm.convolution(sinhGBasis, t)
32poly1 = ROOT.RooPolyVar(
"poly1",
"poly1", cosa, [0.5, 0.2, 0.2], 0)
33poly2 = ROOT.RooPolyVar(
"poly2",
"poly2", cosa, [1.0, -0.2, 3.0], 0)
36ampl1 = ROOT.RooProduct(
"ampl1",
"amplitude 1", [poly1, coshGConv])
37ampl2 = ROOT.RooProduct(
"ampl2",
"amplitude 2", [poly2, sinhGConv])
43f1 = ROOT.RooRealVar(
"f1",
"f1", 1, 0, 2)
44f2 = ROOT.RooRealVar(
"f2",
"f2", 0.5, 0, 2)
47pdf = ROOT.RooRealSumPdf(
"pdf",
"pdf", [ampl1, ampl2], [f1, f2])
50data = pdf.generate({t, cosa}, 10000)
59hh_cos = ampl1.createHistogram(
"hh_cos", t, Binning=50, YVar=dict(var=cosa, Binning=50))
60hh_sin = ampl2.createHistogram(
"hh_sin", t, Binning=50, YVar=dict(var=cosa, Binning=50))
61hh_cos.SetLineColor(ROOT.kBlue)
62hh_sin.SetLineColor(ROOT.kRed)
70pdf.plotOn(frame1, Components=ampl1, LineStyle=
"--")
71pdf.plotOn(frame1, Components=ampl2, LineStyle=
"--", LineColor=
"r")
79pdf.plotOn(frame2, Components=ampl1, LineStyle=
"--")
80pdf.plotOn(frame2, Components=ampl2, LineStyle=
"--", LineColor=
"r")
82c = ROOT.TCanvas(
"rf704_amplitudefit",
"rf704_amplitudefit", 800, 800)
85ROOT.gPad.SetLeftMargin(0.15)
86frame1.GetYaxis().SetTitleOffset(1.4)
89ROOT.gPad.SetLeftMargin(0.15)
90frame2.GetYaxis().SetTitleOffset(1.4)
93ROOT.gPad.SetLeftMargin(0.20)
94hh_cos.GetZaxis().SetTitleOffset(2.3)
97ROOT.gPad.SetLeftMargin(0.20)
98hh_sin.GetZaxis().SetTitleOffset(2.3)
101c.SaveAs(
"rf704_amplitudefit.png")