237def HIGG1D1Cfg(flags):
238
239 acc = ComponentAccumulator()
240
241 from DerivationFrameworkPhys.TriggerListsHelper import TriggerListsHelper
242 HIGG1D1TriggerListsHelper = TriggerListsHelper(flags)
243
244 acc.merge(HIGG1D1KernelCfg(flags, name="HIGG1D1Kernel", StreamName = 'StreamDAOD_HIGG1D1', TriggerListsHelper = HIGG1D1TriggerListsHelper))
245
246
247
248
249
250 from OutputStreamAthenaPool.OutputStreamConfig import OutputStreamCfg
251 from xAODMetaDataCnv.InfileMetaDataConfig import SetupMetaDataForStreamCfg
252 from DerivationFrameworkCore.SlimmingHelper import SlimmingHelper
253
254 HIGG1D1SlimmingHelper =
SlimmingHelper(
"HIGG1D1SlimmingHelper", NamesAndTypes = flags.Input.TypedCollections, flags = flags)
255 HIGG1D1SlimmingHelper.SmartCollections = ["EventInfo",
256 "Electrons",
257 "Photons",
258 "Muons",
259 "PrimaryVertices",
260 "InDetTrackParticles",
261 "AntiKt4EMTopoJets",
262 "AntiKt4EMPFlowJets",
263 "AntiKt10UFOCSSKSoftDropBeta100Zcut10Jets",
264 "MET_Baseline_AntiKt4EMTopo",
265 "MET_Baseline_AntiKt4EMPFlow",
266 "TauJets",
267 "DiTauJets",
268 "DiTauJetsLowPt"]
269
270 excludedVertexAuxData = "-vxTrackAtVertex.-MvfFitInfo.-isInitialized.-VTAV"
271 StaticContent = []
272 StaticContent += ["xAOD::VertexContainer#SoftBVrtClusterTool_Tight_Vertices"]
273 StaticContent += ["xAOD::VertexAuxContainer#SoftBVrtClusterTool_Tight_VerticesAux." + excludedVertexAuxData]
274 StaticContent += ["xAOD::VertexContainer#SoftBVrtClusterTool_Medium_Vertices"]
275 StaticContent += ["xAOD::VertexAuxContainer#SoftBVrtClusterTool_Medium_VerticesAux." + excludedVertexAuxData]
276 StaticContent += ["xAOD::VertexContainer#SoftBVrtClusterTool_Loose_Vertices"]
277 StaticContent += ["xAOD::VertexAuxContainer#SoftBVrtClusterTool_Loose_VerticesAux." + excludedVertexAuxData]
278
279 HIGG1D1SlimmingHelper.StaticContent = StaticContent
280
281
282 HIGG1D1SlimmingHelper.IncludeTriggerNavigation = False
283 HIGG1D1SlimmingHelper.IncludeJetTriggerContent = False
284 HIGG1D1SlimmingHelper.IncludeMuonTriggerContent = False
285 HIGG1D1SlimmingHelper.IncludeEGammaTriggerContent = False
286 HIGG1D1SlimmingHelper.IncludeTauTriggerContent = False
287 HIGG1D1SlimmingHelper.IncludeEtMissTriggerContent = False
288 HIGG1D1SlimmingHelper.IncludeBJetTriggerContent = False
289 HIGG1D1SlimmingHelper.IncludeBPhysTriggerContent = False
290 HIGG1D1SlimmingHelper.IncludeMinBiasTriggerContent = False
291
292
293 if flags.Input.isMC:
294 HIGG1D1SlimmingHelper.AppendToDictionary = {
295 'TruthEvents':'xAOD::TruthEventContainer',
296 'TruthEventsAux':'xAOD::TruthEventAuxContainer',
297 'MET_Truth':'xAOD::MissingETContainer',
298 'MET_TruthAux':'xAOD::MissingETAuxContainer',
299 'TruthElectrons':'xAOD::TruthParticleContainer',
300 'TruthElectronsAux':'xAOD::TruthParticleAuxContainer',
301 'TruthMuons':'xAOD::TruthParticleContainer',
302 'TruthMuonsAux':'xAOD::TruthParticleAuxContainer',
303 'TruthPhotons':'xAOD::TruthParticleContainer',
304 'TruthPhotonsAux':'xAOD::TruthParticleAuxContainer',
305 'TruthTaus':'xAOD::TruthParticleContainer',
306 'TruthTausAux':'xAOD::TruthParticleAuxContainer',
307 'TruthNeutrinos':'xAOD::TruthParticleContainer',
308 'TruthNeutrinosAux':'xAOD::TruthParticleAuxContainer',
309 'TruthBSM':'xAOD::TruthParticleContainer',
310 'TruthBSMAux':'xAOD::TruthParticleAuxContainer',
311 'TruthBoson':'xAOD::TruthParticleContainer',
312 'TruthBosonAux':'xAOD::TruthParticleAuxContainer',
313 'TruthTop':'xAOD::TruthParticleContainer',
314 'TruthTopAux':'xAOD::TruthParticleAuxContainer',
315 'TruthForwardProtons':'xAOD::TruthParticleContainer',
316 'TruthForwardProtonsAux':'xAOD::TruthParticleAuxContainer',
317 'BornLeptons':'xAOD::TruthParticleContainer',
318 'BornLeptonsAux':'xAOD::TruthParticleAuxContainer',
319 'TruthBosonsWithDecayParticles':'xAOD::TruthParticleContainer',
320 'TruthBosonsWithDecayParticlesAux':'xAOD::TruthParticleAuxContainer',
321 'TruthBosonsWithDecayVertices':'xAOD::TruthVertexContainer',
322 'TruthBosonsWithDecayVerticesAux':'xAOD::TruthVertexAuxContainer',
323 'TruthBSMWithDecayParticles':'xAOD::TruthParticleContainer',
324 'TruthBSMWithDecayParticlesAux':'xAOD::TruthParticleAuxContainer',
325 'TruthBSMWithDecayVertices':'xAOD::TruthVertexContainer',
326 'TruthBSMWithDecayVerticesAux':'xAOD::TruthVertexAuxContainer',
327 'TruthHFWithDecayParticles':'xAOD::TruthParticleContainer',
328 'TruthHFWithDecayParticlesAux':'xAOD::TruthParticleAuxContainer',
329 'TruthHFWithDecayVertices':'xAOD::TruthVertexContainer',
330 'TruthHFWithDecayVerticesAux':'xAOD::TruthVertexAuxContainer',
331 'TruthCharm':'xAOD::TruthParticleContainer',
332 'TruthCharmAux':'xAOD::TruthParticleAuxContainer',
333 'TruthPrimaryVertices':'xAOD::TruthVertexContainer',
334 'TruthPrimaryVerticesAux':'xAOD::TruthVertexAuxContainer'
335 }
336
337 from DerivationFrameworkMCTruth.MCTruthCommonConfig import addTruth3ContentToSlimmerTool
338 addTruth3ContentToSlimmerTool(HIGG1D1SlimmingHelper)
339 HIGG1D1SlimmingHelper.AllVariables += ["TruthHFWithDecayParticles",
340 "TruthHFWithDecayVertices",
341 "TruthCharm",
342 "TruthPileupParticles",
343 "InTimeAntiKt4TruthJets",
344 "OutOfTimeAntiKt4TruthJets",
345 "AntiKt4TruthDressedWZJets",
346 "AntiKt4TruthWZJets",
347 "TruthEvents",
348 "TruthPrimaryVertices",
349 "TruthVertices",
350 "TruthParticles"]
351
352 HIGG1D1SlimmingHelper.ExtraVariables += ["Electrons.TruthLink",
353 "Muons.TruthLink",
354 "Photons.TruthLink",
355 "AntiKt4EMTopoJets.ConeExclBHadronsFinal.ConeExclCHadronsFinal.GhostBHadronsFinal.GhostCHadronsFinal.GhostBHadronsFinalCount.GhostBHadronsFinalPt.GhostCHadronsFinalCount.GhostCHadronsFinalPt",
356 "AntiKt4EMPFlowJets.ConeExclBHadronsFinal.ConeExclCHadronsFinal.GhostBHadronsFinal.GhostCHadronsFinal.GhostBHadronsFinalCount.GhostBHadronsFinalPt.GhostCHadronsFinalCount.GhostCHadronsFinalPt",
357 "TruthPrimaryVertices.t.x.y.z",
358 "EventInfo.DFCommonJetsCustomVtx_eventClean_LooseBad.DFCommonJetsCustomVtx_eventClean_TightBad.hardScatterVertexLink.timeStampNSOffset",
359 "TauJets.dRmax.etOverPtLeadTrk"]
360 if flags.Reco.EnableTrigger:
361 HIGG1D1SlimmingHelper.ExtraVariables += [
362 "HLT_xAOD__TrigMissingETContainer_TrigEFMissingET.ex.ey",
363 "HLT_xAOD__TrigMissingETContainer_TrigEFMissingET_mht.ex.ey"
364 ]
365
366
367 HIGG1D1SlimmingHelper.AppendToDictionary.update({
368 "AntiKt4EMPFlowCustomVtxJets": "xAOD::JetContainer",
369 "AntiKt4EMPFlowCustomVtxJetsAux":"xAOD::JetAuxContainer",
370 "METAssoc_AntiKt4EMPFlowCustomVtx": "xAOD::MissingETAssociationMap",
371 "METAssoc_AntiKt4EMPFlowCustomVtxAux":"xAOD::MissingETAuxAssociationMap",
372 "MET_Core_AntiKt4EMPFlowCustomVtx": "xAOD::MissingETContainer",
373 "MET_Core_AntiKt4EMPFlowCustomVtxAux":"xAOD::MissingETAuxContainer",
374 "HggPrimaryVertices":"xAOD::VertexContainer",
375 "HggPrimaryVerticesAux":"xAOD::ShallowAuxContainer",
376 "Kt4EMPFlowCustomVtxEventShape":"xAOD::EventShape",
377 "Kt4EMPFlowCustomVtxEventShapeAux":"xAOD::EventShapeAuxInfo",
378 "Kt4EMPFlowEventShape":"xAOD::EventShape",
379 "Kt4EMPFlowEventShapeAux":"xAOD::EventShapeAuxInfo",
380 "ZeeRefittedPrimaryVertices":"xAOD::VertexContainer",
381 "ZeeRefittedPrimaryVerticesAux":"xAOD::VertexAuxContainer",
382 "AFPSiHitContainer":"xAOD::AFPSiHitContainer",
383 "AFPSiHitContainerAux":"xAOD::AFPSiHitAuxContainer",
384 "AFPToFHitContainer":"xAOD::AFPToFHitContainer",
385 "AFPToFHitContainerAux":"xAOD::AFPToFHitAuxContainer",
386 "AFPVertexContainer":"xAOD::AFPVertexContainer",
387 "AFPVertexContainerAux":"xAOD::AFPVertexAuxContainer",
388 "AFPToFTrackContainer":"xAOD::AFPToFTrackContainer",
389 "AFPToFTrackContainerAux":"xAOD::AFPToFTrackAuxContainer",
390 })
391
392 HIGG1D1SlimmingHelper.AllVariables += [
393 "HggPrimaryVertices",
394 "ZeeRefittedPrimaryVertices",
395 "AntiKt4EMPFlowCustomVtxJets",
396 "Kt4EMPFlowCustomVtxEventShape",
397 "Kt4EMPFlowEventShape",
398 "METAssoc_AntiKt4EMPFlowCustomVtx",
399 "MET_Core_AntiKt4EMPFlowCustomVtx"
400 ]
401
402
403 HIGG1D1SlimmingHelper.AllVariables += ["AFPSiHitContainer",
404 "AFPToFHitContainer",
405 "AFPVertexContainer",
406 "AFPToFTrackContainer"]
407
408 from DerivationFrameworkFlavourTag.BTaggingContent import BTaggingStandardContent
409 HIGG1D1SlimmingHelper.ExtraVariables += BTaggingStandardContent(flags, "AntiKt4EMPFlowCustomVtxJets")
410 HIGG1D1SlimmingHelper.ExtraVariables += BTaggingStandardContent(flags, "AntiKt4EMPFlowJets")
411
412
413 from DerivationFrameworkEGamma.PhotonsCPDetailedContent import PhotonsCPDetailedContent
414 HIGG1D1SlimmingHelper.ExtraVariables += PhotonsCPDetailedContent
415
416
417
418 from DerivationFrameworkCalo.DerivationFrameworkCaloConfig import (
419 getGainDecorations, getClusterEnergyPerLayerDecorations )
420 gainDecorations = getGainDecorations(acc, flags, 'HIGG1D1Kernel')
421 HIGG1D1SlimmingHelper.ExtraVariables.extend(gainDecorations)
422 clusterEnergyDecorations = getClusterEnergyPerLayerDecorations(
423 acc, 'HIGG1D1Kernel' )
424 HIGG1D1SlimmingHelper.ExtraVariables.extend(clusterEnergyDecorations)
425
426
427 HIGG1D1SlimmingHelper.ExtraVariables.extend(["EventInfo.HTXS_prodMode",
428 "EventInfo.HTXS_errorCode",
429 "EventInfo.HTXS_Stage0_Category",
430 "EventInfo.HTXS_Stage1_Category_pTjet25",
431 "EventInfo.HTXS_Stage1_Category_pTjet30",
432 "EventInfo.HTXS_Stage1_FineIndex_pTjet30",
433 "EventInfo.HTXS_Stage1_FineIndex_pTjet25",
434 "EventInfo.HTXS_Stage1_2_Category_pTjet25",
435 "EventInfo.HTXS_Stage1_2_Category_pTjet30",
436 "EventInfo.HTXS_Stage1_2_FineIndex_pTjet30",
437 "EventInfo.HTXS_Stage1_2_FineIndex_pTjet25",
438 "EventInfo.HTXS_Stage1_2_Fine_Category_pTjet25",
439 "EventInfo.HTXS_Stage1_2_Fine_Category_pTjet30",
440 "EventInfo.HTXS_Stage1_2_Fine_FineIndex_pTjet30",
441 "EventInfo.HTXS_Stage1_2_Fine_FineIndex_pTjet25",
442 "EventInfo.HTXS_Njets_pTjet25",
443 "EventInfo.HTXS_Njets_pTjet30",
444 "EventInfo.HTXS_isZ2vvDecay",
445 "EventInfo.HTXS_Higgs_eta",
446 "EventInfo.HTXS_Higgs_m",
447 "EventInfo.HTXS_Higgs_phi",
448 "EventInfo.HTXS_Higgs_pt",
449 "EventInfo.HTXS_V_jets30_eta",
450 "EventInfo.HTXS_V_jets30_m",
451 "EventInfo.HTXS_V_jets30_phi",
452 "EventInfo.HTXS_V_jets30_pt",
453 "EventInfo.HTXS_V_pt"])
454
455
456 HIGG1D1SlimmingHelper.ExtraVariables.extend(["Electrons.maxEcell_time",
457 "Electrons.maxEcell_energy",
458 "Electrons.maxEcell_gain",
459 "Electrons.maxEcell_onlId",
460 "Photons.maxEcell_time",
461 "Photons.maxEcell_energy",
462 "Photons.maxEcell_gain",
463 "Photons.maxEcell_onlId",
464 "Photons.zvertex"])
465
466 HIGG1D1SlimmingHelper.ExtraVariables.extend(["InDetTrackParticles.TTVA_AMVFVertices.TTVA_AMVFWeights.TTVA_AMVFVertices_forReco.TTVA_AMVFWeights_forReco.TTVA_AMVFVertices_forHiggs.TTVA_AMVFWeights_forHiggs.eProbabilityHT.numberOfTRTHits.numberOfTRTOutliers"])
467
468
469 HIGG1D1SlimmingHelper.IncludeTriggerNavigation = False
470 HIGG1D1SlimmingHelper.IncludeJetTriggerContent = False
471 HIGG1D1SlimmingHelper.IncludeMuonTriggerContent = False
472 HIGG1D1SlimmingHelper.IncludeEGammaTriggerContent = False
473 HIGG1D1SlimmingHelper.IncludeTauTriggerContent = False
474 HIGG1D1SlimmingHelper.IncludeEtMissTriggerContent = False
475 HIGG1D1SlimmingHelper.IncludeBJetTriggerContent = False
476 HIGG1D1SlimmingHelper.IncludeBPhysTriggerContent = False
477 HIGG1D1SlimmingHelper.IncludeMinBiasTriggerContent = False
478
479
480
481 if flags.Trigger.EDMVersion == 2:
482 from DerivationFrameworkPhys.TriggerMatchingCommonConfig import AddRun2TriggerMatchingToSlimmingHelper
483 AddRun2TriggerMatchingToSlimmingHelper(SlimmingHelper = HIGG1D1SlimmingHelper,
484 OutputContainerPrefix = "TrigMatch_",
485 TriggerList = HIGG1D1TriggerListsHelper.Run2TriggerNamesTau)
486 AddRun2TriggerMatchingToSlimmingHelper(SlimmingHelper = HIGG1D1SlimmingHelper,
487 OutputContainerPrefix = "TrigMatch_",
488 TriggerList = HIGG1D1TriggerListsHelper.Run2TriggerNamesNoTau)
489
490 if flags.Trigger.EDMVersion == 3 or (flags.Trigger.EDMVersion == 2 and flags.Trigger.doEDMVersionConversion):
491 from TrigNavSlimmingMT.TrigNavSlimmingMTConfig import AddRun3TrigNavSlimmingCollectionsToSlimmingHelper
492 AddRun3TrigNavSlimmingCollectionsToSlimmingHelper(HIGG1D1SlimmingHelper)
493
494
495 HIGG1D1ItemList = HIGG1D1SlimmingHelper.GetItemList()
496 acc.merge(OutputStreamCfg(flags, "DAOD_HIGG1D1", ItemList=HIGG1D1ItemList, AcceptAlgs=["HIGG1D1Kernel"]))
497 acc.merge(SetupMetaDataForStreamCfg(flags, "DAOD_HIGG1D1", AcceptAlgs=["HIGG1D1Kernel"], createMetadata=[MetadataCategory.CutFlowMetaData, MetadataCategory.TruthMetaData]))
498
499 return acc