ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Trigger
TriggerCommon
TrigEDMConfig
python
TriggerEDMRun4.py
Go to the documentation of this file.
1
# Copyright (C) 2002-2026 CERN for the benefit of the ATLAS collaboration
2
3
# ------------------------------------------------------------
4
# Definition of trigger EDM for Run 4
5
6
# Concept of categories is kept similar to TriggerEDMRun3.py, categories are:
7
# AllowedCategories = ['Bjet', 'Bphys', 'Egamma', 'ID', 'Jet', 'L1', 'MET', 'MinBias', 'Muon', 'Steer', 'Tau', 'Calo', 'UTT']
8
9
# ------------------------------------------------------------
10
11
from
AthenaCommon.Logging
import
logging
12
__log = logging.getLogger(
'TriggerEDMRun4Config'
)
13
14
# ------------------------------------------------------------
15
# Additional properties for EDM collections
16
# ------------------------------------------------------------
17
from
TrigEDMConfig.TriggerEDMDefs
import
InViews, Alias
# Import when needed, allowTruncation
18
19
# ------------------------------------------------------------
20
# Lists of variables to be kept in the collections
21
# ------------------------------------------------------------
22
23
cPFOVarsToKeep = [
24
'IsInDenseEnvironment'
,
25
'TracksExpectedEnergyDeposit'
,
26
]
27
nPFOVarsToKeep = [
28
'AVG_LAR_Q'
,
'AVG_TILE_Q'
,
'BADLARQ_FRAC'
,
29
'CENTER_LAMBDA'
,
'CENTER_MAG'
,
30
'EM_PROBABILITY'
,
31
'N_BAD_CELLS'
,
'ENG_BAD_CELLS'
,
'ENG_POS'
,
32
'ISOLATION'
,
33
'LAYERENERGY_EMB1'
,
'LAYERENERGY_EMB2'
,
'LAYERENERGY_EMB3'
,
34
'LAYERENERGY_EME1'
,
'LAYERENERGY_EME2'
,
'LAYERENERGY_EME3'
,
35
'LAYERENERGY_FCAL0'
,
'LAYERENERGY_FCAL1'
,
'LAYERENERGY_FCAL2'
,
36
'LAYERENERGY_HEC0'
,
'LAYERENERGY_HEC1'
,
'LAYERENERGY_HEC2'
,
'LAYERENERGY_HEC3'
,
37
'LAYERENERGY_MINIFCAL0'
,
'LAYERENERGY_MINIFCAL1'
,
'LAYERENERGY_MINIFCAL2'
,
'LAYERENERGY_MINIFCAL3'
,
38
'LAYERENERGY_PreSamplerB'
,
'LAYERENERGY_PreSamplerE'
,
39
'LAYERENERGY_TILE0'
,
40
'LAYERENERGY_TileBar0'
,
'LAYERENERGY_TileBar1'
,
'LAYERENERGY_TileBar2'
,
41
'LAYERENERGY_TileExt0'
,
'LAYERENERGY_TileExt1'
,
'LAYERENERGY_TileExt2'
,
42
'LAYERENERGY_TileGap1'
,
'LAYERENERGY_TileGap2'
,
'LAYERENERGY_TileGap3'
,
43
'SECOND_LAMBDA'
,
'SECOND_R'
,
44
'TIMING'
,
45
]
46
47
48
# ===========
49
# === Tau ===
50
def
getTauIDVars
(name: str, wps: list[str] |
None
=
None
, extra_wps: list[str] |
None
=
None
) -> list[str]:
51
if
wps
is
None
: wps = [
'VeryLoose'
,
'Loose'
,
'Medium'
,
'Tight'
]
52
if
extra_wps
is
not
None
: wps += extra_wps
53
# Default list of variables required for all triggers, according to the naming convention
54
return
[f
'{name}_{sfx}'
for
sfx
in
[
'Score'
,
'ScoreSigTrans'
] + wps]
55
56
TauJet_vars = []
57
TauJet_vars +=
getTauIDVars
(
'GNTau'
)
58
TauJet_vars +=
getTauIDVars
(
'GNTauDev1'
, wps=[
'Loose'
,
'Medium'
])
59
TauJet_vars_str =
'.'
.join(TauJet_vars)
60
61
TauTrack_vars = [
'pt'
,
'eta'
,
'phi'
,
'flagSet'
,
'trackLinks'
,
'd0TJVA'
,
'd0SigTJVA'
,
'z0sinthetaTJVA'
,
'z0sinthetaSigTJVA'
]
62
TauTrack_vars_str =
'.'
.join(TauTrack_vars)
63
64
65
TriggerHLTListRun4 = [
66
67
# framework/steering
68
#('xAOD::TrigDecision#xTrigDecision' , 'ESD AODFULL AODSLIM', 'Steer'),
69
70
# Collections for Run 4 calorimeter studies
71
(
'xAOD::TrigRingerRingsContainer#Ringer2sigGlobal'
,
'BS ESD AODFULL'
,
'Calo'
),
72
(
'xAOD::TrigRingerRingsAuxContainer#Ringer2sigGlobalAux.'
,
'BS ESD AODFULL'
,
'Calo'
),
73
74
(
'xAOD::TrigEMClusterContainer#CaloClusters2sigGlobal'
,
'BS ESD AODFULL'
,
'Calo'
),
75
(
'xAOD::TrigEMClusterAuxContainer#CaloClusters2sigGlobalAux.'
,
'BS ESD AODFULL'
,
'Calo'
),
76
77
(
'xAOD::TrigRingerRingsContainer#RingerGlobal'
,
'BS ESD AODFULL'
,
'Calo'
),
78
(
'xAOD::TrigRingerRingsAuxContainer#RingerGlobalAux.'
,
'BS ESD AODFULL'
,
'Calo'
),
79
80
(
'xAOD::TrigEMClusterContainer#CaloClustersGlobal'
,
'BS ESD AODFULL'
,
'Calo'
),
81
(
'xAOD::TrigEMClusterAuxContainer#CaloClustersGlobalAux.'
,
'BS ESD AODFULL'
,
'Calo'
),
82
83
(
'CaloCellContainer#SeedLessFS'
,
'ESD AODFULL'
,
'Calo'
),
84
85
# Placeholder output collections from GlobalSimulation
86
(
'std::vector<float>#L1_eFEXeta'
,
'ESD AODFULL'
,
'L1'
),
87
(
'std::vector<float>#L1_eFEXphi'
,
'ESD AODFULL'
,
'L1'
),
88
(
'std::vector<float>#L1_FailedeFEXeta'
,
'ESD AODFULL'
,
'L1'
),
89
(
'std::vector<float>#L1_FailedeFEXphi'
,
'ESD AODFULL'
,
'L1'
),
90
(
'std::vector<float>#L1_eGamma1BDT'
,
'ESD AODFULL'
,
'L1'
),
91
92
# HitZ preselection, in its own super-RoI step ahead of the tracking
93
(
'TrigRoiDescriptorCollection#HLT_Roi_JetSuperHitZ'
,
'BS ESD AODFULL'
,
'Jet'
),
94
(
'xAOD::JetContainer#HLT_AntiKt4EMTopoJets_subjesIS_hitz'
,
'BS ESD AODFULL'
,
'Jet'
, [Alias(
'JetContainerShallowCopy'
)]),
95
(
'xAOD::ShallowAuxContainer#HLT_AntiKt4EMTopoJets_subjesIS_hitzAux.pt.eta.phi.m.HitZ_z0.HitZ_z0_sigma'
,
'BS ESD AODFULL'
,
'Jet'
),
96
97
# Particle Flow Objects, for assessing performance with ITk (and perhaps HGTD)
98
(
'xAOD::FlowElementContainer#HLT_ftfChargedParticleFlowObjects'
,
'BS ESD'
,
'Jet'
),
99
(
'xAOD::FlowElementAuxContainer#HLT_ftfChargedParticleFlowObjectsAux.'
+
'.'
.join(cPFOVarsToKeep),
'BS ESD'
,
'Jet'
),
100
(
'xAOD::FlowElementContainer#HLT_ftfNeutralParticleFlowObjects'
,
'BS ESD'
,
'Jet'
),
101
(
'xAOD::FlowElementAuxContainer#HLT_ftfNeutralParticleFlowObjectsAux.'
+
'.'
.join(nPFOVarsToKeep),
'BS ESD'
,
'Jet'
),
102
103
# New EDM for Run 4 muons
104
# EF Fast Reco muons (SA)
105
(
'xAOD::MuonContainer#HLT_FastMuons_RoI'
,
'BS ESD AODFULL AODSLIM'
,
'Muon'
, [InViews(
'L2MuFastReco_RoIViews'
)]),
106
(
'xAOD::MuonAuxContainer#HLT_FastMuons_RoIAux.'
,
'BS ESD AODFULL AODSLIM'
,
'Muon'
),
107
108
# EF Precise Reco muons (SA) in RoI views
109
(
'xAOD::MuonContainer#HLT_Muons_RoI'
,
'BS ESD AODFULL AODSLIM'
,
'Muon'
, [InViews(
'EFMuMSReco_RoIViews'
),InViews(
'EFMuMSReco_RoIPhIIViews'
)]),
110
(
'xAOD::MuonAuxContainer#HLT_Muons_RoIAux.'
,
'BS ESD AODFULL AODSLIM'
,
'Muon'
),
111
(
'xAOD::MuonContainer#HLT_Muons_RoIPhII_newFast'
,
'BS ESD AODFULL AODSLIM'
,
'Muon'
, [InViews(
"EFMuMSReco_RoIPhII_newFastViews"
)]),
112
(
'xAOD::MuonAuxContainer#HLT_Muons_RoIPhII_newFastAux.'
,
'BS ESD AODFULL AODSLIM'
,
'Muon'
),
113
114
(
'xAOD::MuonContainer#HLT_Muons_RoIPhII_mlbkt'
,
'BS ESD AODFULL AODSLIM'
,
'Muon'
, [InViews(
"EFMuMSReco_RoIPhII_mlbktViews"
)]),
115
(
'xAOD::MuonAuxContainer#HLT_Muons_RoIPhII_mlbktAux.'
,
'BS ESD AODFULL AODSLIM'
,
'Muon'
),
116
117
# EF Precise Reco muons (SA) in FS views
118
(
'xAOD::MuonContainer#HLT_Muons_FS'
,
'BS ESD AODFULL AODSLIM'
,
'Muon'
, [InViews(
'EFMuMSReco_FSViews'
),InViews(
'EFMuMSReco_FSPhIIViews'
)]),
119
(
'xAOD::MuonAuxContainer#HLT_Muons_FSAux.'
,
'BS ESD AODFULL AODSLIM'
,
'Muon'
),
120
(
'xAOD::MuonContainer#HLT_Muons_FSPhII_newFast'
,
'BS ESD AODFULL AODSLIM'
,
'Muon'
, [InViews(
"EFMuMSReco_FSPhII_newFastViews"
)]),
121
(
'xAOD::MuonAuxContainer#HLT_Muons_FSPhII_newFastAux.'
,
'BS ESD AODFULL AODSLIM'
,
'Muon'
),
122
123
(
'xAOD::MuonContainer#HLT_Muons_FSPhII_mlbkt'
,
'BS ESD AODFULL AODSLIM'
,
'Muon'
, [InViews(
"EFMuMSReco_FSPhII_mlbktViews"
)]),
124
(
'xAOD::MuonAuxContainer#HLT_Muons_FSPhII_mlbktAux.'
,
'BS ESD AODFULL AODSLIM'
,
'Muon'
),
125
126
# EF Precise Reco muon tracks (SA) in RoI views
127
(
'xAOD::TrackParticleContainer#HLT_MuonMSTrackParticles_RoIPhII'
,
'BS ESD AODFULL'
,
'Muon'
, [InViews(
'EFMuMSReco_RoIPhIIViews'
)]),
128
(
'xAOD::TrackParticleAuxContainer#HLT_MuonMSTrackParticles_RoIPhIIAux.'
,
'BS ESD AODFULL'
,
'Muon'
),
129
130
(
'xAOD::TrackParticleContainer#HLT_MuonMSTrackParticles_RoIPhII_newFast'
,
'BS ESD AODFULL'
,
'Muon'
, [InViews(
'EFMuMSReco_RoIPhII_newFastViews'
)]),
131
(
'xAOD::TrackParticleAuxContainer#HLT_MuonMSTrackParticles_RoIPhII_newFastAux.'
,
'BS ESD AODFULL'
,
'Muon'
),
132
133
(
'xAOD::TrackParticleContainer#HLT_MuonMSTrackParticles_RoIPhII_mlbkt'
,
'BS ESD AODFULL'
,
'Muon'
, [InViews(
'EFMuMSReco_RoIPhII_mlbktViews'
)]),
134
(
'xAOD::TrackParticleAuxContainer#HLT_MuonMSTrackParticles_RoIPhII_mlbktAux.'
,
'BS ESD AODFULL'
,
'Muon'
),
135
136
# EF Precise Reco muon tracks (SA) in FS views
137
(
'xAOD::TrackParticleContainer#HLT_MuonMSTrackParticles_FSPhII'
,
'BS ESD AODFULL'
,
'Muon'
, [InViews(
'EFMuMSReco_FSPhIIViews'
)]),
138
(
'xAOD::TrackParticleAuxContainer#HLT_MuonMSTrackParticles_FSPhIIAux.'
,
'BS ESD AODFULL'
,
'Muon'
),
139
140
(
'xAOD::TrackParticleContainer#HLT_MuonMSTrackParticles_FSPhII_newFast'
,
'BS ESD AODFULL'
,
'Muon'
, [InViews(
'EFMuMSReco_FSPhII_newFastViews'
)]),
141
(
'xAOD::TrackParticleAuxContainer#HLT_MuonMSTrackParticles_FSPhII_newFastAux.'
,
'BS ESD AODFULL'
,
'Muon'
),
142
143
(
'xAOD::TrackParticleContainer#HLT_MuonMSTrackParticles_FSPhII_mlbkt'
,
'BS ESD AODFULL'
,
'Muon'
, [InViews(
'EFMuMSReco_FSPhII_mlbktViews'
)]),
144
(
'xAOD::TrackParticleAuxContainer#HLT_MuonMSTrackParticles_FSPhII_mlbktAux.'
,
'BS ESD AODFULL'
,
'Muon'
),
145
146
# EF Displaced Vertex inference outputs
147
(
'xAOD::TrigCompositeContainer#EF_MuonDVInferenceOutput'
,
'BS ESD AODFULL'
,
'Muon'
),
148
(
'xAOD::TrigCompositeAuxContainer#EF_MuonDVInferenceOutputAux.Score'
,
'BS ESD AODFULL'
,
'Muon'
),
149
150
# Tau
151
(
'xAOD::CaloClusterContainer#HLT_TopoCaloClustersEM'
,
'BS ESD AODFULL'
,
'Tau'
, [InViews(
'tauCaloEMMVAViews'
)]),
152
(
'xAOD::CaloClusterTrigAuxContainer#HLT_TopoCaloClustersEMAux.nCells'
,
'BS ESD AODFULL'
,
'Tau'
),
153
154
(
'xAOD::TrackParticleContainer#HLT_IDTrack_TauCoreEM_FTF'
,
'BS ESD AODFULL'
,
'Tau'
, [InViews(
'tauFastTrackCoreEMViews'
)]),
155
(
'xAOD::TrackParticleAuxContainer#HLT_IDTrack_TauCoreEM_FTFAux.'
,
'BS ESD AODFULL'
,
'Tau'
),
156
157
(
'xAOD::TrackParticleContainer#HLT_IDTrack_TauIsoEM_FTF'
,
'BS ESD AODFULL'
,
'Tau'
, [InViews(
'tauFastTrackIsoEMViews'
)]),
158
(
'xAOD::TrackParticleAuxContainer#HLT_IDTrack_TauIsoEM_FTFAux.'
,
'BS ESD AODFULL'
,
'Tau'
),
159
160
(
'TrigRoiDescriptorCollection#HLT_Roi_TauCoreEM'
,
'BS ESD AODFULL'
,
'Tau'
),
161
(
'TrigRoiDescriptorCollection#HLT_Roi_TauIsoEM'
,
'BS ESD AODFULL'
,
'Tau'
),
162
163
(
'xAOD::TauJetContainer#HLT_TrigTauRecMerged_CaloEMOnly'
,
'BS ESD AODFULL'
,
'Tau'
, [InViews(
'tauCaloEMMVAViews'
)]),
164
(
'xAOD::TauJetAuxContainer#HLT_TrigTauRecMerged_CaloEMOnlyAux.'
,
'BS ESD AODFULL'
,
'Tau'
),
165
166
(
'xAOD::TauJetContainer#HLT_TrigTauRecMerged_EM'
,
'BS ESD AODFULL'
,
'Tau'
, [InViews(
'precEMTauViews'
), InViews(
'tauPrecisionReco_EMViews'
)]),
167
(
'xAOD::TauJetAuxContainer#HLT_TrigTauRecMerged_EMAux.'
+ TauJet_vars_str,
'BS ESD AODFULL'
,
'Tau'
),
168
169
# tau tracks
170
(
'xAOD::TauTrackContainer#HLT_tautrack_EM'
,
'BS ESD AODFULL'
,
'Tau'
, [InViews(
'precEMTauViews'
), InViews(
'tauPrecisionReco_EMViews'
)]),
171
(
'xAOD::TauTrackAuxContainer#HLT_tautrack_EMAux.'
+ TauTrack_vars_str,
'BS ESD AODFULL'
,
'Tau'
),
172
173
174
]
175
176
#-------------------------------------------------------------------------------
177
# EDM details list to store the transient-persistent version
178
#-------------------------------------------------------------------------------
179
EDMDetailsRun4 = {}
180
181
# xAOD versions are auto-detected at serialisation, but T/P classes need to specify P version here
182
EDMDetailsRun4[
"TrigRoiDescriptorCollection"
] = {
'persistent'
:
"TrigRoiDescriptorCollection_p3"
}
183
EDMDetailsRun4[
"Muon::NSW_TrigRawDataContainer"
] = {
'persistent'
:
"Muon::NSW_TrigRawDataContainer_p1"
}
184
185
EDMDetailsRun4[
"xAOD::TrigDecisionAuxInfo"
] = {
'parent'
:
"xAOD::TrigDecision"
}
186
EDMDetailsRun4[
"xAOD::CaloClusterTrigAuxContainer"
] = {
'parent'
:
"xAOD::CaloClusterContainer"
}
python.TriggerEDMRun4.getTauIDVars
list[str] getTauIDVars(str name, list[str]|None wps=None, list[str]|None extra_wps=None)
Definition
TriggerEDMRun4.py:50
Generated on
for ATLAS Offline Software by
1.17.0