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