9import modularAnalysis
as ma
13import stdCharged
as stdc
16from variables
import variables
18variables.addAlias(
'TubeX',
'extraInfo(TubePosX)')
19variables.addAlias(
'TubeY',
'extraInfo(TubePosY)')
20variables.addAlias(
'TubeZ',
'extraInfo(TubePosZ)')
21variables.addAlias(
'Tube00',
'extraInfo(TubeCov00)')
22variables.addAlias(
'Tube01',
'extraInfo(TubeCov01)')
23variables.addAlias(
'Tube02',
'extraInfo(TubeCov02)')
24variables.addAlias(
'Tube10',
'extraInfo(TubeCov10)')
25variables.addAlias(
'Tube11',
'extraInfo(TubeCov11)')
26variables.addAlias(
'Tube12',
'extraInfo(TubeCov12)')
27variables.addAlias(
'Tube20',
'extraInfo(TubeCov20)')
28variables.addAlias(
'Tube21',
'extraInfo(TubeCov21)')
29variables.addAlias(
'Tube22',
'extraInfo(TubeCov22)')
31variables.addAlias(
'avf00',
'extraInfo(prod_vtx_cov00)')
32variables.addAlias(
'avf01',
'extraInfo(prod_vtx_cov01)')
33variables.addAlias(
'avf02',
'extraInfo(prod_vtx_cov02)')
34variables.addAlias(
'avf10',
'extraInfo(prod_vtx_cov10)')
35variables.addAlias(
'avf11',
'extraInfo(prod_vtx_cov11)')
36variables.addAlias(
'avf12',
'extraInfo(prod_vtx_cov12)')
37variables.addAlias(
'avf20',
'extraInfo(prod_vtx_cov20)')
38variables.addAlias(
'avf21',
'extraInfo(prod_vtx_cov21)')
39variables.addAlias(
'avf22',
'extraInfo(prod_vtx_cov22)')
41variables.addAlias(
'avfPx',
'extraInfo(Px_after_avf)')
42variables.addAlias(
'avfPy',
'extraInfo(Py_after_avf)')
43variables.addAlias(
'avfPz',
'extraInfo(Pz_after_avf)')
44variables.addAlias(
'avfE',
'extraInfo(E_after_avf)')
46variables.addAlias(
'mcPxCms',
'useCMSFrame(mcPX)')
47variables.addAlias(
'mcPyCms',
'useCMSFrame(mcPY)')
48variables.addAlias(
'mcPzCms',
'useCMSFrame(mcPZ)')
49variables.addAlias(
'mcECms',
'useCMSFrame(mcE)')
51variables.addAlias(
'tube_dir_X',
'extraInfo(TubeDirX)')
52variables.addAlias(
'tube_dir_Y',
'extraInfo(TubeDirY)')
53variables.addAlias(
'tube_dir_Z',
'extraInfo(TubeDirZ)')
55variables.addAlias(
'truex',
'matchedMC(x)')
56variables.addAlias(
'truey',
'matchedMC(y)')
57variables.addAlias(
'truez',
'matchedMC(z)')
59variables.addAlias(
'Distance',
'extraInfo(CalculatedDistance)')
60variables.addAlias(
'DistanceError',
'extraInfo(CalculatedDistanceError)')
61variables.addAlias(
'DistanceVector_X',
'extraInfo(CalculatedDistanceVector_X)')
62variables.addAlias(
'DistanceVector_Y',
'extraInfo(CalculatedDistanceVector_Y)')
63variables.addAlias(
'DistanceVector_Z',
'extraInfo(CalculatedDistanceVector_Z)')
64variables.addAlias(
'DistanceCovMatrixXX',
'extraInfo(CalculatedDistanceCovMatrixXX)')
65variables.addAlias(
'DistanceCovMatrixXY',
'extraInfo(CalculatedDistanceCovMatrixXY)')
66variables.addAlias(
'DistanceCovMatrixXZ',
'extraInfo(CalculatedDistanceCovMatrixXZ)')
67variables.addAlias(
'DistanceCovMatrixYX',
'extraInfo(CalculatedDistanceCovMatrixYX)')
68variables.addAlias(
'DistanceCovMatrixYY',
'extraInfo(CalculatedDistanceCovMatrixYY)')
69variables.addAlias(
'DistanceCovMatrixYZ',
'extraInfo(CalculatedDistanceCovMatrixYZ)')
70variables.addAlias(
'DistanceCovMatrixZX',
'extraInfo(CalculatedDistanceCovMatrixZX)')
71variables.addAlias(
'DistanceCovMatrixZY',
'extraInfo(CalculatedDistanceCovMatrixZY)')
72variables.addAlias(
'DistanceCovMatrixZZ',
'extraInfo(CalculatedDistanceCovMatrixZZ)')
74my_path = b2.create_path()
81stdc.stdPi(listtype=
'all', path=my_path)
82stdc.stdPi(listtype=
'good', path=my_path)
83stdc.stdK(listtype=
'all', path=my_path)
84stdc.stdK(listtype=
'good', path=my_path)
85stdc.stdMu(listtype=
'all', path=my_path)
86stdc.stdMu(listtype=
'good', path=my_path)
88ma.reconstructDecay(
'D0:kpi -> K-:good pi+:good',
'', path=my_path)
89ma.matchMCTruth(
'D0:kpi', path=my_path)
90ma.applyCuts(
'D0:kpi',
'abs(mcPDG)==421', path=my_path)
91vx.raveFit(
'D0:kpi', 0.0, path=my_path)
93ma.reconstructDecay(
'J/psi:mumu -> mu+:good mu-:good',
'', path=my_path)
94vx.raveFit(
'J/psi:mumu', 0.0, path=my_path)
97ma.reconstructDecay(
'B+:tag -> anti-D0:kpi pi+:all',
'', path=my_path)
98ma.matchMCTruth(
'B+:tag', path=my_path)
99ma.applyCuts(
'B+:tag',
'isSignalAcceptMissingNeutrino>0.5', path=my_path)
100vx.raveFit(
'B+:tag', 0.0, path=my_path)
103ma.reconstructDecay(
'B-:sigT -> J/psi:mumu K-:good pi+:good pi-:good',
'', path=my_path)
104ma.matchMCTruth(
'B-:sigT', path=my_path)
105ma.applyCuts(
'B-:sigT',
'abs(mcPDG)==521', path=my_path)
107ma.reconstructDecay(
'Upsilon(4S):sig -> B+:tag B-:sigT',
'', path=my_path)
109mytestmodule2 = b2.register_module(
'BtubeCreator')
110my_path.add_module(mytestmodule2,
111 listName=
'Upsilon(4S):sig',
112 decayString=
'Upsilon(4S) -> ^B+ B-')
113vx.raveFit(
'B-:sigT', 0.0, constraint=
'btube', path=my_path)
115ma.calculateDistance(
'B-:sigT',
'B- -> ^J/psi K- pi+ pi-',
"vertexbtube", path=my_path)
117output_file =
'test.root'
118true_vars = [
'truex',
'truey',
'truez']
119avf_vars = [
'avf00',
'avf01',
'avf02',
'avf10',
'avf11',
'avf12',
'avf20',
'avf21',
'avf22',
'avfPx',
'avfPy',
'avfPz',
'avfE']
137common_vars = vc.kinematics + vc.vertex + vc.mc_vertex + vc.mc_truth + \
138 vc.mc_kinematics + [
'InvM',
'mcPxCms',
'mcPyCms',
'mcPzCms',
'mcECms']
145 'DistanceCovMatrixXX',
146 'DistanceCovMatrixXY',
147 'DistanceCovMatrixXZ',
148 'DistanceCovMatrixYX',
149 'DistanceCovMatrixYY',
150 'DistanceCovMatrixYZ',
151 'DistanceCovMatrixZX',
152 'DistanceCovMatrixZY',
153 'DistanceCovMatrixZZ']
154Distance_vars_sig = vu.create_aliases_for_selected(
155 list_of_variables=distance_vars,
156 decay_string=
'Upsilon(4S):sig -> B+:tag ^B-:sigT',
158D_vars_tagside = vu.create_aliases_for_selected(
159 list_of_variables=common_vars,
160 decay_string=
'B+:tag -> ^anti-D0:kpi pi+:all',
162U4S_vars_sig = vu.create_aliases_for_selected(
163 list_of_variables=common_vars + tube_vars + true_vars,
164 decay_string=
'Upsilon(4S):sig -> B+:tag ^B-:sigT',
166U4S_vars_tag = vu.create_aliases_for_selected(
167 list_of_variables=common_vars + avf_vars + true_vars,
168 decay_string=
'Upsilon(4S):sig -> ^B+:tag B-:sigT',
170U4S_vars = common_vars + U4S_vars_tag + U4S_vars_sig + D_vars_tagside + Distance_vars_sig
171ma.variablesToNtuple(
'Upsilon(4S):sig', U4S_vars,
172 filename=output_file, treename=
'u4stree', path=my_path)
173ma.variablesToNtuple(
'B+:tag', common_vars,
174 filename=output_file, treename=
'tagtree', path=my_path)
def require_file(filename, data_type="", py_case=None)
def clean_working_directory()
def safe_process(*args, **kwargs)