29 using namespace RooFit ;
48 RooRealVar dw(
"dw",
"delta mistag rate for B0/B0bar",0.1) ;
50 RooCategory mixState(
"mixState",
"B0/B0bar mixing state") ;
51 mixState.defineType(
"mixed",-1) ;
52 mixState.defineType(
"unmixed",1) ;
54 RooCategory tagFlav(
"tagFlav",
"Flavour of the tagged B0") ;
55 tagFlav.defineType(
"B0",1) ;
56 tagFlav.defineType(
"B0bar",-1) ;
62 RooBMixDecay bmix(
"bmix",
"decay",dt,mixState,tagFlav,tau,dm,
w,dw,tm,
RooBMixDecay::DoubleSided) ;
75 RooPlot* frame1 = dt.frame(
Title(
"B decay distribution with mixing (B0/B0bar)")) ;
77 data->
plotOn(frame1,
Cut(
"tagFlav==tagFlav::B0")) ;
78 bmix.plotOn(frame1,
Slice(tagFlav,
"B0")) ;
85 RooPlot* frame2 = dt.frame(
Title(
"B decay distribution of mixed events (B0/B0bar)")) ;
87 data->
plotOn(frame2,
Cut(
"mixState==mixState::mixed&&tagFlav==tagFlav::B0")) ;
88 bmix.plotOn(frame2,
Slice(tagFlav,
"B0"),
Slice(mixState,
"mixed")) ;
95 RooPlot* frame3 = dt.frame(
Title(
"B decay distribution of unmixed events (B0/B0bar)")) ;
97 data->
plotOn(frame3,
Cut(
"mixState==mixState::unmixed&&tagFlav==tagFlav::B0")) ;
98 bmix.plotOn(frame3,
Slice(tagFlav,
"B0"),
Slice(mixState,
"unmixed")) ;
115 RooRealVar CPeigen(
"CPeigen",
"CP eigen value",-1) ;
116 RooRealVar absLambda(
"absLambda",
"|lambda|",1,0,2) ;
117 RooRealVar argLambda(
"absLambda",
"|lambda|",0.7,-1,1) ;
118 RooRealVar effR(
"effR",
"B0/B0bar reco efficiency ratio",1) ;
121 RooBCPEffDecay bcp(
"bcp",
"bcp", dt, tagFlav, tau, dm,
w, CPeigen, absLambda, argLambda, effR, dw, tm,
RooBCPEffDecay::DoubleSided) ;
132 RooPlot* frame4 = dt.frame(
Title(
"B decay distribution with CPV(|l|=1,Im(l)=0.7) (B0/B0bar)")) ;
134 data2->
plotOn(frame4,
Cut(
"tagFlav==tagFlav::B0")) ;
135 bcp.plotOn(frame4,
Slice(tagFlav,
"B0")) ;
151 RooPlot* frame5 = dt.frame(
Title(
"B decay distribution with CPV(|l|=0.7,Im(l)=0.7) (B0/B0bar)")) ;
153 data3->
plotOn(frame5,
Cut(
"tagFlav==tagFlav::B0")) ;
154 bcp.plotOn(frame5,
Slice(tagFlav,
"B0")) ;
169 RooRealVar DGbG(
"DGbG",
"DGamma/GammaAvg",0.5,-1,1);
170 RooRealVar Adir(
"Adir",
"-[1-abs(l)**2]/[1+abs(l)**2]",0);
171 RooRealVar Amix(
"Amix",
"2Im(l)/[1+abs(l)**2]",0.7);
172 RooRealVar Adel(
"Adel",
"2Re(l)/[1+abs(l)**2]",0.7);
183 RooBDecay bcpg(
"bcpg",
"bcpg",dt,tau,DG,
RooConst(1),fsinh,fcos,fsin,dm,tm,
RooBDecay::DoubleSided);
194 RooPlot* frame6 = dt.frame(
Title(
"B decay distribution with CPV(Im(l)=0.7,Re(l)=0.7,|l|=1,dG/G=0.5) (B0/B0bar)")) ;
196 data4->
plotOn(frame6,
Cut(
"tagFlav==tagFlav::B0")) ;
197 bcpg.plotOn(frame6,
Slice(tagFlav,
"B0")) ;
205 TCanvas* c =
new TCanvas(
"rf708_bphysics",
"rf708_bphysics",1200,800) ;
virtual void SetTitleOffset(Float_t offset=1)
Set distance between the axis and the axis title Offset is a correction factor with respect to the "s...
RooTruthModel is an implementation of RooResolution model that provides a delta-function resolution m...
RooCmdArg Cut(const char *cutSpec)
RooCmdArg LineColor(Color_t color)
PDF describing decay time distribution of B meson including effects of standard model CP violation...
RooCmdArg Title(const char *name)
Most general description of B decay time distribution with effects of CP violation, mixing and life time differences.
Class RooBMixDecay is a RooAbsAnaConvPdf implementation that describes the decay of B mesons with the...
virtual RooPlot * plotOn(RooPlot *frame, const RooCmdArg &arg1=RooCmdArg::none(), const RooCmdArg &arg2=RooCmdArg::none(), const RooCmdArg &arg3=RooCmdArg::none(), const RooCmdArg &arg4=RooCmdArg::none(), const RooCmdArg &arg5=RooCmdArg::none(), const RooCmdArg &arg6=RooCmdArg::none(), const RooCmdArg &arg7=RooCmdArg::none(), const RooCmdArg &arg8=RooCmdArg::none()) const
Plot dataset on specified frame.
RooRealVar represents a fundamental (non-derived) real valued object.
RooDataSet is a container class to hold unbinned data.
RooCategory represents a fundamental (non-derived) discrete value object.
A RooPlot is a plot frame and a container for graphics objects within that frame. ...
RooConstVar & RooConst(Double_t val)
RooCmdArg MarkerColor(Color_t color)
RooCmdArg Slice(const RooArgSet &sliceSet)
virtual void Draw(Option_t *options=0)
Draw this plot and all of the elements it contains.