ATLAS Offline Software
Loading...
Searching...
No Matches
BPHY23 Namespace Reference

Functions

 BPHY23Cfg (flags)

Variables

str BPHYDerivationName = "BPHY23"
str streamName = "StreamDAOD_BPHY23"

Function Documentation

◆ BPHY23Cfg()

BPHY23.BPHY23Cfg ( flags)

Definition at line 16 of file BPHY23.py.

16def BPHY23Cfg(flags):
17 from AthenaServices.PartPropSvcConfig import PartPropSvcCfg
18 from DerivationFrameworkBPhys.commonBPHYMethodsCfg import (BPHY_V0ToolCfg, BPHY_InDetDetailedTrackSelectorToolCfg, BPHY_VertexPointEstimatorCfg, BPHY_TrkVKalVrtFitterCfg)
19 from JpsiUpsilonTools.JpsiUpsilonToolsConfig import PrimaryVertexRefittingToolCfg
20 acc = ComponentAccumulator()
21 acc.getPrimaryAndMerge(PartPropSvcCfg(flags))
22 isSimulation = flags.Input.isMC
23 V0Tools = acc.popToolsAndMerge(BPHY_V0ToolCfg(flags, BPHYDerivationName))
24 vkalvrt = acc.popToolsAndMerge(BPHY_TrkVKalVrtFitterCfg(flags, BPHYDerivationName)) # VKalVrt vertex fitter
25 acc.addPublicTool(vkalvrt)
26 acc.addPublicTool(V0Tools)
27 trackselect = acc.popToolsAndMerge(BPHY_InDetDetailedTrackSelectorToolCfg(flags, BPHYDerivationName))
28 acc.addPublicTool(trackselect)
29 vpest = acc.popToolsAndMerge(BPHY_VertexPointEstimatorCfg(flags, BPHYDerivationName))
30 acc.addPublicTool(vpest)
31
32 # mass bounds and constants used in the following
33 X_hi = 141000.0
34
35 Jpsi_lo = 2600.0
36 Jpsi_hi = 3500.0
37 Zc_lo = 3650.0
38 Zc_hi = 4150.0
39 Psi_lo = 3350.0
40 Psi_hi = 4200.0
41 B_lo = 4850.0
42 B_hi = 5700.0
43 Bs0_lo = 4950.0
44 Bs0_hi = 5800.0
45 Upsi_lo = 8900.0
46 Upsi_hi = 9900.0
47
48 Mumass = 105.658
49 Pimass = 139.570
50 Kmass = 493.677
51 Jpsimass = 3096.916
52 Psi2Smass = 3686.10
53 X3872mass = 3871.65
54 Zcmass = 3887.1
55 Bpmmass = 5279.34
56 B0mass = 5279.66
57 Bs0mass = 5366.92
58 Upsimass = 9460.30
59
60 BPHY23JpsiFinder = CompFactory.Analysis.JpsiFinder(
61 name = "BPHY23JpsiFinder",
62 muAndMu = True,
63 muAndTrack = False,
64 TrackAndTrack = False,
65 assumeDiMuons = True, # If true, will assume dimu hypothesis and use PDG value for mu mass
66 trackThresholdPt = 2400.,
67 invMassLower = Jpsi_lo,
68 invMassUpper = Upsi_hi,
69 Chi2Cut = 10.,
70 oppChargesOnly = True,
71 atLeastOneComb = True,
72 useCombinedMeasurement = False, # Only takes effect if combOnly=True
73 muonCollectionKey = "Muons",
74 TrackParticleCollection = "InDetTrackParticles",
75 V0VertexFitterTool = None,
76 useV0Fitter = False, # if False a TrkVertexFitterTool will be used
77 TrkVertexFitterTool = vkalvrt, # VKalVrt vertex fitter
78 TrackSelectorTool = trackselect,
79 VertexPointEstimator = vpest,
80 useMCPCuts = False )
81 acc.addPublicTool(BPHY23JpsiFinder)
82
83 BPHY23_Reco_mumu = CompFactory.DerivationFramework.Reco_Vertex(
84 name = "BPHY23_Reco_mumu",
85 VertexSearchTool = BPHY23JpsiFinder,
86 OutputVtxContainerName = "BPHY23OniaCandidates",
87 PVContainerName = "PrimaryVertices",
88 RefPVContainerName = "SHOULDNOTBEUSED",
89 V0Tools = V0Tools,
90 PVRefitter = acc.popToolsAndMerge(PrimaryVertexRefittingToolCfg(flags)),
91 DoVertexType = 1)
92
93
94 # X(3872), Psi(2S) -> J/psi + pi pi
95 BPHY23PsiX3872_Jpsi2Trk = CompFactory.Analysis.JpsiPlus2Tracks(
96 name = "BPHY23PsiX3872_Jpsi2Trk",
97 kaonkaonHypothesis = False,
98 pionpionHypothesis = True,
99 kaonpionHypothesis = False,
100 kaonprotonHypothesis = False,
101 trkThresholdPt = 380.,
102 trkMaxEta = 2.6,
103 oppChargesOnly = False,
104 JpsiMassLower = Jpsi_lo,
105 JpsiMassUpper = Jpsi_hi,
106 TrkQuadrupletMassLower = Psi_lo,
107 TrkQuadrupletMassUpper = Psi_hi,
108 Chi2Cut = 10.,
109 JpsiContainerKey = "BPHY23OniaCandidates",
110 TrackParticleCollection = "InDetTrackParticles",
111 MuonsUsedInJpsi = "Muons",
112 ExcludeJpsiMuonsOnly = True,
113 TrkVertexFitterTool = vkalvrt,
114 TrackSelectorTool = trackselect,
115 UseMassConstraint = False)
116 acc.addPublicTool(BPHY23PsiX3872_Jpsi2Trk)
117
118 # Bs0 -> J/psi + K K
119 BPHY23Bs0_Jpsi2Trk = CompFactory.Analysis.JpsiPlus2Tracks(
120 name = "BPHY23Bs0_Jpsi2Trk",
121 kaonkaonHypothesis = True,
122 pionpionHypothesis = False,
123 kaonpionHypothesis = False,
124 kaonprotonHypothesis = False,
125 trkThresholdPt = 380.,
126 trkMaxEta = 2.6,
127 oppChargesOnly = False,
128 JpsiMassLower = Jpsi_lo,
129 JpsiMassUpper = Jpsi_hi,
130 TrkQuadrupletMassLower = Bs0_lo,
131 TrkQuadrupletMassUpper = Bs0_hi,
132 Chi2Cut = 10.,
133 JpsiContainerKey = "BPHY23OniaCandidates",
134 TrackParticleCollection = "InDetTrackParticles",
135 MuonsUsedInJpsi = "Muons",
136 ExcludeJpsiMuonsOnly = True,
137 TrkVertexFitterTool = vkalvrt,
138 TrackSelectorTool = trackselect,
139 UseMassConstraint = False)
140 acc.addPublicTool(BPHY23Bs0_Jpsi2Trk)
141
142 # B0 -> J/psi + K pi
143 BPHY23B0_Jpsi2Trk = CompFactory.Analysis.JpsiPlus2Tracks(
144 name = "BPHY23B0_Jpsi2Trk",
145 kaonkaonHypothesis = False,
146 pionpionHypothesis = False,
147 kaonpionHypothesis = True,
148 kaonprotonHypothesis = False,
149 trkThresholdPt = 380.,
150 trkMaxEta = 2.6,
151 oppChargesOnly = False,
152 JpsiMassLower = Jpsi_lo,
153 JpsiMassUpper = Jpsi_hi,
154 TrkQuadrupletMassLower = B_lo,
155 TrkQuadrupletMassUpper = B_hi,
156 Chi2Cut = 10.,
157 JpsiContainerKey = "BPHY23OniaCandidates",
158 TrackParticleCollection = "InDetTrackParticles",
159 MuonsUsedInJpsi = "Muons",
160 ExcludeJpsiMuonsOnly = True,
161 TrkVertexFitterTool = vkalvrt,
162 TrackSelectorTool = trackselect,
163 UseMassConstraint = False)
164 acc.addPublicTool(BPHY23B0_Jpsi2Trk)
165
166
167 # Zc(3900)+ -> J/psi pi
168 BPHY23Zc3900_Jpsi1Trk = CompFactory.Analysis.JpsiPlus1Track(
169 name = "BPHY23Zc3900_Jpsi1Trk",
170 pionHypothesis = True,
171 kaonHypothesis = False,
172 trkThresholdPt = 380.,
173 trkMaxEta = 2.6,
174 JpsiMassLower = Jpsi_lo,
175 JpsiMassUpper = Jpsi_hi,
176 TrkTrippletMassLower = Zc_lo,
177 TrkTrippletMassUpper = Zc_hi,
178 Chi2Cut = 10.0,
179 JpsiContainerKey = "BPHY23OniaCandidates",
180 TrackParticleCollection = "InDetTrackParticles",
181 MuonsUsedInJpsi = "Muons",
182 ExcludeJpsiMuonsOnly = True,
183 TrkVertexFitterTool = vkalvrt,
184 TrackSelectorTool = trackselect,
185 UseMassConstraint = False)
186 acc.addPublicTool(BPHY23Zc3900_Jpsi1Trk)
187
188 # B+ -> J/psi K
189 BPHY23Bpm_Jpsi1Trk = CompFactory.Analysis.JpsiPlus1Track(
190 name = "BPHY23Bpm_Jpsi1Trk",
191 pionHypothesis = False,
192 kaonHypothesis = True,
193 trkThresholdPt = 380.,
194 trkMaxEta = 2.6,
195 JpsiMassLower = Jpsi_lo,
196 JpsiMassUpper = Jpsi_hi,
197 TrkTrippletMassLower = B_lo,
198 TrkTrippletMassUpper = B_hi,
199 Chi2Cut = 10.0,
200 JpsiContainerKey = "BPHY23OniaCandidates",
201 TrackParticleCollection = "InDetTrackParticles",
202 MuonsUsedInJpsi = "Muons",
203 ExcludeJpsiMuonsOnly = True,
204 TrkVertexFitterTool = vkalvrt,
205 TrackSelectorTool = trackselect,
206 UseMassConstraint = False)
207 acc.addPublicTool(BPHY23Bpm_Jpsi1Trk)
208
209 BPHY23FourTrackReco_PsiX3872 = CompFactory.DerivationFramework.Reco_Vertex(
210 name = "BPHY23FourTrackReco_PsiX3872",
211 VertexSearchTool = BPHY23PsiX3872_Jpsi2Trk,
212 OutputVtxContainerName = "BPHY23FourTrack_PsiX3872",
213 PVContainerName = "PrimaryVertices",
214 V0Tools = V0Tools,
215 PVRefitter = acc.popToolsAndMerge(PrimaryVertexRefittingToolCfg(flags)),
216 RefitPV = False,
217 DoVertexType = 0)
218
219 BPHY23FourTrackReco_Bs0 = CompFactory.DerivationFramework.Reco_Vertex(
220 name = "BPHY23FourTrackReco_Bs0",
221 VertexSearchTool = BPHY23Bs0_Jpsi2Trk,
222 OutputVtxContainerName = "BPHY23FourTrack_Bs0",
223 PVContainerName = "PrimaryVertices",
224 V0Tools = V0Tools,
225 PVRefitter = acc.popToolsAndMerge(PrimaryVertexRefittingToolCfg(flags)),
226 RefitPV = False,
227 DoVertexType = 0)
228
229 BPHY23FourTrackReco_B0 = CompFactory.DerivationFramework.Reco_Vertex(
230 name = "BPHY23FourTrackReco_B0",
231 VertexSearchTool = BPHY23B0_Jpsi2Trk,
232 OutputVtxContainerName = "BPHY23FourTrack_B0",
233 PVContainerName = "PrimaryVertices",
234 V0Tools = V0Tools,
235 PVRefitter = acc.popToolsAndMerge(PrimaryVertexRefittingToolCfg(flags)),
236 RefitPV = False,
237 DoVertexType = 0)
238
239 BPHY23ThreeTrackReco_Zc3900 = CompFactory.DerivationFramework.Reco_Vertex(
240 name = "BPHY23ThreeTrackReco_Zc3900",
241 VertexSearchTool = BPHY23Zc3900_Jpsi1Trk,
242 OutputVtxContainerName = "BPHY23ThreeTrack_Zc3900",
243 PVContainerName = "PrimaryVertices",
244 V0Tools = V0Tools,
245 PVRefitter = acc.popToolsAndMerge(PrimaryVertexRefittingToolCfg(flags)),
246 RefitPV = False,
247 DoVertexType = 0)
248
249 BPHY23ThreeTrackReco_Bpm = CompFactory.DerivationFramework.Reco_Vertex(
250 name = "BPHY23ThreeTrackReco_Bpm",
251 VertexSearchTool = BPHY23Bpm_Jpsi1Trk,
252 OutputVtxContainerName = "BPHY23ThreeTrack_Bpm",
253 PVContainerName = "PrimaryVertices",
254 V0Tools = V0Tools,
255 PVRefitter = acc.popToolsAndMerge(PrimaryVertexRefittingToolCfg(flags)),
256 RefitPV = False,
257 DoVertexType = 0)
258
259 # revertex with mass constraints to reduce combinatorics
260 # Psi(2S) -> J/psi pi pi
261 BPHY23Rev_Psi4Body = CompFactory.DerivationFramework.ReVertex(
262 name = "BPHY23Rev_Psi4Body",
263 InputVtxContainerName = "BPHY23FourTrack_PsiX3872",
264 TrackIndices = [ 0, 1, 2, 3 ],
265 SubVertexTrackIndices = [ 1, 2 ],
266 RefitPV = False,
267 UseMassConstraint = True,
268 VertexMass = Psi2Smass,
269 SubVertexMass = Jpsimass,
270 MassInputParticles = [Mumass, Mumass, Pimass, Pimass],
271 Chi2Cut = 25.,
272 TrkVertexFitterTool = vkalvrt,
273 PVRefitter = acc.popToolsAndMerge(PrimaryVertexRefittingToolCfg(flags)),
274 V0Tools = V0Tools,
275 OutputVtxContainerName = "BPHY23Revtx_Psi4Body")
276
277 # X(3872) -> J/psi pi pi
278 BPHY23Rev_X3872 = CompFactory.DerivationFramework.ReVertex(
279 name = "BPHY23Rev_X3872",
280 InputVtxContainerName = "BPHY23FourTrack_PsiX3872",
281 TrackIndices = [ 0, 1, 2, 3 ],
282 SubVertexTrackIndices = [ 1, 2 ],
283 RefitPV = False,
284 UseMassConstraint = True,
285 VertexMass = X3872mass,
286 SubVertexMass = Jpsimass,
287 MassInputParticles = [Mumass, Mumass, Pimass, Pimass],
288 Chi2Cut = 25.,
289 TrkVertexFitterTool = vkalvrt,
290 PVRefitter = acc.popToolsAndMerge(PrimaryVertexRefittingToolCfg(flags)),
291 V0Tools = V0Tools,
292 OutputVtxContainerName = "BPHY23Revtx_X3872")
293
294 # Bs0 -> J/psi K K
295 BPHY23Rev_Bs0 = CompFactory.DerivationFramework.ReVertex(
296 name = "BPHY23Rev_Bs0",
297 InputVtxContainerName = "BPHY23FourTrack_Bs0",
298 TrackIndices = [ 0, 1, 2, 3 ],
299 SubVertexTrackIndices = [ 1, 2 ],
300 RefitPV = False,
301 UseMassConstraint = True,
302 VertexMass = Bs0mass,
303 SubVertexMass = Jpsimass,
304 MassInputParticles = [Mumass, Mumass, Kmass, Kmass],
305 Chi2Cut = 25.,
306 TrkVertexFitterTool = vkalvrt,
307 PVRefitter = acc.popToolsAndMerge(PrimaryVertexRefittingToolCfg(flags)),
308 V0Tools = V0Tools,
309 OutputVtxContainerName = "BPHY23Revtx_Bs0")
310
311 # B0 -> J/psi K pi
312 BPHY23Rev_B0Kpi = CompFactory.DerivationFramework.ReVertex(
313 name = "BPHY23Rev_B0Kpi",
314 InputVtxContainerName = "BPHY23FourTrack_B0",
315 TrackIndices = [ 0, 1, 2, 3 ],
316 SubVertexTrackIndices = [ 1, 2 ],
317 RefitPV = False,
318 UseMassConstraint = True,
319 VertexMass = B0mass,
320 SubVertexMass = Jpsimass,
321 MassInputParticles = [Mumass, Mumass, Kmass, Pimass],
322 Chi2Cut = 25.,
323 TrkVertexFitterTool = vkalvrt,
324 PVRefitter = acc.popToolsAndMerge(PrimaryVertexRefittingToolCfg(flags)),
325 V0Tools = V0Tools,
326 OutputVtxContainerName = "BPHY23Revtx_B0Kpi")
327
328 # B0 -> J/psi pi K
329 BPHY23Rev_B0piK = CompFactory.DerivationFramework.ReVertex(
330 name = "BPHY23Rev_B0piK",
331 InputVtxContainerName = "BPHY23FourTrack_B0",
332 TrackIndices = [ 0, 1, 2, 3 ],
333 SubVertexTrackIndices = [ 1, 2 ],
334 RefitPV = False,
335 UseMassConstraint = True,
336 VertexMass = B0mass,
337 SubVertexMass = Jpsimass,
338 MassInputParticles = [Mumass, Mumass, Pimass, Kmass],
339 Chi2Cut = 25.,
340 TrkVertexFitterTool = vkalvrt,
341 PVRefitter = acc.popToolsAndMerge(PrimaryVertexRefittingToolCfg(flags)),
342 V0Tools = V0Tools,
343 OutputVtxContainerName = "BPHY23Revtx_B0piK")
344
345 # Zc3900 -> J/psi pi
346 BPHY23Rev_Zc3900 = CompFactory.DerivationFramework.ReVertex(
347 name = "BPHY23Rev_Zc3900",
348 InputVtxContainerName = "BPHY23ThreeTrack_Zc3900",
349 TrackIndices = [ 0, 1, 2 ],
350 SubVertexTrackIndices = [ 1, 2 ],
351 RefitPV = False,
352 UseMassConstraint = True,
353 SubVertexMass = Jpsimass,
354 MassInputParticles = [Mumass, Mumass, Pimass],
355 Chi2Cut = 25.,
356 BMassLower = Zc_lo,
357 BMassUpper = Zc_hi,
358 TrkVertexFitterTool = vkalvrt,
359 PVRefitter = acc.popToolsAndMerge(PrimaryVertexRefittingToolCfg(flags)),
360 V0Tools = V0Tools,
361 OutputVtxContainerName = "BPHY23Revtx_Zc3900")
362
363 # Bpm -> J/psi K
364 BPHY23Rev_Bpm = CompFactory.DerivationFramework.ReVertex(
365 name = "BPHY23Rev_Bpm",
366 InputVtxContainerName = "BPHY23ThreeTrack_Bpm",
367 TrackIndices = [ 0, 1, 2 ],
368 SubVertexTrackIndices = [ 1, 2 ],
369 RefitPV = False,
370 UseMassConstraint = True,
371 VertexMass = Bpmmass,
372 SubVertexMass = Jpsimass,
373 MassInputParticles = [Mumass, Mumass, Kmass],
374 Chi2Cut = 25.,
375 TrkVertexFitterTool = vkalvrt,
376 PVRefitter = acc.popToolsAndMerge(PrimaryVertexRefittingToolCfg(flags)),
377 V0Tools = V0Tools,
378 OutputVtxContainerName = "BPHY23Revtx_Bpm")
379
380
381 BPHY23Select_Jpsi = CompFactory.DerivationFramework.Select_onia2mumu(
382 name = "BPHY23Select_Jpsi",
383 HypothesisName = "Jpsi",
384 InputVtxContainerName = "BPHY23OniaCandidates",
385 V0Tools = V0Tools,
386 TrkMasses = [Mumass, Mumass],
387 MassMin = Jpsi_lo,
388 MassMax = Jpsi_hi,
389 DoVertexType = 0)
390
391 BPHY23Select_Psi = CompFactory.DerivationFramework.Select_onia2mumu(
392 name = "BPHY23Select_Psi",
393 HypothesisName = "Psi",
394 InputVtxContainerName = "BPHY23OniaCandidates",
395 V0Tools = V0Tools,
396 TrkMasses = [Mumass, Mumass],
397 MassMin = Psi_lo,
398 MassMax = Psi_hi,
399 DoVertexType = 0)
400
401 BPHY23Select_Upsi = CompFactory.DerivationFramework.Select_onia2mumu(
402 name = "BPHY23Select_Upsi",
403 HypothesisName = "Upsi",
404 InputVtxContainerName = "BPHY23OniaCandidates",
405 V0Tools = V0Tools,
406 TrkMasses = [Mumass, Mumass],
407 MassMin = Upsi_lo,
408 MassMax = Upsi_hi,
409 DoVertexType = 0)
410
411 BPHY23Rev_Jpsi = CompFactory.DerivationFramework.ReVertex(
412 name = "BPHY23Rev_Jpsi",
413 InputVtxContainerName = "BPHY23OniaCandidates",
414 HypothesisNames = [ "Jpsi" ],
415 TrackIndices = [ 0, 1 ],
416 RefitPV = False,
417 UseMassConstraint = True,
418 VertexMass = Jpsimass,
419 MassInputParticles = [Mumass, Mumass],
420 Chi2Cut = 50.,
421 TrkVertexFitterTool = vkalvrt,
422 PVRefitter = acc.popToolsAndMerge(PrimaryVertexRefittingToolCfg(flags)),
423 V0Tools = V0Tools,
424 OutputVtxContainerName = "BPHY23Revtx_Jpsi")
425
426 BPHY23Rev_Psi = CompFactory.DerivationFramework.ReVertex(
427 name = "BPHY23Rev_Psi",
428 InputVtxContainerName = "BPHY23OniaCandidates",
429 HypothesisNames = [ "Psi" ],
430 TrackIndices = [ 0, 1 ],
431 RefitPV = False,
432 UseMassConstraint = True,
433 VertexMass = Psi2Smass,
434 MassInputParticles = [Mumass, Mumass],
435 Chi2Cut = 50.,
436 TrkVertexFitterTool = vkalvrt,
437 PVRefitter = acc.popToolsAndMerge(PrimaryVertexRefittingToolCfg(flags)),
438 V0Tools = V0Tools,
439 OutputVtxContainerName = "BPHY23Revtx_Psi")
440
441 BPHY23Rev_Upsi = CompFactory.DerivationFramework.ReVertex(
442 name = "BPHY23Rev_Upsi",
443 InputVtxContainerName = "BPHY23OniaCandidates",
444 HypothesisNames = [ "Upsi" ],
445 TrackIndices = [ 0, 1 ],
446 RefitPV = False,
447 UseMassConstraint = True,
448 VertexMass = Upsimass,
449 MassInputParticles = [Mumass, Mumass],
450 Chi2Cut = 50.,
451 TrkVertexFitterTool = vkalvrt,
452 PVRefitter = acc.popToolsAndMerge(PrimaryVertexRefittingToolCfg(flags)),
453 V0Tools = V0Tools,
454 OutputVtxContainerName = "BPHY23Revtx_Upsi")
455
456
457
460
461 list_2trk0trk_hypo = ["Bs2KJpsi0", "Bs2KPsi0", "Bs2KUpsi0",
462 "B0KpiJpsi0", "B0KpiPsi0", "B0KpiUpsi0",
463 "B0piKJpsi0", "B0piKPsi0", "B0piKUpsi0"]
464 list_2trk0trk_psiInput = ["BPHY23Revtx_Bs0", "BPHY23Revtx_Bs0", "BPHY23Revtx_Bs0",
465 "BPHY23Revtx_B0Kpi", "BPHY23Revtx_B0Kpi", "BPHY23Revtx_B0Kpi",
466 "BPHY23Revtx_B0piK", "BPHY23Revtx_B0piK", "BPHY23Revtx_B0piK"]
467 list_2trk0trk_jpsiInput = ["BPHY23Revtx_Jpsi", "BPHY23Revtx_Psi", "BPHY23Revtx_Upsi",
468 "BPHY23Revtx_Jpsi", "BPHY23Revtx_Psi", "BPHY23Revtx_Upsi",
469 "BPHY23Revtx_Jpsi", "BPHY23Revtx_Psi", "BPHY23Revtx_Upsi"]
470 list_2trk0trk_jpsiMass = [Jpsimass, Jpsimass, Jpsimass,
471 Jpsimass, Jpsimass, Jpsimass,
472 Jpsimass, Jpsimass, Jpsimass]
473 list_2trk0trk_psiMass = [Bs0mass, Bs0mass, Bs0mass,
474 B0mass, B0mass, B0mass,
475 B0mass, B0mass, B0mass]
476 list_2trk0trk_dau3Mass = [Kmass, Kmass, Kmass,
477 Kmass, Kmass, Kmass,
478 Pimass, Pimass, Pimass]
479 list_2trk0trk_dau4Mass = [Kmass, Kmass, Kmass,
480 Pimass, Pimass, Pimass,
481 Kmass, Kmass, Kmass]
482 list_2trk0trk_jpsi2Mass = [Jpsimass, Psi2Smass, Upsimass,
483 Jpsimass, Psi2Smass, Upsimass,
484 Jpsimass, Psi2Smass, Upsimass]
485
486 list_2trk0trk_obj = []
487 for hypo in list_2trk0trk_hypo:
488 list_2trk0trk_obj.append( CompFactory.DerivationFramework.JpsiPlusPsiCascade("BPHY23_"+hypo) )
489
490 for i in range(len(list_2trk0trk_obj)):
491 list_2trk0trk_obj[i].HypothesisName = list_2trk0trk_hypo[i]
492 list_2trk0trk_obj[i].JpsiVertices = list_2trk0trk_jpsiInput[i]
493 list_2trk0trk_obj[i].PsiVertices = list_2trk0trk_psiInput[i]
494 list_2trk0trk_obj[i].NumberOfPsiDaughters = 4
495 list_2trk0trk_obj[i].MassLowerCut = 0.
496 list_2trk0trk_obj[i].MassUpperCut = X_hi
497 list_2trk0trk_obj[i].Chi2Cut = 30.
498 list_2trk0trk_obj[i].MaxCandidates = 15
499 list_2trk0trk_obj[i].MaxnPV = 100
500 list_2trk0trk_obj[i].PVRefitter = acc.popToolsAndMerge(PrimaryVertexRefittingToolCfg(flags))
501 list_2trk0trk_obj[i].TrkVertexFitterTool = vkalvrt
502 list_2trk0trk_obj[i].VxPrimaryCandidateName = "PrimaryVertices"
503 list_2trk0trk_obj[i].RefPVContainerName = "BPHY23_"+list_2trk0trk_hypo[i]+"_RefPrimaryVertices"
504 list_2trk0trk_obj[i].CascadeVertexCollections = ["BPHY23_"+list_2trk0trk_hypo[i]+"_CascadeVtx1","BPHY23_"+list_2trk0trk_hypo[i]+"_CascadeVtx2","BPHY23_"+list_2trk0trk_hypo[i]+"_CascadeVtx3"]
505 list_2trk0trk_obj[i].RefitPV = True
506 list_2trk0trk_obj[i].Vtx1Daug3MassHypo = list_2trk0trk_dau3Mass[i]
507 list_2trk0trk_obj[i].Vtx1Daug4MassHypo = list_2trk0trk_dau4Mass[i]
508 list_2trk0trk_obj[i].ApplyJpsiMassConstraint = True
509 list_2trk0trk_obj[i].JpsiMass = list_2trk0trk_jpsiMass[i]
510 list_2trk0trk_obj[i].ApplyPsiMassConstraint = True
511 list_2trk0trk_obj[i].PsiMass = list_2trk0trk_psiMass[i]
512 list_2trk0trk_obj[i].ApplyJpsi2MassConstraint = True
513 list_2trk0trk_obj[i].Jpsi2Mass = list_2trk0trk_jpsi2Mass[i]
514
515 list2_2trk0trk_hypo = ["Psi2Jpsi0", "Psi2Psi0", "Psi2Upsi0",
516 "X3872Jpsi0", "X3872Psi0", "X3872Upsi0"]
517 list2_2trk0trk_psi1Input = ["BPHY23Revtx_Psi4Body", "BPHY23Revtx_Psi4Body", "BPHY23Revtx_Psi4Body",
518 "BPHY23Revtx_X3872", "BPHY23Revtx_X3872", "BPHY23Revtx_X3872"]
519 list2_2trk0trk_psi2Input = ["BPHY23Revtx_Jpsi", "BPHY23Revtx_Psi", "BPHY23Revtx_Upsi",
520 "BPHY23Revtx_Jpsi", "BPHY23Revtx_Psi", "BPHY23Revtx_Upsi"]
521 list2_2trk0trk_jpsi2lo = [Jpsi_lo, Psi_lo, Upsi_lo, Jpsi_lo, Psi_lo, Upsi_lo]
522 list2_2trk0trk_jpsi2hi = [Jpsi_hi, Psi_hi, Upsi_hi, Jpsi_hi, Psi_hi, Upsi_hi]
523 list2_2trk0trk_jpsi1mass = [Jpsimass, Jpsimass, Jpsimass, Jpsimass, Jpsimass, Jpsimass]
524 list2_2trk0trk_psi1mass = [Psi2Smass, Psi2Smass, Psi2Smass, X3872mass, X3872mass, X3872mass]
525 list2_2trk0trk_jpsi2mass = [Jpsimass, Psi2Smass, Upsimass, Jpsimass, Psi2Smass, Upsimass]
526
527 list2_2trk0trk_obj = []
528 for hypo in list2_2trk0trk_hypo:
529 list2_2trk0trk_obj.append( CompFactory.DerivationFramework.PsiPlusPsiSingleVertex("BPHY23_"+hypo) )
530
531 for i in range(len(list2_2trk0trk_obj)):
532 list2_2trk0trk_obj[i].HypothesisName = list2_2trk0trk_hypo[i]
533 list2_2trk0trk_obj[i].Psi1Vertices = list2_2trk0trk_psi1Input[i]
534 list2_2trk0trk_obj[i].Psi2Vertices = list2_2trk0trk_psi2Input[i]
535 list2_2trk0trk_obj[i].MaxCandidates = 15
536 list2_2trk0trk_obj[i].NumberOfPsi1Daughters = 4
537 list2_2trk0trk_obj[i].NumberOfPsi2Daughters = 2
538 list2_2trk0trk_obj[i].Jpsi1MassLowerCut = Jpsi_lo
539 list2_2trk0trk_obj[i].Jpsi1MassUpperCut = Jpsi_hi
540 list2_2trk0trk_obj[i].Psi1MassLowerCut = Psi_lo
541 list2_2trk0trk_obj[i].Psi1MassUpperCut = Psi_hi
542 list2_2trk0trk_obj[i].Jpsi2MassLowerCut = list2_2trk0trk_jpsi2lo[i]
543 list2_2trk0trk_obj[i].Jpsi2MassUpperCut = list2_2trk0trk_jpsi2hi[i]
544 list2_2trk0trk_obj[i].MassLowerCut = 0.
545 list2_2trk0trk_obj[i].MassUpperCut = X_hi
546 list2_2trk0trk_obj[i].Jpsi1Mass = list2_2trk0trk_jpsi1mass[i]
547 list2_2trk0trk_obj[i].Psi1Mass = list2_2trk0trk_psi1mass[i]
548 list2_2trk0trk_obj[i].Jpsi2Mass = list2_2trk0trk_jpsi2mass[i]
549 list2_2trk0trk_obj[i].ApplyJpsi1MassConstraint = True
550 list2_2trk0trk_obj[i].ApplyPsi1MassConstraint = True
551 list2_2trk0trk_obj[i].ApplyJpsi2MassConstraint = True
552 list2_2trk0trk_obj[i].Chi2Cut = 30.
553 list2_2trk0trk_obj[i].PVRefitter = acc.popToolsAndMerge(PrimaryVertexRefittingToolCfg(flags))
554 list2_2trk0trk_obj[i].TrkVertexFitterTool = vkalvrt
555 list2_2trk0trk_obj[i].VxPrimaryCandidateName = "PrimaryVertices"
556 list2_2trk0trk_obj[i].OutputVertexCollections = ["BPHY23_"+list2_2trk0trk_hypo[i]+"_SubVtx1","BPHY23_"+list2_2trk0trk_hypo[i]+"_SubVtx2","BPHY23_"+list2_2trk0trk_hypo[i]+"_MainVtx"]
557 list2_2trk0trk_obj[i].VxPrimaryCandidateName = "PrimaryVertices"
558 list2_2trk0trk_obj[i].RefPVContainerName = "BPHY23_"+list2_2trk0trk_hypo[i]+"_RefPrimaryVertices"
559 list2_2trk0trk_obj[i].RefitPV = True
560 list2_2trk0trk_obj[i].MaxnPV = 100
561
562
565
566 list_1trk0trk_hypo = ["BpmJpsi0", "BpmPsi0", "BpmUpsi0"]
567 list_1trk0trk_psiInput = ["BPHY23Revtx_Bpm", "BPHY23Revtx_Bpm", "BPHY23Revtx_Bpm"]
568 list_1trk0trk_jpsiInput = ["BPHY23Revtx_Jpsi", "BPHY23Revtx_Psi", "BPHY23Revtx_Upsi"]
569 list_1trk0trk_jpsiMass = [Jpsimass, Jpsimass, Jpsimass]
570 list_1trk0trk_psiMass = [Bpmmass, Bpmmass, Bpmmass]
571 list_1trk0trk_dau3Mass = [Kmass, Kmass, Kmass]
572 list_1trk0trk_jpsi2Mass = [Jpsimass, Psi2Smass, Upsimass]
573
574 list_1trk0trk_obj = []
575 for hypo in list_1trk0trk_hypo:
576 list_1trk0trk_obj.append( CompFactory.DerivationFramework.JpsiPlusPsiCascade("BPHY23_"+hypo) )
577
578 for i in range(len(list_1trk0trk_obj)):
579 list_1trk0trk_obj[i].HypothesisName = list_1trk0trk_hypo[i]
580 list_1trk0trk_obj[i].JpsiVertices = list_1trk0trk_jpsiInput[i]
581 list_1trk0trk_obj[i].PsiVertices = list_1trk0trk_psiInput[i]
582 list_1trk0trk_obj[i].NumberOfPsiDaughters = 3
583 list_1trk0trk_obj[i].MassLowerCut = 0.
584 list_1trk0trk_obj[i].MassUpperCut = X_hi
585 list_1trk0trk_obj[i].Chi2Cut = 30.
586 list_1trk0trk_obj[i].MaxCandidates = 15
587 list_1trk0trk_obj[i].MaxnPV = 100
588 list_1trk0trk_obj[i].PVRefitter = acc.popToolsAndMerge(PrimaryVertexRefittingToolCfg(flags))
589 list_1trk0trk_obj[i].TrkVertexFitterTool = vkalvrt
590 list_1trk0trk_obj[i].VxPrimaryCandidateName = "PrimaryVertices"
591 list_1trk0trk_obj[i].RefPVContainerName = "BPHY23_"+list_1trk0trk_hypo[i]+"_RefPrimaryVertices"
592 list_1trk0trk_obj[i].CascadeVertexCollections = ["BPHY23_"+list_1trk0trk_hypo[i]+"_CascadeVtx1","BPHY23_"+list_1trk0trk_hypo[i]+"_CascadeVtx2","BPHY23_"+list_1trk0trk_hypo[i]+"_CascadeVtx3"]
593 list_1trk0trk_obj[i].RefitPV = True
594 list_1trk0trk_obj[i].Vtx1Daug3MassHypo = list_1trk0trk_dau3Mass[i]
595 list_1trk0trk_obj[i].ApplyJpsiMassConstraint = True
596 list_1trk0trk_obj[i].JpsiMass = list_1trk0trk_jpsiMass[i]
597 list_1trk0trk_obj[i].ApplyPsiMassConstraint = True
598 list_1trk0trk_obj[i].PsiMass = list_1trk0trk_psiMass[i]
599 list_1trk0trk_obj[i].ApplyJpsi2MassConstraint = True
600 list_1trk0trk_obj[i].Jpsi2Mass = list_1trk0trk_jpsi2Mass[i]
601
602 list2_1trk0trk_hypo = ["Zc3900Jpsi0", "Zc3900Psi0", "Zc3900Upsi0"]
603 list2_1trk0trk_psi1Input = ["BPHY23Revtx_Zc3900", "BPHY23Revtx_Zc3900", "BPHY23Revtx_Zc3900"]
604 list2_1trk0trk_psi2Input = ["BPHY23Revtx_Jpsi", "BPHY23Revtx_Psi", "BPHY23Revtx_Upsi"]
605 list2_1trk0trk_jpsi2lo = [Jpsi_lo, Psi_lo, Upsi_lo]
606 list2_1trk0trk_jpsi2hi = [Jpsi_hi, Psi_hi, Upsi_hi]
607 list2_1trk0trk_jpsi1mass = [Jpsimass, Jpsimass, Jpsimass]
608 list2_1trk0trk_psi1mass = [Zcmass, Zcmass, Zcmass]
609 list2_1trk0trk_jpsi2mass = [Jpsimass, Psi2Smass, Upsimass]
610
611 list2_1trk0trk_obj = []
612 for hypo in list2_1trk0trk_hypo:
613 list2_1trk0trk_obj.append( CompFactory.DerivationFramework.PsiPlusPsiSingleVertex("BPHY23_"+hypo) )
614
615 for i in range(len(list2_1trk0trk_obj)):
616 list2_1trk0trk_obj[i].HypothesisName = list2_1trk0trk_hypo[i]
617 list2_1trk0trk_obj[i].Psi1Vertices = list2_1trk0trk_psi1Input[i]
618 list2_1trk0trk_obj[i].Psi2Vertices = list2_1trk0trk_psi2Input[i]
619 list2_1trk0trk_obj[i].MaxCandidates = 15
620 list2_1trk0trk_obj[i].NumberOfPsi1Daughters = 3
621 list2_1trk0trk_obj[i].NumberOfPsi2Daughters = 2
622 list2_1trk0trk_obj[i].Jpsi1MassLowerCut = Jpsi_lo
623 list2_1trk0trk_obj[i].Jpsi1MassUpperCut = Jpsi_hi
624 list2_1trk0trk_obj[i].Psi1MassLowerCut = Zc_lo
625 list2_1trk0trk_obj[i].Psi1MassUpperCut = Zc_hi
626 list2_1trk0trk_obj[i].Jpsi2MassLowerCut = list2_1trk0trk_jpsi2lo[i]
627 list2_1trk0trk_obj[i].Jpsi2MassUpperCut = list2_1trk0trk_jpsi2hi[i]
628 list2_1trk0trk_obj[i].MassLowerCut = 0.
629 list2_1trk0trk_obj[i].MassUpperCut = X_hi
630 list2_1trk0trk_obj[i].Jpsi1Mass = list2_1trk0trk_jpsi1mass[i]
631 list2_1trk0trk_obj[i].Psi1Mass = list2_1trk0trk_psi1mass[i]
632 list2_1trk0trk_obj[i].Jpsi2Mass = list2_1trk0trk_jpsi2mass[i]
633 list2_1trk0trk_obj[i].ApplyJpsi1MassConstraint = True
634 list2_1trk0trk_obj[i].ApplyPsi1MassConstraint = True
635 list2_1trk0trk_obj[i].ApplyJpsi2MassConstraint = True
636 list2_1trk0trk_obj[i].Chi2Cut = 30.
637 list2_1trk0trk_obj[i].PVRefitter = acc.popToolsAndMerge(PrimaryVertexRefittingToolCfg(flags))
638 list2_1trk0trk_obj[i].TrkVertexFitterTool = vkalvrt
639 list2_1trk0trk_obj[i].VxPrimaryCandidateName = "PrimaryVertices"
640 list2_1trk0trk_obj[i].OutputVertexCollections = ["BPHY23_"+list2_1trk0trk_hypo[i]+"_SubVtx1","BPHY23_"+list2_1trk0trk_hypo[i]+"_SubVtx2","BPHY23_"+list2_1trk0trk_hypo[i]+"_MainVtx"]
641 list2_1trk0trk_obj[i].VxPrimaryCandidateName = "PrimaryVertices"
642 list2_1trk0trk_obj[i].RefPVContainerName = "BPHY23_"+list2_1trk0trk_hypo[i]+"_RefPrimaryVertices"
643 list2_1trk0trk_obj[i].RefitPV = True
644 list2_1trk0trk_obj[i].MaxnPV = 100
645
646
649
650 list_1trk1trk_hypo = ["BpmZc3900", "BpmBpm"]
651 list_1trk1trk_psi1Input = ["BPHY23Revtx_Bpm", "BPHY23Revtx_Bpm"]
652 list_1trk1trk_psi2Input = ["BPHY23Revtx_Zc3900", "BPHY23Revtx_Bpm"]
653 list_1trk1trk_jpsi1Mass = [Jpsimass, Jpsimass]
654 list_1trk1trk_psi1Mass = [Bpmmass, Bpmmass]
655 list_1trk1trk_p1dau3Mass = [Kmass, Kmass]
656 list_1trk1trk_jpsi2Mass = [Jpsimass, Jpsimass]
657 list_1trk1trk_psi2Mass = [Zcmass, Bpmmass]
658 list_1trk1trk_p2dau3Mass = [Pimass, Kmass]
659
660 list_1trk1trk_obj = []
661 for hypo in list_1trk1trk_hypo:
662 list_1trk1trk_obj.append( CompFactory.DerivationFramework.PsiPlusPsiCascade("BPHY23_"+hypo) )
663
664 for i in range(len(list_1trk1trk_obj)):
665 list_1trk1trk_obj[i].HypothesisName = list_1trk1trk_hypo[i]
666 list_1trk1trk_obj[i].Psi1Vertices = list_1trk1trk_psi1Input[i]
667 list_1trk1trk_obj[i].Psi2Vertices = list_1trk1trk_psi2Input[i]
668 list_1trk1trk_obj[i].NumberOfPsi1Daughters = 3
669 list_1trk1trk_obj[i].NumberOfPsi2Daughters = 3
670 list_1trk1trk_obj[i].MassLowerCut = 0.
671 list_1trk1trk_obj[i].MassUpperCut = X_hi
672 list_1trk1trk_obj[i].Chi2CutPsi1 = 5.
673 list_1trk1trk_obj[i].Chi2CutPsi2 = 5.
674 list_1trk1trk_obj[i].Chi2Cut = 30.
675 list_1trk1trk_obj[i].MaxCandidates = 15
676 list_1trk1trk_obj[i].RemoveDuplicatePairs = True
677 list_1trk1trk_obj[i].MaxnPV = 100
678 list_1trk1trk_obj[i].PVRefitter = acc.popToolsAndMerge(PrimaryVertexRefittingToolCfg(flags))
679 list_1trk1trk_obj[i].TrkVertexFitterTool = vkalvrt
680 list_1trk1trk_obj[i].VxPrimaryCandidateName = "PrimaryVertices"
681 list_1trk1trk_obj[i].RefPVContainerName = "BPHY23_"+list_1trk1trk_hypo[i]+"_RefPrimaryVertices"
682 list_1trk1trk_obj[i].CascadeVertexCollections = ["BPHY23_"+list_1trk1trk_hypo[i]+"_CascadeVtx1","BPHY23_"+list_1trk1trk_hypo[i]+"_CascadeVtx2","BPHY23_"+list_1trk1trk_hypo[i]+"_CascadeVtx3"]
683 list_1trk1trk_obj[i].RefitPV = True
684 list_1trk1trk_obj[i].Vtx1Daug3MassHypo = list_1trk1trk_p1dau3Mass[i]
685 list_1trk1trk_obj[i].Vtx2Daug3MassHypo = list_1trk1trk_p2dau3Mass[i]
686 list_1trk1trk_obj[i].ApplyJpsi1MassConstraint = True
687 list_1trk1trk_obj[i].Jpsi1Mass = list_1trk1trk_jpsi1Mass[i]
688 list_1trk1trk_obj[i].ApplyPsi1MassConstraint = True
689 list_1trk1trk_obj[i].Psi1Mass = list_1trk1trk_psi1Mass[i]
690 list_1trk1trk_obj[i].ApplyJpsi2MassConstraint = True
691 list_1trk1trk_obj[i].Jpsi2Mass = list_1trk1trk_jpsi2Mass[i]
692 if list_1trk1trk_psi2Mass[i] != Zcmass:
693 list_1trk1trk_obj[i].ApplyPsi2MassConstraint = True
694 list_1trk1trk_obj[i].Psi2Mass = list_1trk1trk_psi2Mass[i]
695
696 list2_1trk1trk_hypo = ["Zc3900Zc3900"]
697 list2_1trk1trk_psi1Input = ["BPHY23Revtx_Zc3900"]
698 list2_1trk1trk_psi2Input = ["BPHY23Revtx_Zc3900"]
699 list2_1trk1trk_jpsi1mass = [Jpsimass]
700 list2_1trk1trk_psi1mass = [Zcmass]
701 list2_1trk1trk_jpsi2mass = [Jpsimass]
702 list2_1trk1trk_psi2mass = [Zcmass]
703
704 list2_1trk1trk_obj = []
705 for hypo in list2_1trk1trk_hypo:
706 list2_1trk1trk_obj.append( CompFactory.DerivationFramework.PsiPlusPsiSingleVertex("BPHY23_"+hypo) )
707
708 for i in range(len(list2_1trk1trk_obj)):
709 list2_1trk1trk_obj[i].HypothesisName = list2_1trk1trk_hypo[i]
710 list2_1trk1trk_obj[i].Psi1Vertices = list2_1trk1trk_psi1Input[i]
711 list2_1trk1trk_obj[i].Psi2Vertices = list2_1trk1trk_psi2Input[i]
712 list2_1trk1trk_obj[i].MaxCandidates = 15
713 list2_1trk1trk_obj[i].NumberOfPsi1Daughters = 3
714 list2_1trk1trk_obj[i].NumberOfPsi2Daughters = 3
715 list2_1trk1trk_obj[i].Jpsi1MassLowerCut = Jpsi_lo
716 list2_1trk1trk_obj[i].Jpsi1MassUpperCut = Jpsi_hi
717 list2_1trk1trk_obj[i].Psi1MassLowerCut = Zc_lo
718 list2_1trk1trk_obj[i].Psi1MassUpperCut = Zc_hi
719 list2_1trk1trk_obj[i].Jpsi2MassLowerCut = Jpsi_lo
720 list2_1trk1trk_obj[i].Jpsi2MassUpperCut = Jpsi_hi
721 list2_1trk1trk_obj[i].Psi2MassLowerCut = Zc_lo
722 list2_1trk1trk_obj[i].Psi2MassUpperCut = Zc_hi
723 list2_1trk1trk_obj[i].MassLowerCut = 0.
724 list2_1trk1trk_obj[i].MassUpperCut = X_hi
725 list2_1trk1trk_obj[i].Jpsi1Mass = list2_1trk1trk_jpsi1mass[i]
726 list2_1trk1trk_obj[i].Psi1Mass = list2_1trk1trk_psi1mass[i]
727 list2_1trk1trk_obj[i].Jpsi2Mass = list2_1trk1trk_jpsi2mass[i]
728 list2_1trk1trk_obj[i].Psi2Mass = list2_1trk1trk_psi2mass[i]
729 list2_1trk1trk_obj[i].ApplyJpsi1MassConstraint = True
730 list2_1trk1trk_obj[i].ApplyPsi1MassConstraint = True
731 list2_1trk1trk_obj[i].ApplyJpsi2MassConstraint = True
732 list2_1trk1trk_obj[i].ApplyPsi2MassConstraint = True
733 list2_1trk1trk_obj[i].Chi2Cut = 30.
734 list2_1trk1trk_obj[i].PVRefitter = acc.popToolsAndMerge(PrimaryVertexRefittingToolCfg(flags))
735 list2_1trk1trk_obj[i].TrkVertexFitterTool = vkalvrt
736 list2_1trk1trk_obj[i].VxPrimaryCandidateName = "PrimaryVertices"
737 list2_1trk1trk_obj[i].OutputVertexCollections = ["BPHY23_"+list2_1trk1trk_hypo[i]+"_SubVtx1","BPHY23_"+list2_1trk1trk_hypo[i]+"_SubVtx2","BPHY23_"+list2_1trk1trk_hypo[i]+"_MainVtx"]
738 list2_1trk1trk_obj[i].VxPrimaryCandidateName = "PrimaryVertices"
739 list2_1trk1trk_obj[i].RefPVContainerName = "BPHY23_"+list2_1trk1trk_hypo[i]+"_RefPrimaryVertices"
740 list2_1trk1trk_obj[i].RefitPV = True
741 list2_1trk1trk_obj[i].MaxnPV = 100
742
743
746
747 list_2trk1trk_hypo = ["Bs2KZc3900", "Bs2KBpm",
748 "B0KpiZc3900", "B0KpiBpm",
749 "B0piKZc3900", "B0piKBpm"]
750 list_2trk1trk_psi1Input = ["BPHY23Revtx_Bs0", "BPHY23Revtx_Bs0",
751 "BPHY23Revtx_B0Kpi", "BPHY23Revtx_B0Kpi",
752 "BPHY23Revtx_B0piK", "BPHY23Revtx_B0piK"]
753 list_2trk1trk_psi2Input = ["BPHY23Revtx_Zc3900", "BPHY23Revtx_Bpm",
754 "BPHY23Revtx_Zc3900", "BPHY23Revtx_Bpm",
755 "BPHY23Revtx_Zc3900", "BPHY23Revtx_Bpm"]
756 list_2trk1trk_jpsi1Mass = [Jpsimass, Jpsimass,
757 Jpsimass, Jpsimass,
758 Jpsimass, Jpsimass]
759 list_2trk1trk_psi1Mass = [Bs0mass, Bs0mass,
760 B0mass, B0mass,
761 B0mass, B0mass]
762 list_2trk1trk_p1dau3Mass = [Kmass, Kmass,
763 Kmass, Kmass,
764 Pimass, Pimass]
765 list_2trk1trk_p1dau4Mass = [Kmass, Kmass,
766 Pimass, Pimass,
767 Kmass, Kmass]
768 list_2trk1trk_jpsi2Mass = [Jpsimass, Jpsimass,
769 Jpsimass, Jpsimass,
770 Jpsimass, Jpsimass]
771 list_2trk1trk_psi2Mass = [Zcmass, Bpmmass,
772 Zcmass, Bpmmass,
773 Zcmass, Bpmmass]
774 list_2trk1trk_p2dau3Mass = [Pimass, Kmass,
775 Pimass, Kmass,
776 Pimass, Kmass]
777
778 list_2trk1trk_obj = []
779 for hypo in list_2trk1trk_hypo:
780 list_2trk1trk_obj.append( CompFactory.DerivationFramework.PsiPlusPsiCascade("BPHY23_"+hypo) )
781
782 for i in range(len(list_2trk1trk_obj)):
783 list_2trk1trk_obj[i].HypothesisName = list_2trk1trk_hypo[i]
784 list_2trk1trk_obj[i].Psi1Vertices = list_2trk1trk_psi1Input[i]
785 list_2trk1trk_obj[i].Psi2Vertices = list_2trk1trk_psi2Input[i]
786 list_2trk1trk_obj[i].NumberOfPsi1Daughters = 4
787 list_2trk1trk_obj[i].NumberOfPsi2Daughters = 3
788 list_2trk1trk_obj[i].MassLowerCut = 0.
789 list_2trk1trk_obj[i].MassUpperCut = X_hi
790 list_2trk1trk_obj[i].Chi2CutPsi1 = 5.
791 list_2trk1trk_obj[i].Chi2CutPsi2 = 5.
792 list_2trk1trk_obj[i].Chi2Cut = 30.
793 list_2trk1trk_obj[i].MaxCandidates = 15
794 list_2trk1trk_obj[i].MaxnPV = 100
795 list_2trk1trk_obj[i].PVRefitter = acc.popToolsAndMerge(PrimaryVertexRefittingToolCfg(flags))
796 list_2trk1trk_obj[i].TrkVertexFitterTool = vkalvrt
797 list_2trk1trk_obj[i].VxPrimaryCandidateName = "PrimaryVertices"
798 list_2trk1trk_obj[i].RefPVContainerName = "BPHY23_"+list_2trk1trk_hypo[i]+"_RefPrimaryVertices"
799 list_2trk1trk_obj[i].CascadeVertexCollections = ["BPHY23_"+list_2trk1trk_hypo[i]+"_CascadeVtx1","BPHY23_"+list_2trk1trk_hypo[i]+"_CascadeVtx2","BPHY23_"+list_2trk1trk_hypo[i]+"_CascadeVtx3"]
800 list_2trk1trk_obj[i].RefitPV = True
801 list_2trk1trk_obj[i].Vtx1Daug3MassHypo = list_2trk1trk_p1dau3Mass[i]
802 list_2trk1trk_obj[i].Vtx1Daug4MassHypo = list_2trk1trk_p1dau4Mass[i]
803 list_2trk1trk_obj[i].Vtx2Daug3MassHypo = list_2trk1trk_p2dau3Mass[i]
804 list_2trk1trk_obj[i].ApplyJpsi1MassConstraint = True
805 list_2trk1trk_obj[i].Jpsi1Mass = list_2trk1trk_jpsi1Mass[i]
806 list_2trk1trk_obj[i].ApplyPsi1MassConstraint = True
807 list_2trk1trk_obj[i].Psi1Mass = list_2trk1trk_psi1Mass[i]
808 list_2trk1trk_obj[i].ApplyJpsi2MassConstraint = True
809 list_2trk1trk_obj[i].Jpsi2Mass = list_2trk1trk_jpsi2Mass[i]
810 if list_2trk1trk_psi2Mass[i] != Zcmass:
811 list_2trk1trk_obj[i].ApplyPsi2MassConstraint = True
812 list_2trk1trk_obj[i].Psi2Mass = list_2trk1trk_psi2Mass[i]
813
814 list2_2trk1trk_hypo = ["Psi2Zc3900", "X3872Zc3900"]
815 list2_2trk1trk_psi1Input = ["BPHY23Revtx_Psi4Body", "BPHY23Revtx_X3872"]
816 list2_2trk1trk_psi2Input = ["BPHY23Revtx_Zc3900", "BPHY23Revtx_Zc3900"]
817 list2_2trk1trk_jpsi1mass = [Jpsimass, Jpsimass]
818 list2_2trk1trk_psi1mass = [Psi2Smass, X3872mass]
819 list2_2trk1trk_jpsi2mass = [Jpsimass, Jpsimass]
820 list2_2trk1trk_psi2mass = [Zcmass, Zcmass]
821
822 list2_2trk1trk_obj = []
823 for hypo in list2_2trk1trk_hypo:
824 list2_2trk1trk_obj.append( CompFactory.DerivationFramework.PsiPlusPsiSingleVertex("BPHY23_"+hypo) )
825
826 for i in range(len(list2_2trk1trk_obj)):
827 list2_2trk1trk_obj[i].HypothesisName = list2_2trk1trk_hypo[i]
828 list2_2trk1trk_obj[i].Psi1Vertices = list2_2trk1trk_psi1Input[i]
829 list2_2trk1trk_obj[i].Psi2Vertices = list2_2trk1trk_psi2Input[i]
830 list2_2trk1trk_obj[i].MaxCandidates = 15
831 list2_2trk1trk_obj[i].NumberOfPsi1Daughters = 4
832 list2_2trk1trk_obj[i].NumberOfPsi2Daughters = 3
833 list2_2trk1trk_obj[i].Jpsi1MassLowerCut = Jpsi_lo
834 list2_2trk1trk_obj[i].Jpsi1MassUpperCut = Jpsi_hi
835 list2_2trk1trk_obj[i].Psi1MassLowerCut = Psi_lo
836 list2_2trk1trk_obj[i].Psi1MassUpperCut = Psi_hi
837 list2_2trk1trk_obj[i].Jpsi2MassLowerCut = Jpsi_lo
838 list2_2trk1trk_obj[i].Jpsi2MassUpperCut = Jpsi_hi
839 list2_2trk1trk_obj[i].Psi2MassLowerCut = Zc_lo
840 list2_2trk1trk_obj[i].Psi2MassUpperCut = Zc_hi
841 list2_2trk1trk_obj[i].MassLowerCut = 0.
842 list2_2trk1trk_obj[i].MassUpperCut = X_hi
843 list2_2trk1trk_obj[i].Jpsi1Mass = list2_2trk1trk_jpsi1mass[i]
844 list2_2trk1trk_obj[i].Psi1Mass = list2_2trk1trk_psi1mass[i]
845 list2_2trk1trk_obj[i].Jpsi2Mass = list2_2trk1trk_jpsi2mass[i]
846 list2_2trk1trk_obj[i].Psi2Mass = list2_2trk1trk_psi2mass[i]
847 list2_2trk1trk_obj[i].ApplyJpsi1MassConstraint = True
848 list2_2trk1trk_obj[i].ApplyPsi1MassConstraint = True
849 list2_2trk1trk_obj[i].ApplyJpsi2MassConstraint = True
850 list2_2trk1trk_obj[i].ApplyPsi2MassConstraint = True
851 list2_2trk1trk_obj[i].Chi2Cut = 30.
852 list2_2trk1trk_obj[i].PVRefitter = acc.popToolsAndMerge(PrimaryVertexRefittingToolCfg(flags))
853 list2_2trk1trk_obj[i].TrkVertexFitterTool = vkalvrt
854 list2_2trk1trk_obj[i].VxPrimaryCandidateName = "PrimaryVertices"
855 list2_2trk1trk_obj[i].OutputVertexCollections = ["BPHY23_"+list2_2trk1trk_hypo[i]+"_SubVtx1","BPHY23_"+list2_2trk1trk_hypo[i]+"_SubVtx2","BPHY23_"+list2_2trk1trk_hypo[i]+"_MainVtx"]
856 list2_2trk1trk_obj[i].VxPrimaryCandidateName = "PrimaryVertices"
857 list2_2trk1trk_obj[i].RefPVContainerName = "BPHY23_"+list2_2trk1trk_hypo[i]+"_RefPrimaryVertices"
858 list2_2trk1trk_obj[i].RefitPV = True
859 list2_2trk1trk_obj[i].MaxnPV = 100
860
861
864
865 list_1trk2trk_hypo = ["BpmPsi2", "BpmX3872"]
866 list_1trk2trk_psi1Input = ["BPHY23Revtx_Bpm", "BPHY23Revtx_Bpm"]
867 list_1trk2trk_psi2Input = ["BPHY23Revtx_Psi4Body", "BPHY23Revtx_X3872"]
868 list_1trk2trk_jpsi1Mass = [Jpsimass, Jpsimass]
869 list_1trk2trk_psi1Mass = [Bpmmass, Bpmmass]
870 list_1trk2trk_p1dau3Mass = [Kmass, Kmass]
871 list_1trk2trk_jpsi2Mass = [Jpsimass, Jpsimass]
872 list_1trk2trk_psi2Mass = [Psi2Smass, X3872mass]
873 list_1trk2trk_p2dau3Mass = [Pimass, Pimass]
874 list_1trk2trk_p2dau4Mass = [Pimass, Pimass]
875
876 list_1trk2trk_obj = []
877 for hypo in list_1trk2trk_hypo:
878 list_1trk2trk_obj.append( CompFactory.DerivationFramework.PsiPlusPsiCascade("BPHY23_"+hypo) )
879
880 for i in range(len(list_1trk2trk_obj)):
881 list_1trk2trk_obj[i].HypothesisName = list_1trk2trk_hypo[i]
882 list_1trk2trk_obj[i].Psi1Vertices = list_1trk2trk_psi1Input[i]
883 list_1trk2trk_obj[i].Psi2Vertices = list_1trk2trk_psi2Input[i]
884 list_1trk2trk_obj[i].NumberOfPsi1Daughters = 3
885 list_1trk2trk_obj[i].NumberOfPsi2Daughters = 4
886 list_1trk2trk_obj[i].MassLowerCut = 0.
887 list_1trk2trk_obj[i].MassUpperCut = X_hi
888 list_1trk2trk_obj[i].Chi2CutPsi1 = 5.
889 list_1trk2trk_obj[i].Chi2CutPsi2 = 5.
890 list_1trk2trk_obj[i].Chi2Cut = 30.
891 list_1trk2trk_obj[i].MaxCandidates = 15
892 list_1trk2trk_obj[i].MaxnPV = 100
893 list_1trk2trk_obj[i].PVRefitter = acc.popToolsAndMerge(PrimaryVertexRefittingToolCfg(flags))
894 list_1trk2trk_obj[i].TrkVertexFitterTool = vkalvrt
895 list_1trk2trk_obj[i].VxPrimaryCandidateName = "PrimaryVertices"
896 list_1trk2trk_obj[i].RefPVContainerName = "BPHY23_"+list_1trk2trk_hypo[i]+"_RefPrimaryVertices"
897 list_1trk2trk_obj[i].CascadeVertexCollections = ["BPHY23_"+list_1trk2trk_hypo[i]+"_CascadeVtx1","BPHY23_"+list_1trk2trk_hypo[i]+"_CascadeVtx2","BPHY23_"+list_1trk2trk_hypo[i]+"_CascadeVtx3"]
898 list_1trk2trk_obj[i].RefitPV = True
899 list_1trk2trk_obj[i].Vtx1Daug3MassHypo = list_1trk2trk_p1dau3Mass[i]
900 list_1trk2trk_obj[i].Vtx2Daug3MassHypo = list_1trk2trk_p2dau3Mass[i]
901 list_1trk2trk_obj[i].Vtx2Daug4MassHypo = list_1trk2trk_p2dau4Mass[i]
902 list_1trk2trk_obj[i].ApplyJpsi1MassConstraint = True
903 list_1trk2trk_obj[i].Jpsi1Mass = list_1trk2trk_jpsi1Mass[i]
904 list_1trk2trk_obj[i].ApplyPsi1MassConstraint = True
905 list_1trk2trk_obj[i].Psi1Mass = list_1trk2trk_psi1Mass[i]
906 list_1trk2trk_obj[i].ApplyJpsi2MassConstraint = True
907 list_1trk2trk_obj[i].Jpsi2Mass = list_1trk2trk_jpsi2Mass[i]
908 list_1trk2trk_obj[i].ApplyPsi2MassConstraint = True
909 list_1trk2trk_obj[i].Psi2Mass = list_1trk2trk_psi2Mass[i]
910
911
914
915 list_2trk2trk_hypo = ["Bs2KPsi2", "B0KpiPsi2", "B0piKPsi2",
916 "Bs2KX3872", "B0KpiX3872", "B0piKX3872",
917 "Bs2KBs2K", "Bs2KB0Kpi", "Bs2KB0piK",
918 "B0KpiB0Kpi", "B0KpiB0piK", "B0piKB0piK"]
919 list_2trk2trk_psi1Input = ["BPHY23Revtx_Bs0", "BPHY23Revtx_B0Kpi", "BPHY23Revtx_B0piK",
920 "BPHY23Revtx_Bs0", "BPHY23Revtx_B0Kpi", "BPHY23Revtx_B0piK",
921 "BPHY23Revtx_Bs0", "BPHY23Revtx_Bs0", "BPHY23Revtx_Bs0",
922 "BPHY23Revtx_B0Kpi", "BPHY23Revtx_B0Kpi", "BPHY23Revtx_B0piK"]
923 list_2trk2trk_psi2Input = ["BPHY23Revtx_Psi4Body", "BPHY23Revtx_Psi4Body", "BPHY23Revtx_Psi4Body",
924 "BPHY23Revtx_X3872", "BPHY23Revtx_X3872", "BPHY23Revtx_X3872",
925 "BPHY23Revtx_Bs0", "BPHY23Revtx_B0Kpi", "BPHY23Revtx_B0piK",
926 "BPHY23Revtx_B0Kpi", "BPHY23Revtx_B0piK", "BPHY23Revtx_B0piK"]
927 list_2trk2trk_jpsi1Mass = [Jpsimass, Jpsimass, Jpsimass,
928 Jpsimass, Jpsimass, Jpsimass,
929 Jpsimass, Jpsimass, Jpsimass,
930 Jpsimass, Jpsimass, Jpsimass]
931 list_2trk2trk_psi1Mass = [Bs0mass, B0mass, B0mass,
932 Bs0mass, B0mass, B0mass,
933 Bs0mass, Bs0mass, Bs0mass,
934 B0mass, B0mass, B0mass]
935 list_2trk2trk_p1dau3Mass = [Kmass, Kmass, Pimass,
936 Kmass, Kmass, Pimass,
937 Kmass, Kmass, Kmass,
938 Kmass, Kmass, Pimass]
939 list_2trk2trk_p1dau4Mass = [Kmass, Pimass, Kmass,
940 Kmass, Pimass, Kmass,
941 Kmass, Kmass, Kmass,
942 Pimass, Pimass, Kmass]
943 list_2trk2trk_jpsi2Mass = [Jpsimass, Jpsimass, Jpsimass,
944 Jpsimass, Jpsimass, Jpsimass,
945 Jpsimass, Jpsimass, Jpsimass,
946 Jpsimass, Jpsimass, Jpsimass]
947 list_2trk2trk_psi2Mass = [Psi2Smass, Psi2Smass, Psi2Smass,
948 X3872mass, X3872mass, X3872mass,
949 Bs0mass, B0mass, B0mass,
950 B0mass, B0mass, B0mass]
951 list_2trk2trk_p2dau3Mass = [Pimass, Pimass, Pimass,
952 Pimass, Pimass, Pimass,
953 Kmass, Kmass, Pimass,
954 Kmass, Pimass, Pimass]
955 list_2trk2trk_p2dau4Mass = [Pimass, Pimass, Pimass,
956 Pimass, Pimass, Pimass,
957 Kmass, Pimass, Kmass,
958 Pimass, Kmass, Kmass]
959
960 list_2trk2trk_obj = []
961 for hypo in list_2trk2trk_hypo:
962 list_2trk2trk_obj.append( CompFactory.DerivationFramework.PsiPlusPsiCascade("BPHY23_"+hypo) )
963
964 for i in range(len(list_2trk2trk_obj)):
965 list_2trk2trk_obj[i].HypothesisName = list_2trk2trk_hypo[i]
966 list_2trk2trk_obj[i].Psi1Vertices = list_2trk2trk_psi1Input[i]
967 list_2trk2trk_obj[i].Psi2Vertices = list_2trk2trk_psi2Input[i]
968 list_2trk2trk_obj[i].NumberOfPsi1Daughters = 4
969 list_2trk2trk_obj[i].NumberOfPsi2Daughters = 4
970 list_2trk2trk_obj[i].MassLowerCut = 0.
971 list_2trk2trk_obj[i].MassUpperCut = X_hi
972 list_2trk2trk_obj[i].Chi2CutPsi1 = 4.
973 list_2trk2trk_obj[i].Chi2CutPsi2 = 4.
974 list_2trk2trk_obj[i].Chi2Cut = 30.
975 list_2trk2trk_obj[i].MaxCandidates = 15
976 list_2trk2trk_obj[i].RemoveDuplicatePairs = True
977 list_2trk2trk_obj[i].MaxnPV = 100
978 list_2trk2trk_obj[i].PVRefitter = acc.popToolsAndMerge(PrimaryVertexRefittingToolCfg(flags))
979 list_2trk2trk_obj[i].TrkVertexFitterTool = vkalvrt
980 list_2trk2trk_obj[i].VxPrimaryCandidateName = "PrimaryVertices"
981 list_2trk2trk_obj[i].RefPVContainerName = "BPHY23_"+list_2trk2trk_hypo[i]+"_RefPrimaryVertices"
982 list_2trk2trk_obj[i].CascadeVertexCollections = ["BPHY23_"+list_2trk2trk_hypo[i]+"_CascadeVtx1","BPHY23_"+list_2trk2trk_hypo[i]+"_CascadeVtx2","BPHY23_"+list_2trk2trk_hypo[i]+"_CascadeVtx3"]
983 list_2trk2trk_obj[i].RefitPV = True
984 list_2trk2trk_obj[i].Vtx1Daug3MassHypo = list_2trk2trk_p1dau3Mass[i]
985 list_2trk2trk_obj[i].Vtx1Daug4MassHypo = list_2trk2trk_p1dau4Mass[i]
986 list_2trk2trk_obj[i].Vtx2Daug3MassHypo = list_2trk2trk_p2dau3Mass[i]
987 list_2trk2trk_obj[i].Vtx2Daug4MassHypo = list_2trk2trk_p2dau4Mass[i]
988 list_2trk2trk_obj[i].ApplyJpsi1MassConstraint = True
989 list_2trk2trk_obj[i].Jpsi1Mass = list_2trk2trk_jpsi1Mass[i]
990 list_2trk2trk_obj[i].ApplyPsi1MassConstraint = True
991 list_2trk2trk_obj[i].Psi1Mass = list_2trk2trk_psi1Mass[i]
992 list_2trk2trk_obj[i].ApplyJpsi2MassConstraint = True
993 list_2trk2trk_obj[i].Jpsi2Mass = list_2trk2trk_jpsi2Mass[i]
994 list_2trk2trk_obj[i].ApplyPsi2MassConstraint = True
995 list_2trk2trk_obj[i].Psi2Mass = list_2trk2trk_psi2Mass[i]
996
997 list2_2trk2trk_hypo = ["Psi2Psi2", "Psi2X3872", "X3872X3872"]
998 list2_2trk2trk_psi1Input = ["BPHY23Revtx_Psi4Body", "BPHY23Revtx_Psi4Body", "BPHY23Revtx_X3872"]
999 list2_2trk2trk_psi2Input = ["BPHY23Revtx_Psi4Body", "BPHY23Revtx_X3872", "BPHY23Revtx_X3872"]
1000 list2_2trk2trk_jpsi1mass = [Jpsimass, Jpsimass, Jpsimass]
1001 list2_2trk2trk_psi1mass = [Psi2Smass, Psi2Smass, X3872mass]
1002 list2_2trk2trk_jpsi2mass = [Jpsimass, Jpsimass, Jpsimass]
1003 list2_2trk2trk_psi2mass = [Psi2Smass, X3872mass, X3872mass]
1004
1005 list2_2trk2trk_obj = []
1006 for hypo in list2_2trk2trk_hypo:
1007 list2_2trk2trk_obj.append( CompFactory.DerivationFramework.PsiPlusPsiSingleVertex("BPHY23_"+hypo) )
1008
1009 for i in range(len(list2_2trk2trk_obj)):
1010 list2_2trk2trk_obj[i].HypothesisName = list2_2trk2trk_hypo[i]
1011 list2_2trk2trk_obj[i].Psi1Vertices = list2_2trk2trk_psi1Input[i]
1012 list2_2trk2trk_obj[i].Psi2Vertices = list2_2trk2trk_psi2Input[i]
1013 list2_2trk2trk_obj[i].MaxCandidates = 15
1014 list2_2trk2trk_obj[i].NumberOfPsi1Daughters = 4
1015 list2_2trk2trk_obj[i].NumberOfPsi2Daughters = 4
1016 list2_2trk2trk_obj[i].Jpsi1MassLowerCut = Jpsi_lo
1017 list2_2trk2trk_obj[i].Jpsi1MassUpperCut = Jpsi_hi
1018 list2_2trk2trk_obj[i].Psi1MassLowerCut = Psi_lo
1019 list2_2trk2trk_obj[i].Psi1MassUpperCut = Psi_hi
1020 list2_2trk2trk_obj[i].Jpsi2MassLowerCut = Jpsi_lo
1021 list2_2trk2trk_obj[i].Jpsi2MassUpperCut = Jpsi_hi
1022 list2_2trk2trk_obj[i].Psi2MassLowerCut = Psi_lo
1023 list2_2trk2trk_obj[i].Psi2MassUpperCut = Psi_hi
1024 list2_2trk2trk_obj[i].MassLowerCut = 0.
1025 list2_2trk2trk_obj[i].MassUpperCut = X_hi
1026 list2_2trk2trk_obj[i].Jpsi1Mass = list2_2trk2trk_jpsi1mass[i]
1027 list2_2trk2trk_obj[i].Psi1Mass = list2_2trk2trk_psi1mass[i]
1028 list2_2trk2trk_obj[i].Jpsi2Mass = list2_2trk2trk_jpsi2mass[i]
1029 list2_2trk2trk_obj[i].Psi2Mass = list2_2trk2trk_psi2mass[i]
1030 list2_2trk2trk_obj[i].ApplyJpsi1MassConstraint = True
1031 list2_2trk2trk_obj[i].ApplyPsi1MassConstraint = True
1032 list2_2trk2trk_obj[i].ApplyJpsi2MassConstraint = True
1033 list2_2trk2trk_obj[i].ApplyPsi2MassConstraint = True
1034 list2_2trk2trk_obj[i].Chi2Cut = 30.
1035 list2_2trk2trk_obj[i].PVRefitter = acc.popToolsAndMerge(PrimaryVertexRefittingToolCfg(flags))
1036 list2_2trk2trk_obj[i].TrkVertexFitterTool = vkalvrt
1037 list2_2trk2trk_obj[i].VxPrimaryCandidateName = "PrimaryVertices"
1038 list2_2trk2trk_obj[i].OutputVertexCollections = ["BPHY23_"+list2_2trk2trk_hypo[i]+"_SubVtx1","BPHY23_"+list2_2trk2trk_hypo[i]+"_SubVtx2","BPHY23_"+list2_2trk2trk_hypo[i]+"_MainVtx"]
1039 list2_2trk2trk_obj[i].VxPrimaryCandidateName = "PrimaryVertices"
1040 list2_2trk2trk_obj[i].RefPVContainerName = "BPHY23_"+list2_2trk2trk_hypo[i]+"_RefPrimaryVertices"
1041 list2_2trk2trk_obj[i].RefitPV = True
1042 list2_2trk2trk_obj[i].MaxnPV = 100
1043
1044
1045 list_all_obj = list_2trk0trk_obj + list_1trk0trk_obj + list_1trk1trk_obj + list_2trk1trk_obj + list_1trk2trk_obj + list_2trk2trk_obj
1046 list2_all_obj = list2_2trk0trk_obj + list2_1trk0trk_obj + list2_1trk1trk_obj + list2_2trk1trk_obj + list2_2trk2trk_obj
1047
1048 OutputCollections = []
1049 RefPVContainers = []
1050 RefPVAuxContainers = []
1051 passedCandidates = []
1052
1053 for obj in list_all_obj:
1054 OutputCollections += obj.CascadeVertexCollections
1055 RefPVContainers += ["xAOD::VertexContainer#BPHY23_" + obj.HypothesisName + "_RefPrimaryVertices"]
1056 RefPVAuxContainers += ["xAOD::VertexAuxContainer#BPHY23_" + obj.HypothesisName + "_RefPrimaryVerticesAux."]
1057 passedCandidates += ["BPHY23_" + obj.HypothesisName + "_CascadeVtx3"]
1058
1059 for obj in list2_all_obj:
1060 OutputCollections += obj.OutputVertexCollections
1061 RefPVContainers += ["xAOD::VertexContainer#BPHY23_" + obj.HypothesisName + "_RefPrimaryVertices"]
1062 RefPVAuxContainers += ["xAOD::VertexAuxContainer#BPHY23_" + obj.HypothesisName + "_RefPrimaryVerticesAux."]
1063 passedCandidates += ["BPHY23_" + obj.HypothesisName + "_MainVtx"]
1064
1065 BPHY23_SelectEvent = CompFactory.DerivationFramework.AnyVertexSkimmingTool(name = "BPHY23_SelectEvent", VertexContainerNames = passedCandidates)
1066 acc.addPublicTool(BPHY23_SelectEvent)
1067
1068 augmentation_tools = [BPHY23_Reco_mumu, BPHY23FourTrackReco_PsiX3872, BPHY23FourTrackReco_Bs0, BPHY23FourTrackReco_B0, BPHY23ThreeTrackReco_Zc3900, BPHY23ThreeTrackReco_Bpm, BPHY23Rev_Psi4Body, BPHY23Rev_X3872, BPHY23Rev_Bs0, BPHY23Rev_B0Kpi, BPHY23Rev_B0piK, BPHY23Rev_Zc3900, BPHY23Rev_Bpm, BPHY23Select_Jpsi, BPHY23Select_Psi, BPHY23Select_Upsi, BPHY23Rev_Jpsi, BPHY23Rev_Psi, BPHY23Rev_Upsi] + list_all_obj + list2_all_obj
1069 for t in augmentation_tools : acc.addPublicTool(t)
1070
1071 acc.addEventAlgo(CompFactory.DerivationFramework.DerivationKernel(
1072 "BPHY23Kernel",
1073 AugmentationTools = augmentation_tools,
1074 SkimmingTools = [BPHY23_SelectEvent]
1075 ))
1076
1077 from DerivationFrameworkCore.SlimmingHelper import SlimmingHelper
1078 from OutputStreamAthenaPool.OutputStreamConfig import OutputStreamCfg
1079 from xAODMetaDataCnv.InfileMetaDataConfig import SetupMetaDataForStreamCfg
1080 BPHY23SlimmingHelper = SlimmingHelper("BPHY23SlimmingHelper", NamesAndTypes = flags.Input.TypedCollections, flags = flags)
1081 from DerivationFrameworkBPhys.commonBPHYMethodsCfg import getDefaultAllVariables
1082 BPHY23_AllVariables = getDefaultAllVariables()
1083 BPHY23_StaticContent = []
1084
1085 # Needed for trigger objects
1086 BPHY23SlimmingHelper.IncludeMuonTriggerContent = True
1087 BPHY23SlimmingHelper.IncludeBPhysTriggerContent = True
1088
1089
1090 BPHY23_AllVariables += ["PrimaryVertices"]
1091 BPHY23_StaticContent += RefPVContainers
1092 BPHY23_StaticContent += RefPVAuxContainers
1093
1094
1095 BPHY23_AllVariables += ["InDetTrackParticles"]
1096
1097
1100 BPHY23_AllVariables += ["CombinedMuonTrackParticles", "ExtrapolatedMuonTrackParticles"]
1101
1102
1103 BPHY23_AllVariables += ["Muons", "MuonSegments"]
1104
1105
1106 for output in OutputCollections:
1107 BPHY23_StaticContent += ["xAOD::VertexContainer#%s" % output]
1108 BPHY23_StaticContent += ["xAOD::VertexAuxContainer#%sAux.-vxTrackAtVertex" % output]
1109
1110 # Truth information for MC only
1111 if isSimulation:
1112 BPHY23_AllVariables += ["TruthEvents","TruthParticles","TruthVertices","MuonTruthParticles"]
1113
1114 BPHY23SlimmingHelper.SmartCollections = ["Muons", "PrimaryVertices", "InDetTrackParticles"]
1115 BPHY23SlimmingHelper.AllVariables = BPHY23_AllVariables
1116 BPHY23SlimmingHelper.StaticContent = BPHY23_StaticContent
1117
1118 BPHY23ItemList = BPHY23SlimmingHelper.GetItemList()
1119 acc.merge(OutputStreamCfg(flags, "DAOD_BPHY23", ItemList=BPHY23ItemList, AcceptAlgs=["BPHY23Kernel"]))
1120 acc.merge(SetupMetaDataForStreamCfg(flags, "DAOD_BPHY23", AcceptAlgs=["BPHY23Kernel"], createMetadata=[MetadataCategory.CutFlowMetaData]))
1121 acc.printConfig(withDetails=True, summariseProps=True, onlyComponents = [], printDefaults=True)
1122 return acc

Variable Documentation

◆ BPHYDerivationName

str BPHY23.BPHYDerivationName = "BPHY23"

Definition at line 13 of file BPHY23.py.

◆ streamName

str BPHY23.streamName = "StreamDAOD_BPHY23"

Definition at line 14 of file BPHY23.py.