ATLAS Offline Software
Loading...
Searching...
No Matches
TRUTH1.py
Go to the documentation of this file.
1# Copyright (C) 2002-2026 CERN for the benefit of the ATLAS collaboration
2# TRUTH1.py - format containing extended common ATLAS truth record
3
4from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator
5from AthenaConfiguration.Enums import MetadataCategory
6
7def TRUTH1Cfg(flags):
8 """Main config for TRUTH1"""
9 acc = ComponentAccumulator()
10
11 # Add translator from EVGEN input to xAOD-like truth
12 # Add the truth content of DAOD_PHYS, as in TRUTH3
13 from DerivationFrameworkMCTruth.MCTruthCommonConfig import AddTruthDerivationContentsCfg
14 acc.merge(AddTruthDerivationContentsCfg(flags))
15
16 #==============================================================================
17 # HEAVY FLAVOR DECORATIONS (ttbar)
18 #==============================================================================
19 from DerivationFrameworkMCTruth.HFHadronsCommonConfig import HFHadronsCommonCfg
20 acc.merge(HFHadronsCommonCfg(flags))
21
22 #==============================================================================
23 # Set up slimming content list
24 #==============================================================================
25 from DerivationFrameworkCore.SlimmingHelper import SlimmingHelper
26 TRUTH1SlimmingHelper = SlimmingHelper("TRUTH1SlimmingHelper", NamesAndTypes = flags.Input.TypedCollections, flags = flags)
27 TRUTH1SlimmingHelper.AppendToDictionary = {'EventInfo':'xAOD::EventInfo','EventInfoAux':'xAOD::EventAuxInfo',
28 'TruthEvents':'xAOD::TruthEventContainer','TruthEventsAux':'xAOD::TruthEventAuxContainer',
29 'TruthVertices':'xAOD::TruthVertexContainer','TruthVerticesAux':'xAOD::TruthVertexAuxContainer',
30 'TruthParticles':'xAOD::TruthParticleContainer','TruthParticlesAux':'xAOD::TruthParticleAuxContainer',
31 'TruthLHEParticles':'xAOD::TruthParticleContainer', 'TruthLHEParticlesAux':'xAOD::TruthParticleAuxContainer',
32 'MET_Truth':'xAOD::MissingETContainer','MET_TruthAux':'xAOD::MissingETAuxContainer',
33 'TruthElectrons':'xAOD::TruthParticleContainer','TruthElectronsAux':'xAOD::TruthParticleAuxContainer',
34 'TruthMuons':'xAOD::TruthParticleContainer','TruthMuonsAux':'xAOD::TruthParticleAuxContainer',
35 'TruthPhotons':'xAOD::TruthParticleContainer','TruthPhotonsAux':'xAOD::TruthParticleAuxContainer',
36 'TruthTaus':'xAOD::TruthParticleContainer','TruthTausAux':'xAOD::TruthParticleAuxContainer',
37 'TruthNeutrinos':'xAOD::TruthParticleContainer','TruthNeutrinosAux':'xAOD::TruthParticleAuxContainer',
38 'TruthBSM':'xAOD::TruthParticleContainer','TruthBSMAux':'xAOD::TruthParticleAuxContainer',
39 'TruthBoson':'xAOD::TruthParticleContainer','TruthBosonAux':'xAOD::TruthParticleAuxContainer',
40 'TruthBottom':'xAOD::TruthParticleContainer','TruthBottomAux':'xAOD::TruthParticleAuxContainer',
41 'TruthTop':'xAOD::TruthParticleContainer','TruthTopAux':'xAOD::TruthParticleAuxContainer',
42 'TruthForwardProtons':'xAOD::TruthParticleContainer','TruthForwardProtonsAux':'xAOD::TruthParticleAuxContainer',
43 'BornLeptons':'xAOD::TruthParticleContainer','BornLeptonsAux':'xAOD::TruthParticleAuxContainer',
44 'TruthBosonsWithDecayParticles':'xAOD::TruthParticleContainer','TruthBosonsWithDecayParticlesAux':'xAOD::TruthParticleAuxContainer',
45 'TruthBosonsWithDecayVertices':'xAOD::TruthVertexContainer','TruthBosonsWithDecayVerticesAux':'xAOD::TruthVertexAuxContainer',
46 'TruthBSMWithDecayParticles':'xAOD::TruthParticleContainer','TruthBSMWithDecayParticlesAux':'xAOD::TruthParticleAuxContainer',
47 'TruthBSMWithDecayVertices':'xAOD::TruthVertexContainer','TruthBSMWithDecayVerticesAux':'xAOD::TruthVertexAuxContainer',
48 'AntiKtVR30Rmax4Rmin02TruthChargedJets':'xAOD::JetContainer','AntiKtVR30Rmax4Rmin02TruthChargedJetsAux':'xAOD::JetAuxContainer',
49 'AntiKt4TruthDressedWZJets':'xAOD::JetContainer','AntiKt4TruthDressedWZJetsAux':'xAOD::JetAuxContainer',
50 'AntiKt10TruthJets':'xAOD::JetContainer','AntiKt10TruthJetsAux':'xAOD::JetAuxContainer',
51 'TruthLabelBHadronsFinal':'xAOD::TruthParticleContainer', 'TruthLabelBHadronsInitial':'xAOD::TruthParticleContainer',
52 'TruthLabelTQuarksFinal':'xAOD::TruthParticleContainer', 'TruthLabelBQuarksFinal':'xAOD::TruthParticleContainer', 'TruthLabelCQuarksFinal':'xAOD::TruthParticleContainer',
53 'TruthLabelCHadronsFinal':'xAOD::TruthParticleContainer', 'TruthLabelCHadronsInitial':'xAOD::TruthParticleContainer',
54 'TruthLabelHBosons':'xAOD::TruthParticleContainer', 'TruthLabelWBosons':'xAOD::TruthParticleContainer', 'TruthLabelZBosons':'xAOD::TruthParticleContainer',
55 'TruthLabelPartons':'xAOD::TruthParticleContainer', 'TruthLabelTausFinal':'xAOD::TruthParticleContainer'
56 }
57 # Custom all variables -- won't be overridden by the call below, just added to. Full lists for completeness.
58 TRUTH1SlimmingHelper.AllVariables = [ 'EventInfo',
59 'TruthEvents',
60 'TruthVertices',
61 'TruthParticles',
62 'TruthLHEParticles',
63 'TruthLabelBHadronsFinal',
64 'TruthLabelBHadronsInitial',
65 'TruthLabelBQuarksFinal',
66 'TruthLabelCHadronsFinal',
67 'TruthLabelCHadronsInitial',
68 'TruthLabelCQuarksFinal',
69 'TruthLabelHBosons',
70 'TruthLabelPartons',
71 'TruthLabelTQuarksFinal',
72 'TruthLabelTausFinal',
73 'TruthLabelWBosons',
74 'TruthLabelZBosons',
75 'TruthTausWithDecayParticles',
76 'TruthTausWithDecayVertices']
77 # Custom extra variables -- won't be overridden by the call below, just added to. Full lists for completeness.
78 TRUTH1SlimmingHelper.ExtraVariables = ["AntiKtVR30Rmax4Rmin02TruthChargedJets.GhostHBosonsCount.GhostHBosonsPt.GhostBHadronsFinalCount.GhostBHadronsFinalPt.GhostCHadronsFinalCount.HadronConeExclTruthLabelID.PartonTruthLabelID.ConeExclBHadronsFinal.ConeExclCHadronsFinal.ConeExclTausFinal.constituentLinks",
79 "AntiKt4TruthDressedWZJets.GhostCHadronsFinalCount.GhostBHadronsFinalCount.pt.HadronConeExclTruthLabelID.PartonTruthLabelID.ConeExclBHadronsFinal.ConeExclCHadronsFinal.ConeExclTausFinal.constituentLinks"]
80
81 # Add standard content
82 from DerivationFrameworkMCTruth.MCTruthCommonConfig import addPhysTruthContentToSlimmerTool
83 addPhysTruthContentToSlimmerTool(TRUTH1SlimmingHelper)
84
85 # Generate item list and create stream
86 from OutputStreamAthenaPool.OutputStreamConfig import OutputStreamCfg
87 from xAODMetaDataCnv.InfileMetaDataConfig import SetupMetaDataForStreamCfg
88 TRUTH1ItemList = TRUTH1SlimmingHelper.GetItemList()
89 acc.merge(OutputStreamCfg(flags, "DAOD_TRUTH1", ItemList=TRUTH1ItemList))
90 acc.merge(SetupMetaDataForStreamCfg(flags, "DAOD_TRUTH1", createMetadata=[MetadataCategory.CutFlowMetaData, MetadataCategory.TruthMetaData]))
91
92 return acc
TRUTH1Cfg(flags)
Definition TRUTH1.py:7