Belle II Software
development
reconstruction_utils.py
1
#!/usr/bin/env python3
2
3
10
11
import
modularAnalysis
as
ma
12
13
14
def
bToCharmHLTSkim(path):
15
"""
16
Function to reconstruct B meson candidates
for
HLT skims
17
@param
path modules are added to this path
18
"""
19
20
BplusList = []
21
BzeroList = []
22
23
# Light mesons
24
ma.fillParticleList(
"pi+:GoodTrackForHLT"
,
"abs(d0) < 2 and abs(z0) < 5"
, path=path)
25
ma.fillParticleList(
"K+:GoodTrackForHLT"
,
"abs(d0) < 2 and abs(z0) < 5"
, path=path)
26
ma.fillParticleList(
'gamma:GoodPi0ForHLT'
,
'[clusterReg == 1 and E > 0.02250] or \
27
[clusterReg == 2 and E > 0.020] or \
28
[clusterReg == 3 and E > 0.020]'
,
29
writeOut=
True
, path=path)
30
ma.reconstructDecay(
'pi0:GoodPi0ForHLT -> gamma:GoodPi0ForHLT gamma:GoodPi0ForHLT'
,
'0.105 < M < 0.150'
, 1,
True
, path)
31
ma.matchMCTruth(
'pi0:GoodPi0ForHLT'
, path)
32
33
# D0 lists
34
ma.reconstructDecay(decayString=
'D0:KpiForHLT -> K-:GoodTrackForHLT pi+:GoodTrackForHLT'
, cut=
'1.7 < M < 2.0'
, path=path)
35
ma.reconstructDecay(
36
decayString=
'D0:Kpipi0ForHLT -> K-:GoodTrackForHLT pi+:GoodTrackForHLT pi0:GoodPi0ForHLT'
,
37
cut=
'1.7 < M < 2.0'
,
38
path=path)
39
ma.reconstructDecay(
40
decayString=
'D0:KpipipiForHLT -> K-:GoodTrackForHLT pi+:GoodTrackForHLT pi+:GoodTrackForHLT pi-:GoodTrackForHLT'
,
41
cut=
'1.7 < M < 2.0'
,
42
path=path)
43
# D+ list
44
ma.reconstructDecay(
45
decayString=
'D+:KpipiForHLT -> K-:GoodTrackForHLT pi+:GoodTrackForHLT pi+:GoodTrackForHLT'
,
46
cut=
'1.8 < M < 1.9'
,
47
path=path)
48
49
# D*+ lists
50
ma.reconstructDecay(
51
decayString=
'D*+:D0_KpiForHLT -> D0:KpiForHLT pi+:GoodTrackForHLT'
,
52
cut=
'massDifference(0) < 0.16'
,
53
path=path)
54
ma.reconstructDecay(
55
decayString=
'D*+:D0_Kpipi0ForHLT -> D0:Kpipi0ForHLT pi+:GoodTrackForHLT'
,
56
cut=
'massDifference(0) < 0.16'
,
57
path=path)
58
ma.reconstructDecay(
59
decayString=
'D*+:D0_KpipipiForHLT -> D0:KpipipiForHLT pi+:GoodTrackForHLT'
,
60
cut=
'massDifference(0) < 0.16'
,
61
path=path)
62
63
# B+ lists
64
ma.reconstructDecay(
"B+:BtoD0pi_KpiForHLT -> anti-D0:KpiForHLT pi+:GoodTrackForHLT"
,
65
"Mbc > 5.15 and abs(deltaE) < 0.5"
, path=path)
66
BplusList.append(
"B+:BtoD0pi_KpiForHLT"
)
67
ma.reconstructDecay(
"B+:BtoD0pi_Kpipi0ForHLT -> anti-D0:Kpipi0ForHLT pi+:GoodTrackForHLT"
,
68
"Mbc > 5.15 and abs(deltaE) < 0.3"
, path=path)
69
BplusList.append(
"B+:BtoD0pi_Kpipi0ForHLT"
)
70
ma.reconstructDecay(
"B+:BtoD0pi_KpipipiForHLT -> anti-D0:KpipipiForHLT pi+:GoodTrackForHLT"
,
71
"Mbc > 5.15 and abs(deltaE) < 0.3"
, path=path)
72
BplusList.append(
"B+:BtoD0pi_KpipipiForHLT"
)
73
74
# B0 lists
75
ma.reconstructDecay(
"B0:B0toDpi_KpipiForHLT -> D-:KpipiForHLT pi+:GoodTrackForHLT"
,
76
"5.15 < Mbc and abs(deltaE) < 0.3"
, path=path)
77
BzeroList.append(
"B0:B0toDpi_KpipiForHLT"
)
78
ma.reconstructDecay(
"B0:B0toDstarPi_D0pi_KpiForHLT -> D*-:D0_KpiForHLT pi+:GoodTrackForHLT"
,
79
"5.15 < Mbc and abs(deltaE) < 0.3"
, path=path)
80
BzeroList.append(
"B0:B0toDstarPi_D0pi_KpiForHLT"
)
81
ma.reconstructDecay(
"B0:B0toDstarPi_D0pi_KpipipiForHLT -> D*-:D0_KpipipiForHLT pi+:GoodTrackForHLT"
,
82
"5.15 < Mbc and abs(deltaE) < 0.3"
, path=path)
83
BzeroList.append(
"B0:B0toDstarPi_D0pi_KpipipiForHLT"
)
84
ma.reconstructDecay(
"B0:B0toDstarPi_D0pi_Kpipi0ForHLT -> D*-:D0_Kpipi0ForHLT pi+:GoodTrackForHLT"
,
85
"5.15 < Mbc and abs(deltaE) < 0.3"
, path=path)
86
BzeroList.append(
"B0:B0toDstarPi_D0pi_Kpipi0ForHLT"
)
87
88
ma.copyLists(
"B+:BtoCharmForHLT"
, BplusList, path=path)
89
ma.copyLists(
"B0:BtoCharmForHLT"
, BzeroList, path=path)
hlt
softwaretrigger
scripts
softwaretrigger
reconstruction_utils.py
Generated on Wed Nov 13 2024 02:39:18 for Belle II Software by
1.9.6