9 import modularAnalysis
as ma
13 import stdCharged
as stdc
16 from variables
import variables
18 variables.addAlias(
'TubeX',
'extraInfo(TubePosX)')
19 variables.addAlias(
'TubeY',
'extraInfo(TubePosY)')
20 variables.addAlias(
'TubeZ',
'extraInfo(TubePosZ)')
21 variables.addAlias(
'Tube00',
'extraInfo(TubeCov00)')
22 variables.addAlias(
'Tube01',
'extraInfo(TubeCov01)')
23 variables.addAlias(
'Tube02',
'extraInfo(TubeCov02)')
24 variables.addAlias(
'Tube10',
'extraInfo(TubeCov10)')
25 variables.addAlias(
'Tube11',
'extraInfo(TubeCov11)')
26 variables.addAlias(
'Tube12',
'extraInfo(TubeCov12)')
27 variables.addAlias(
'Tube20',
'extraInfo(TubeCov20)')
28 variables.addAlias(
'Tube21',
'extraInfo(TubeCov21)')
29 variables.addAlias(
'Tube22',
'extraInfo(TubeCov22)')
31 variables.addAlias(
'avf00',
'extraInfo(prod_vtx_cov00)')
32 variables.addAlias(
'avf01',
'extraInfo(prod_vtx_cov01)')
33 variables.addAlias(
'avf02',
'extraInfo(prod_vtx_cov02)')
34 variables.addAlias(
'avf10',
'extraInfo(prod_vtx_cov10)')
35 variables.addAlias(
'avf11',
'extraInfo(prod_vtx_cov11)')
36 variables.addAlias(
'avf12',
'extraInfo(prod_vtx_cov12)')
37 variables.addAlias(
'avf20',
'extraInfo(prod_vtx_cov20)')
38 variables.addAlias(
'avf21',
'extraInfo(prod_vtx_cov21)')
39 variables.addAlias(
'avf22',
'extraInfo(prod_vtx_cov22)')
41 variables.addAlias(
'avfPx',
'extraInfo(Px_after_avf)')
42 variables.addAlias(
'avfPy',
'extraInfo(Py_after_avf)')
43 variables.addAlias(
'avfPz',
'extraInfo(Pz_after_avf)')
44 variables.addAlias(
'avfE',
'extraInfo(E_after_avf)')
46 variables.addAlias(
'mcPxCms',
'useCMSFrame(mcPX)')
47 variables.addAlias(
'mcPyCms',
'useCMSFrame(mcPY)')
48 variables.addAlias(
'mcPzCms',
'useCMSFrame(mcPZ)')
49 variables.addAlias(
'mcECms',
'useCMSFrame(mcE)')
51 variables.addAlias(
'tube_dir_X',
'extraInfo(TubeDirX)')
52 variables.addAlias(
'tube_dir_Y',
'extraInfo(TubeDirY)')
53 variables.addAlias(
'tube_dir_Z',
'extraInfo(TubeDirZ)')
54 variables.addAlias(
'tube_B_aparent_Momentum_from_creatorB',
'extraInfo(TubeB_p_estimated)')
56 variables.addAlias(
'truex',
'matchedMC(x)')
57 variables.addAlias(
'truey',
'matchedMC(y)')
58 variables.addAlias(
'truez',
'matchedMC(z)')
60 my_path = b2.create_path()
64 ma.inputMdst(
'default',
68 stdc.stdPi(listtype=
'all', path=my_path)
69 stdc.stdPi(listtype=
'good', path=my_path)
70 stdc.stdK(listtype=
'all', path=my_path)
71 stdc.stdK(listtype=
'good', path=my_path)
72 stdc.stdMu(listtype=
'all', path=my_path)
73 stdc.stdMu(listtype=
'good', path=my_path)
75 ma.reconstructDecay(
'D0:kpi -> K-:good pi+:good',
'', path=my_path)
76 ma.matchMCTruth(
'D0:kpi', path=my_path)
77 ma.applyCuts(
'D0:kpi',
'abs(mcPDG)==421', path=my_path)
78 vx.raveFit(
'D0:kpi', 0.0, path=my_path)
80 ma.reconstructDecay(
'J/psi:mumu -> mu+:good mu-:good',
'', path=my_path)
81 vx.raveFit(
'J/psi:mumu', 0.0, path=my_path)
84 ma.reconstructDecay(
'B+:tag -> anti-D0:kpi pi+:all',
'', path=my_path)
85 ma.matchMCTruth(
'B+:tag', path=my_path)
86 ma.applyCuts(
'B+:tag',
'isSignalAcceptMissingNeutrino>0.5', path=my_path)
87 vx.raveFit(
'B+:tag', 0.0, path=my_path)
90 ma.reconstructDecay(
'B-:sigT -> J/psi:mumu K-:good pi+:good pi-:good',
'', path=my_path)
91 ma.matchMCTruth(
'B-:sigT', path=my_path)
92 ma.applyCuts(
'B-:sigT',
'abs(mcPDG)==521', path=my_path)
94 ma.reconstructDecay(
'Upsilon(4S):sig -> B+:tag B-:sigT',
'', path=my_path)
96 mytestmodule2 = b2.register_module(
'BtubeCreator')
100 my_path.add_module(mytestmodule2, listName=
'Upsilon(4S):sig', decayString=
'Upsilon(4S):sig -> ^B+:tag B-:sigT')
101 vx.raveFit(
'B-:sigT', 0.0, constraint=
'btube', path=my_path)
103 output_file =
'test.root'
104 true_vars = [
'truex',
'truey',
'truez']
105 avf_vars = [
'avf00',
'avf01',
'avf02',
'avf10',
'avf11',
'avf12',
'avf20',
'avf21',
'avf22',
'avfPx',
'avfPy',
'avfPz',
'avfE']
122 'tube_B_aparent_Momentum_from_creatorB']
124 common_vars = vc.kinematics + vc.vertex + vc.mc_vertex + vc.mc_truth + \
125 vc.mc_kinematics + [
'InvM',
'mcPxCms',
'mcPyCms',
'mcPzCms',
'mcECms']
126 D_vars_tagside = vu.create_aliases_for_selected(
127 list_of_variables=common_vars,
128 decay_string=
'B+:tag -> ^anti-D0:kpi pi+:all',
130 U4S_vars_sig = vu.create_aliases_for_selected(
131 list_of_variables=common_vars + tube_vars + true_vars,
132 decay_string=
'Upsilon(4S):sig -> B+:tag ^B-:sigT',
134 U4S_vars_tag = vu.create_aliases_for_selected(
135 list_of_variables=common_vars + avf_vars + true_vars,
136 decay_string=
'Upsilon(4S):sig -> ^B+:tag B-:sigT',
138 U4S_vars = common_vars + U4S_vars_tag + U4S_vars_sig + D_vars_tagside
139 ma.variablesToNtuple(
'Upsilon(4S):sig', U4S_vars,
140 filename=output_file, treename=
'u4stree', path=my_path)
141 ma.variablesToNtuple(
'B+:tag', common_vars,
142 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)