5 This module defines functions to add analysis DQM modules.
9 from stdPi0s
import stdPi0s
10 import modularAnalysis
as ma
13 def add_analysis_dqm(path):
14 ma.fillParticleList(
'gamma:physDQM',
'E > 0.15', path=path)
15 ma.fillParticleList(
'pi+:physDQM',
'pt>0.2 and abs(d0) < 2 and abs(z0) < 4', path=path)
16 ma.reconstructDecay(
'pi0:physDQM -> gamma:physDQM gamma:physDQM',
'0.10 < M < 0.15', 1,
True, path)
17 ma.reconstructDecay(
'K_S0:physDQM -> pi-:physDQM pi+:physDQM',
'0.48 < M < 0.52', 1,
True, path)
20 default_cleanup=
False,
24 harmonicMoments=
False,
29 dqm = b2.register_module(
'PhysicsObjectsDQM')
30 dqm.param(
'PI0PListName',
'pi0:physDQM')
31 dqm.param(
'KS0PListName',
'K_S0:physDQM')
35 def add_mirabelle_dqm(path):
37 MiraBelleMumu_path = b2.create_path()
38 MiraBelleDst1_path = b2.create_path()
39 MiraBelleNotDst1_path = b2.create_path()
40 MiraBelleDst2_path = b2.create_path()
42 trigger_skim_mumutight = path.add_module(
44 triggerLines=[
"software_trigger_cut&skim&accept_mumutight"],
47 trigger_skim_mumutight.if_value(
"==1", MiraBelleMumu_path, b2.AfterConditionPath.CONTINUE)
49 trigger_skim_dstar_1 = path.add_module(
51 triggerLines=[
"software_trigger_cut&skim&accept_dstar_1"],
54 trigger_skim_dstar_1.if_value(
"==1", MiraBelleDst1_path, b2.AfterConditionPath.CONTINUE)
56 trigger_skim_not_dstar_1 = path.add_module(
58 triggerLines=[
"software_trigger_cut&skim&accept_dstar_1"],
62 trigger_skim_not_dstar_1.if_value(
"==1", MiraBelleNotDst1_path, b2.AfterConditionPath.CONTINUE)
63 trigger_skim_dstar_2 = MiraBelleNotDst1_path.add_module(
65 triggerLines=[
"software_trigger_cut&skim&accept_dstar_2"],
68 trigger_skim_dstar_2.if_value(
"==1", MiraBelleDst2_path, b2.AfterConditionPath.CONTINUE)
71 ma.fillParticleList(
'mu+:physMiraBelle',
'', path=MiraBelleMumu_path)
72 MiraBelleMumu = b2.register_module(
'PhysicsObjectsMiraBelle')
73 MiraBelleMumu.param(
'MuPListName',
'mu+:physMiraBelle')
74 MiraBelleMumu_path.add_module(MiraBelleMumu)
77 ma.fillParticleList(
'pi+:MiraBelleDst1',
'abs(d0)<0.5 and abs(z0)<3', path=MiraBelleDst1_path)
78 ma.fillParticleList(
'K+:MiraBelleDst1',
'abs(d0)<0.5 and abs(z0)<3', path=MiraBelleDst1_path)
79 ma.reconstructDecay(
'D0:MiraBelleDst1_kpi -> K-:MiraBelleDst1 pi+:MiraBelleDst1',
'1.7 < M < 2.1', path=MiraBelleDst1_path)
80 ma.reconstructDecay(
'D*+:MiraBelleDst1_kpi -> D0:MiraBelleDst1_kpi pi+:MiraBelleDst1',
81 'useCMSFrame(p) > 2.5 and massDifference(0) < 0.16', path=MiraBelleDst1_path)
82 MiraBelleDst1 = b2.register_module(
'PhysicsObjectsMiraBelleDst')
83 MiraBelleDst1.param(
'DstListName',
'D*+:MiraBelleDst1_kpi')
84 MiraBelleDst1_path.add_module(MiraBelleDst1)
87 ma.fillParticleList(
'pi+:MiraBelleDst2',
'abs(d0)<0.5 and abs(z0)<3', path=MiraBelleDst2_path)
88 ma.fillParticleList(
'K+:MiraBelleDst2',
'abs(d0)<0.5 and abs(z0)<3', path=MiraBelleDst2_path)
89 stdPi0s(listtype=
'eff60_Jan2020', path=MiraBelleDst2_path)
91 'D0:MiraBelleDst2_kpipi0 -> K-:MiraBelleDst2 pi+:MiraBelleDst2 pi0:eff60_Jan2020',
93 path=MiraBelleDst2_path)
94 ma.reconstructDecay(
'D*+:MiraBelleDst2_kpipi0 -> D0:MiraBelleDst2_kpipi0 pi+:MiraBelleDst2',
95 'useCMSFrame(p) > 2.5 and massDifference(0) < 0.16', path=MiraBelleDst2_path)
96 MiraBelleDst2 = b2.register_module(
'PhysicsObjectsMiraBelleDst2')
97 MiraBelleDst2.param(
'DstListName',
'D*+:MiraBelleDst2_kpipi0')
98 MiraBelleDst2_path.add_module(MiraBelleDst2)