33 from modularAnalysis
import inputMdst
34 from modularAnalysis
import reconstructDecay
35 from modularAnalysis
import matchMCTruth
36 from vertex
import raveFit
37 from modularAnalysis
import variablesToExtraInfo
38 from stdCharged
import stdPi, stdK
39 from modularAnalysis
import variablesToNtuple
40 from variables
import variables
as vm
46 my_path = b2.create_path()
49 inputMdst(environmentType=
'default',
50 filename=b2.find_file(
'B02pi0D0_D2kpi_B2Dstarpi_Dstar2Dpi_D2kpi.root',
'examples',
False),
56 stdPi(
'all', path=my_path)
58 stdPi(
'loose', path=my_path)
60 stdK(
'loose', path=my_path)
64 reconstructDecay(
'D0:kpi -> K-:loose pi+:loose',
'1.8 < M < 1.9', path=my_path)
65 reconstructDecay(
'D0:kpi_mass -> K-:loose pi+:loose',
'1.8 < M < 1.9', path=my_path)
71 vm.addAlias(
"M_BeforeFit",
"extraInfo(M_before_vertex_fit)")
73 raveFit(
'D0:kpi', 0.0, path=my_path)
79 raveFit(
'D0:kpi_mass', 0.0, fit_type=
'massvertex', path=my_path)
84 reconstructDecay(
'D*+:1 -> D0:kpi pi+:all',
85 '0.0 <= Q < 0.02 and 2.5 < useCMSFrame(p) < 5.5', path=my_path)
86 reconstructDecay(
'D*+:2 -> D0:kpi_mass pi+:all',
87 '0.0 <= Q < 0.02 and 2.5 < useCMSFrame(p) < 5.5', path=my_path)
90 matchMCTruth(
'D*+:1', path=my_path)
91 matchMCTruth(
'D*+:2', path=my_path)
95 raveFit(
'D*+:1', 0.0, path=my_path)
99 raveFit(
'D*+:2', 0.0, constraint=
'ipprofile', path=my_path)
103 dstar_vars = vc.inv_mass + vc.mc_truth + \
104 vc.mc_flight_info + vc.flight_info
106 fs_hadron_vars = vu.create_aliases_for_selected(
107 vc.pid + vc.track + vc.mc_truth,
108 'D*+ -> [D0 -> ^K- ^pi+] ^pi+')
110 d0_vars = vu.create_aliases_for_selected(
111 vc.inv_mass + vc.mc_truth + [
"M_BeforeFit"],
112 'D*+ -> ^D0 pi+',
'D0')
116 output_file =
'B2A405-Rave-MassVertexFit.root'
118 filename=output_file, treename=
'dsttree1', path=my_path)
120 filename=output_file, treename=
'dsttree2', path=my_path)