ATLAS Offline Software
configureRecoForPFlow.py
Go to the documentation of this file.
1 # Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
2 
4 
5  from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator
7 
8  from AthenaConfiguration.Enums import MetadataCategory
9  from xAODMetaDataCnv.InfileMetaDataConfig import SetupMetaDataForStreamCfg
10 
11  cfg.merge(
13  cfgFlags,
14  "AOD",
15  createMetadata=[
16  MetadataCategory.ByteStreamMetaData,
17  MetadataCategory.LumiBlockMetaData,
18  MetadataCategory.TruthMetaData,
19  MetadataCategory.IOVMetaData,
20  ],
21  )
22  )
23 
24  return cfg
25 
27 
28  #Given we rebuild topoclusters from the ESD, we should also redo the matching between topoclusters and muon clusters.
29  #The resulting links are used to create the global GPF muon-FE links.
30  from AthenaConfiguration.ComponentFactory import CompFactory
31  from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator
32  cfg = ComponentAccumulator()
33  cfg.addEventAlgo(CompFactory.ClusterMatching.CaloClusterMatchLinkAlg("MuonTCLinks", ClustersToDecorate="MuonClusterCollection"))
34 
35  from JetRecConfig.JetRecConfig import JetRecCfg
36  from JetRecConfig.StandardSmallRJets import AntiKt4EMPFlow, AntiKt4LCTopo
37  cfg.merge( JetRecCfg(cfgFlags,AntiKt4EMPFlow) )
38  cfg.merge( JetRecCfg(cfgFlags,AntiKt4LCTopo) )
39 
40  #Now do MET config
41 
42  #The MET soft term needs the EM and LC origin topoclusters.
43  #Since we rebuilt the topoclusters, we must also rebuild these.
44  from JetRecConfig.JetRecConfig import JetInputCfg
45  from JetRecConfig.StandardJetConstits import stdConstitDic as cst
46  cfg.merge(JetInputCfg(cfgFlags,cst.EMTopoOrigin))
47  cfg.merge(JetInputCfg(cfgFlags,cst.LCTopoOrigin))
48 
49  from eflowRec.PFCfg import PFGlobalFlowElementLinkingCfg
50  cfg.merge(PFGlobalFlowElementLinkingCfg(cfgFlags))
51 
52  from tauRec.TauConfig import TauReconstructionCfg
53  cfg.merge(TauReconstructionCfg(cfgFlags))
54 
55  from eflowRec.PFTauRemaps import PFTauRemaps
56  tauRemaps = PFTauRemaps()
57  for mapping in tauRemaps:
58  cfg.merge(mapping)
59 
60  #Now build the pflow MET association map and then add the METMaker algorithm
61  from METReconstruction.METAssociatorCfg import METAssociatorCfg
62  cfg.merge(METAssociatorCfg(cfgFlags, 'AntiKt4EMPFlow'))
63 
64  from METUtilities.METMakerConfig import getMETMakerAlg
65  metCA=ComponentAccumulator()
66  metCA.addEventAlgo(getMETMakerAlg('AntiKt4EMPFlow'))
67  cfg.merge(metCA)
68 
69  #This is needed to ensure the convertor is correctly configured for each LHC period
70  #Otherwise a default convertor is provided that is not correctly configured for e.g Run4
71  from TrkEventCnvTools.TrkEventCnvToolsConfig import TrkEventCnvSuperToolCfg
72  cfg.merge(TrkEventCnvSuperToolCfg(cfgFlags))
73 
74  #Add metadata data to xAOD such that we can run workflows such as creating physval.root
75  # from the output AOD or making ntuples from the output AOD
76  cfg.merge( configureMetaDataForPFlowCfg(cfgFlags) )
77 
78  return cfg
79 
configureRecoForPFlow.configureRecoForPFlowCfg
def configureRecoForPFlowCfg(cfgFlags)
Definition: configureRecoForPFlow.py:26
python.JetAnalysisCommon.ComponentAccumulator
ComponentAccumulator
Definition: JetAnalysisCommon.py:302
METMakerConfig.getMETMakerAlg
def getMETMakerAlg(suffix, jetSelection="Tier0", jetColl="")
Definition: METMakerConfig.py:60
METAssociatorCfg
Definition: METAssociatorCfg.py:1
python.TrkEventCnvToolsConfig.TrkEventCnvSuperToolCfg
def TrkEventCnvSuperToolCfg(flags, name='EventCnvSuperTool', **kwargs)
Definition: TrkEventCnvToolsConfig.py:51
TauConfig.TauReconstructionCfg
def TauReconstructionCfg(flags)
Definition: TauConfig.py:261
python.JetRecConfig.JetRecCfg
def JetRecCfg(flags, jetdef, returnConfiguredDef=False)
Top level functions returning ComponentAccumulator out of JetDefinition.
Definition: JetRecConfig.py:36
configureRecoForPFlow.configureMetaDataForPFlowCfg
def configureMetaDataForPFlowCfg(cfgFlags)
Definition: configureRecoForPFlow.py:3
PFTauRemaps
Definition: PFTauRemaps.py:1
InfileMetaDataConfig.SetupMetaDataForStreamCfg
def SetupMetaDataForStreamCfg(flags, streamName="", AcceptAlgs=None, createMetadata=None, propagateMetadataFromInput=True, *args, **kwargs)
Definition: InfileMetaDataConfig.py:222
JetRecAlgTestCfg.JetInputCfg
def JetInputCfg(flags)
Definition: JetRecAlgTestCfg.py:44
PFCfg.PFGlobalFlowElementLinkingCfg
def PFGlobalFlowElementLinkingCfg(inputFlags, **kwargs)
Definition: PFCfg.py:472