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.DFCommonJets_QGTagger_truthjet_nCharged.DFCommonJets_QGTagger_truthjet_pt.DFCommonJets_QGTagger_truthjet_eta.DFCommonJets_QGTagger_NTracks.DFCommonJets_QGTagger_TracksWidth.DFCommonJets_QGTagger_TracksC1.ConeExclBHadronsFinal.ConeExclCHadronsFinal.GhostBHadronsFinal.GhostCHadronsFinal.GhostBHadronsFinalCount.GhostBHadronsFinalPt.GhostCHadronsFinalCount.GhostCHadronsFinalPt",
153
154 "AntiKt4EMPFlowJets.DFCommonJets_QGTagger_truthjet_nCharged.DFCommonJets_QGTagger_truthjet_pt.DFCommonJets_QGTagger_truthjet_eta.DFCommonJets_QGTagger_NTracks.DFCommonJets_QGTagger_TracksWidth.DFCommonJets_QGTagger_TracksC1.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 "AntiKt4EMTopoJets.DFCommonJets_QGTagger_NTracks.DFCommonJets_QGTagger_TracksWidth.DFCommonJets_QGTagger_TracksC1",
163
164 "AntiKt4EMPFlowJets.DFCommonJets_QGTagger_NTracks.DFCommonJets_QGTagger_TracksWidth.DFCommonJets_QGTagger_TracksC1.DFCommonJets_QGTagger_truthjet_pt.DFCommonJets_QGTagger_truthjet_eta.DFCommonJets_QGTagger_truthjet_nCharged.HECQuality.TrackSumMass.PSFrac.TrackSumPt.SumPtChargedPFOPt1000.EMFrac.Width.JetEMScaleMomentum_pt.JetEMScaleMomentum_eta.TracksForBTagging.SumPtTrkPt1000.TrackWidthPt500",
165
166 "EventInfo.hardScatterVertexLink.timeStampNSOffset",
167
168 "PrimaryVertices.neutralWeights.chiSquared.numberDoF.sumPt2.covariance.trackWeights"
169 ]
170
171 TLA2SlimmingHelper.AllVariables = [
172
173 "Kt4EMTopoOriginEventShape","Kt4EMPFlowEventShape",
174 "Kt4EMPFlowPUSBEventShape","Kt4EMPFlowNeutEventShape",
175
176 "MuonSegments",
177 ]
178
179
180
181 L1Calo_eEM_postfix = ""
182
183 TLA2SlimmingHelper.AppendToDictionary.update(
184 {"L1_eEMRoI"+L1Calo_eEM_postfix : "xAOD::eFexEMRoIContainer",
185 "L1_eEMRoI"+L1Calo_eEM_postfix+"Aux" : "xAOD::eFexEMRoIAuxContainer"})
186
187 TLA2SlimmingHelper.AllVariables += ["L1_eEMRoI"+L1Calo_eEM_postfix]
188
189
190
191 if flags.Input.isMC:
192 from DerivationFrameworkTLA.TLACommonConfig import addTLATruth3ContentToSlimmerTool
193 addTLATruth3ContentToSlimmerTool(TLA2SlimmingHelper)
194 TLA2SlimmingHelper.AllVariables += [
195 'TruthHFWithDecayParticles',
196 'TruthHFWithDecayVertices',
197 'TruthCharm',
198 'TruthPileupParticles',
199 'InTimeAntiKt4TruthJets',
200 'OutOfTimeAntiKt4TruthJets',
201 ]
202 TLA2SlimmingHelper.ExtraVariables += [
203 "Electrons.TruthLink",
204 "Photons.TruthLink"
205 ]
206
207
208 TLA2SlimmingHelper.SmartCollections += ["AntiKt4TruthWZJets"]
209 TLA2SlimmingHelper.AllVariables += ["AntiKt4TruthJets", "AntiKt4TruthDressedWZJets"]
210
211
212
213 TLA2SlimmingHelper.IncludeTriggerNavigation = True
214 TLA2SlimmingHelper.IncludeJetTriggerContent = True
215 TLA2SlimmingHelper.IncludeMuonTriggerContent = False
216 TLA2SlimmingHelper.IncludeTrackingTriggerContent = True
217 TLA2SlimmingHelper.IncludeEGammaTriggerContent = True
218 TLA2SlimmingHelper.IncludeTauTriggerContent = False
219 TLA2SlimmingHelper.IncludeEtMissTriggerContent = False
220 TLA2SlimmingHelper.IncludeBJetTriggerContent = True
221 TLA2SlimmingHelper.IncludeBPhysTriggerContent = False
222 TLA2SlimmingHelper.IncludeMinBiasTriggerContent = False
223 TLA2SlimmingHelper.OverrideJetTriggerContentWithTLAContent = True
224
225
226
227 if flags.Trigger.EDMVersion == 2:
228 from DerivationFrameworkPhys.TriggerMatchingCommonConfig import AddRun2TriggerMatchingToSlimmingHelper
229 AddRun2TriggerMatchingToSlimmingHelper(SlimmingHelper = TLA2SlimmingHelper,
230 OutputContainerPrefix = "TrigMatch_",
231 TriggerList = TLA2TriggerListsHelper.Run2TriggerNamesTau)
232 AddRun2TriggerMatchingToSlimmingHelper(SlimmingHelper = TLA2SlimmingHelper,
233 OutputContainerPrefix = "TrigMatch_",
234 TriggerList = TLA2TriggerListsHelper.Run2TriggerNamesNoTau)
235
236 if flags.Trigger.EDMVersion == 3 or (flags.Trigger.EDMVersion == 2 and flags.Trigger.doEDMVersionConversion):
237 from TrigNavSlimmingMT.TrigNavSlimmingMTConfig import AddRun3TrigNavSlimmingCollectionsToSlimmingHelper
238 AddRun3TrigNavSlimmingCollectionsToSlimmingHelper(TLA2SlimmingHelper)
239
240
241 TLA2ItemList = TLA2SlimmingHelper.GetItemList()
242 acc.merge(OutputStreamCfg(flags, "DAOD_TLA2", ItemList=TLA2ItemList, AcceptAlgs=["TLA2Kernel"]))
243 acc.merge(SetupMetaDataForStreamCfg(flags, "DAOD_TLA2", AcceptAlgs=["TLA2Kernel"], createMetadata=[MetadataCategory.CutFlowMetaData, MetadataCategory.TruthMetaData]))
244
245 return acc
246