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