17 dt = ROOT.RooRealVar(
"dt",
"dt", -20, 20)
18 dm = ROOT.RooRealVar(
"dm",
"dm", 0.472)
19 tau = ROOT.RooRealVar(
"tau",
"tau", 1.547)
20 w = ROOT.RooRealVar(
"w",
"mistag rate", 0.1)
21 dw = ROOT.RooRealVar(
"dw",
"delta mistag rate", 0.)
23 mixState = ROOT.RooCategory(
"mixState",
"B0/B0bar mixing state")
24 mixState.defineType(
"mixed", -1)
25 mixState.defineType(
"unmixed", 1)
26 tagFlav = ROOT.RooCategory(
"tagFlav",
"Flavour of the tagged B0")
27 tagFlav.defineType(
"B0", 1)
28 tagFlav.defineType(
"B0bar", -1)
31 dterr = ROOT.RooRealVar(
"dterr",
"dterr", 0.1, 1.0)
32 bias1 = ROOT.RooRealVar(
"bias1",
"bias1", 0)
33 sigma1 = ROOT.RooRealVar(
"sigma1",
"sigma1", 0.1)
34 gm1 = ROOT.RooGaussModel(
"gm1",
"gauss model 1", dt, bias1, sigma1)
37 bmix = ROOT.RooBMixDecay(
"bmix",
"decay", dt, mixState, tagFlav,
38 tau, dm, w, dw, gm1, ROOT.RooBMixDecay.DoubleSided)
44 data = bmix.generate(ROOT.RooArgSet(dt, mixState, tagFlav), 2000)
53 tbins = ROOT.RooBinning(-15, 15)
56 tbins.addUniform(60, -15, 0)
59 tbins.addUniform(15, 0, 15)
62 dtframe = dt.frame(ROOT.RooFit.Range(-15, 15),
63 ROOT.RooFit.Title(
"dt distribution with custom binning"))
64 data.plotOn(dtframe, ROOT.RooFit.Binning(tbins))
78 abins = ROOT.RooBinning(-10, 10)
82 abins.addBoundaryPair(1)
83 abins.addBoundaryPair(2)
84 abins.addBoundaryPair(3)
85 abins.addBoundaryPair(4)
86 abins.addBoundaryPair(6)
89 aframe = dt.frame(ROOT.RooFit.Range(-10, 10), ROOT.RooFit.Title(
90 "mixState asymmetry distribution with custom binning"))
93 data.plotOn(aframe, ROOT.RooFit.Asymmetry(
94 mixState), ROOT.RooFit.Binning(abins))
97 bmix.plotOn(aframe, ROOT.RooFit.Asymmetry(mixState))
100 aframe.SetMinimum(-1.1)
101 aframe.SetMaximum(1.1)
107 c = ROOT.TCanvas(
"rf108_plotbinning",
"rf108_plotbinning", 800, 400)
110 ROOT.gPad.SetLeftMargin(0.15)
111 dtframe.GetYaxis().SetTitleOffset(1.6)
114 ROOT.gPad.SetLeftMargin(0.15)
115 aframe.GetYaxis().SetTitleOffset(1.6)
118 c.SaveAs(
"rf108_plotbinning.png")