115def TLA2Cfg(flags):
116 stream_name = 'StreamDAOD_TLA2'
117 acc = ComponentAccumulator()
118
119
120
121
122 from DerivationFrameworkPhys.TriggerListsHelper import TriggerListsHelper
123 TLA2TriggerListsHelper = TriggerListsHelper(flags)
124
125
126
127 acc.merge(TLA2KernelCfg(flags, name="TLA2Kernel", StreamName = stream_name, TriggerListsHelper = TLA2TriggerListsHelper))
128
129
130
131
132 from OutputStreamAthenaPool.OutputStreamConfig import OutputStreamCfg
133 from xAODMetaDataCnv.InfileMetaDataConfig import SetupMetaDataForStreamCfg
134 from DerivationFrameworkCore.SlimmingHelper import SlimmingHelper
135
136 TLA2SlimmingHelper =
SlimmingHelper(
"TLA2SlimmingHelper", NamesAndTypes = flags.Input.TypedCollections, flags = flags)
137
138 TLA2SlimmingHelper.SmartCollections = [
139 "EventInfo",
140 "Electrons",
141 "Photons",
142 "PrimaryVertices",
143 "Muons",
144 "AntiKt4EMTopoJets",
145 "AntiKt4EMPFlowJets",
146
147 ]
148
149
150 if flags.Input.isMC:
151 TLA2SlimmingHelper.ExtraVariables += [
152 "AntiKt4EMTopoJets.ConeExclBHadronsFinal.ConeExclCHadronsFinal.GhostBHadronsFinal.GhostCHadronsFinal.GhostBHadronsFinalCount.GhostBHadronsFinalPt.GhostCHadronsFinalCount.GhostCHadronsFinalPt",
153
154 "AntiKt4EMPFlowJets.ConeExclBHadronsFinal.ConeExclCHadronsFinal.GhostBHadronsFinal.GhostCHadronsFinal.GhostBHadronsFinalCount.GhostBHadronsFinalPt.GhostCHadronsFinalCount.GhostCHadronsFinalPt",
155
156 "TruthPrimaryVertices.t.x.y.z",
157
158 "EventInfo.hardScatterVertexLink.timeStampNSOffset",
159 ]
160 else:
161 TLA2SlimmingHelper.ExtraVariables += [
162 "AntiKt4EMPFlowJets.HECQuality.TrackSumMass.PSFrac.TrackSumPt.SumPtChargedPFOPt1000.EMFrac.Width.JetEMScaleMomentum_pt.JetEMScaleMomentum_eta.TracksForBTagging.SumPtTrkPt1000.TrackWidthPt500",
163
164 "EventInfo.hardScatterVertexLink.timeStampNSOffset",
165
166 "PrimaryVertices.neutralWeights.chiSquared.numberDoF.sumPt2.covariance.trackWeights"
167 ]
168
169 TLA2SlimmingHelper.AllVariables = [
170
171 "Kt4EMTopoOriginEventShape","Kt4EMPFlowEventShape",
172 "Kt4EMPFlowNeutEventShape",
173
174 "MuonSegments",
175 ]
176
177
178
179 L1Calo_eEM_postfix = ""
180
181 TLA2SlimmingHelper.AppendToDictionary.update(
182 {"L1_eEMRoI"+L1Calo_eEM_postfix : "xAOD::eFexEMRoIContainer",
183 "L1_eEMRoI"+L1Calo_eEM_postfix+"Aux" : "xAOD::eFexEMRoIAuxContainer"})
184
185 TLA2SlimmingHelper.AllVariables += ["L1_eEMRoI"+L1Calo_eEM_postfix]
186
187
188
189 if flags.Input.isMC:
190 from DerivationFrameworkTLA.TLACommonConfig import addTLATruth3ContentToSlimmerTool
191 addTLATruth3ContentToSlimmerTool(TLA2SlimmingHelper)
192 TLA2SlimmingHelper.AllVariables += [
193 'TruthHFWithDecayParticles',
194 'TruthHFWithDecayVertices',
195 'TruthCharm',
196 'TruthPileupParticles',
197 'InTimeAntiKt4TruthJets',
198 'OutOfTimeAntiKt4TruthJets',
199 ]
200 TLA2SlimmingHelper.ExtraVariables += [
201 "Electrons.TruthLink",
202 "Photons.TruthLink"
203 ]
204
205
206 TLA2SlimmingHelper.SmartCollections += ["AntiKt4TruthWZJets"]
207 TLA2SlimmingHelper.AllVariables += ["AntiKt4TruthJets", "AntiKt4TruthDressedWZJets"]
208
209
210
211 TLA2SlimmingHelper.IncludeTriggerNavigation = True
212 TLA2SlimmingHelper.IncludeJetTriggerContent = True
213 TLA2SlimmingHelper.IncludeMuonTriggerContent = False
214 TLA2SlimmingHelper.IncludeTrackingTriggerContent = True
215 TLA2SlimmingHelper.IncludeEGammaTriggerContent = True
216 TLA2SlimmingHelper.IncludeTauTriggerContent = False
217 TLA2SlimmingHelper.IncludeEtMissTriggerContent = False
218 TLA2SlimmingHelper.IncludeBJetTriggerContent = True
219 TLA2SlimmingHelper.IncludeBPhysTriggerContent = False
220 TLA2SlimmingHelper.IncludeMinBiasTriggerContent = False
221 TLA2SlimmingHelper.OverrideJetTriggerContentWithTLAContent = True
222
223
224
225 if flags.Trigger.EDMVersion == 2:
226 from DerivationFrameworkPhys.TriggerMatchingCommonConfig import AddRun2TriggerMatchingToSlimmingHelper
227 AddRun2TriggerMatchingToSlimmingHelper(SlimmingHelper = TLA2SlimmingHelper,
228 OutputContainerPrefix = "TrigMatch_",
229 TriggerList = TLA2TriggerListsHelper.Run2TriggerNamesTau)
230 AddRun2TriggerMatchingToSlimmingHelper(SlimmingHelper = TLA2SlimmingHelper,
231 OutputContainerPrefix = "TrigMatch_",
232 TriggerList = TLA2TriggerListsHelper.Run2TriggerNamesNoTau)
233
234 if flags.Trigger.EDMVersion == 3 or (flags.Trigger.EDMVersion == 2 and flags.Trigger.doEDMVersionConversion):
235 from TrigNavSlimmingMT.TrigNavSlimmingMTConfig import AddRun3TrigNavSlimmingCollectionsToSlimmingHelper
236 AddRun3TrigNavSlimmingCollectionsToSlimmingHelper(TLA2SlimmingHelper)
237
238
239 TLA2ItemList = TLA2SlimmingHelper.GetItemList()
240 acc.merge(OutputStreamCfg(flags, "DAOD_TLA2", ItemList=TLA2ItemList, AcceptAlgs=["TLA2Kernel"]))
241 acc.merge(SetupMetaDataForStreamCfg(flags, "DAOD_TLA2", AcceptAlgs=["TLA2Kernel"], createMetadata=[MetadataCategory.CutFlowMetaData, MetadataCategory.TruthMetaData]))
242
243 return acc
244