203def JETM1Cfg(flags):
204
205 acc = ComponentAccumulator()
206
207
208
209
210
211 from DerivationFrameworkPhys.TriggerListsHelper import TriggerListsHelper
212 JETM1TriggerListsHelper = TriggerListsHelper(flags)
213
214
215 acc.merge(JETM1KernelCfg(flags, name="JETM1Kernel", StreamName = 'StreamDAOD_JETM1', TriggerListsHelper = JETM1TriggerListsHelper))
216
217
218
219
220 from OutputStreamAthenaPool.OutputStreamConfig import OutputStreamCfg
221 from xAODMetaDataCnv.InfileMetaDataConfig import SetupMetaDataForStreamCfg
222 from DerivationFrameworkCore.SlimmingHelper import SlimmingHelper
223
224 JETM1SlimmingHelper =
SlimmingHelper(
"JETM1SlimmingHelper", NamesAndTypes = flags.Input.TypedCollections, flags = flags)
225
226 JETM1SlimmingHelper.SmartCollections = ["Electrons", "Photons", "Muons", "PrimaryVertices",
227 "InDetTrackParticles",
228 "AntiKt4EMTopoJets",
229 "AntiKt10UFOCSSKJets",
230 "AntiKt10UFOCSSKSoftDropBeta100Zcut10Jets",
231]
232
233 JETM1SlimmingHelper.ExtraVariables = ["AntiKt4EMTopoJets.DFCommonJets_QGTagger_NTracks.DFCommonJets_QGTagger_TracksWidth.DFCommonJets_QGTagger_TracksC1",
234 "AntiKt4EMPFlowJets.DFCommonJets_QGTagger_NTracks.DFCommonJets_QGTagger_TracksWidth.DFCommonJets_QGTagger_TracksC1",
235 "AntiKt4EMPFlowJets.passOnlyBJVT.DFCommonJets_bJvt.isJvtHS.isJvtPU",
236 "InDetTrackParticles.truthMatchProbability",
237 "AntiKt10UFOCSSKSoftDropBeta100Zcut10Jets.zg.rg.NumTrkPt1000.TrackWidthPt1000.GhostMuonSegmentCount.EnergyPerSampling.GhostTrack",
238 "AntiKt10UFOCSSKJets.NumTrkPt1000.TrackWidthPt1000.GhostMuonSegmentCount.EnergyPerSampling.GhostTrack"]
239
240 JETM1SlimmingHelper.AllVariables = [ "MuonSegments", "UnAssocMuonSegments", "EventInfo",
241 "Kt4EMTopoOriginEventShape","Kt4EMPFlowEventShape","Kt4EMPFlowPUSBEventShape","Kt4EMPFlowNeutEventShape","Kt4UFOCSSKEventShape","Kt4UFOCSSKNeutEventShape",
242 "AntiKt4EMPFlowJets"]
243
244
245 if flags.Input.isMC:
246
247 from DerivationFrameworkMCTruth.MCTruthCommonConfig import addTruth3ContentToSlimmerTool
248 addTruth3ContentToSlimmerTool(JETM1SlimmingHelper)
249
250 JETM1SlimmingHelper.AppendToDictionary.update({'TruthParticles': 'xAOD::TruthParticleContainer',
251 'TruthParticlesAux': 'xAOD::TruthParticleAuxContainer'})
252
253 JETM1SlimmingHelper.SmartCollections += ["AntiKt4TruthWZJets"]
254 JETM1SlimmingHelper.AllVariables += ["TruthTopQuarkWithDecayParticles","TruthTopQuarkWithDecayVertices",
255 "AntiKt4TruthJets", "InTimeAntiKt4TruthJets", "OutOfTimeAntiKt4TruthJets", "TruthParticles"]
256 JETM1SlimmingHelper.ExtraVariables += ["TruthVertices.uid.z"]
257
258 JETM1SlimmingHelper.AppendToDictionary.update({'Kt4UFOCSSKEventShape':'xAOD::EventShape',
259 'Kt4UFOCSSKEventShapeAux':'xAOD::EventShapeAuxInfo',
260 'Kt4UFOCSSKNeutEventShape':'xAOD::EventShape',
261 'Kt4UFOCSSKNeutEventShapeAux':'xAOD::EventShapeAuxInfo'})
262
263
264 JETM1SlimmingHelper.IncludeTriggerNavigation = False
265 JETM1SlimmingHelper.IncludeJetTriggerContent = True
266 JETM1SlimmingHelper.IncludeMuonTriggerContent = False
267 JETM1SlimmingHelper.IncludeEGammaTriggerContent = False
268 JETM1SlimmingHelper.IncludeTauTriggerContent = False
269 JETM1SlimmingHelper.IncludeEtMissTriggerContent = False
270 JETM1SlimmingHelper.IncludeBJetTriggerContent = False
271 JETM1SlimmingHelper.IncludeBPhysTriggerContent = False
272 JETM1SlimmingHelper.IncludeMinBiasTriggerContent = False
273
274 if flags.Trigger.EDMVersion == 2:
275 triggerNames = ["a4tcemsubjesFS", "a4tcemsubjesISFS", "a10tclcwsubjesFS", "a10tclcwsubFS", "a10ttclcwjesFS", "GSCJet"]
276 for trigger in triggerNames:
277 JETM1SlimmingHelper.FinalItemList.append('xAOD::AuxContainerBase!#HLT_xAOD__JetContainer_'+trigger+'Aux.pt.eta.phi.m')
278
279 from Campaigns.Utils import getDataYear
280 if getDataYear(flags) >= 2024:
281 from DerivationFrameworkPhys.TriggerMatchingCommonConfig import AddjFexRoIsToSlimmingHelper
282 AddjFexRoIsToSlimmingHelper(SlimmingHelper = JETM1SlimmingHelper)
283
284 jetOutputList = ["AntiKt4PV0TrackJets", "AntiKt4UFOCSSKJets"]
285 if flags.Input.isMC:
286 jetOutputList = ["AntiKt4PV0TrackJets","AntiKt4UFOCSSKNoPtCutJets","AntiKt4EMPFlowNoPtCutJets","AntiKt4EMTopoNoPtCutJets"]
287 from DerivationFrameworkJetEtMiss.JetCommonConfig import addJetsToSlimmingTool
288 addJetsToSlimmingTool(JETM1SlimmingHelper, jetOutputList, JETM1SlimmingHelper.SmartCollections)
289
290
291 JETM1ItemList = JETM1SlimmingHelper.GetItemList()
292 acc.merge(OutputStreamCfg(flags, "DAOD_JETM1", ItemList=JETM1ItemList, AcceptAlgs=["JETM1Kernel"]))
293 acc.merge(SetupMetaDataForStreamCfg(flags, "DAOD_JETM1", AcceptAlgs=["JETM1Kernel"], createMetadata=[MetadataCategory.CutFlowMetaData]))
294
295 return acc
296