ATLAS Offline Software
Loading...
Searching...
No Matches
METAssocCfg.METAssocConfig Class Reference

Top level MET configuration. More...

Collaboration diagram for METAssocCfg.METAssocConfig:

Public Member Functions

 outputCollections (self)
 outputMap (self)
 setupAssociators (self, configFlags, buildconfigs)
 __init__ (self, suffix, inputFlags, buildconfigs=[], doPFlow=False, doRecoil=False, doTruth=False, usePFOLinks=False, trksel=None, modConstKey="", modClusColls={})

Public Attributes

return+self.suffix doTruth
 suffix
dict associators
 accumulator = ComponentAccumulator()
 doPFlow = doPFlow
 doRecoil = doRecoil
 useFELinks = usePFOLinks
 modConstKey = modConstKey_tmp
 modClusColls = modClusColls_tmp
 trkseltool = trksel
 trkisotool = CompFactory.getComp("xAOD::TrackIsolationTool")("TrackIsolationTool_MET")
 caloisotool
list assoclist = []

Detailed Description

Top level MET configuration.

Definition at line 120 of file METAssocCfg.py.

Constructor & Destructor Documentation

◆ __init__()

METAssocCfg.METAssocConfig.__init__ ( self,
suffix,
inputFlags,
buildconfigs = [],
doPFlow = False,
doRecoil = False,
doTruth = False,
usePFOLinks = False,
trksel = None,
modConstKey = "",
modClusColls = {} )

Definition at line 148 of file METAssocCfg.py.

154 ):
155 self.accumulator = ComponentAccumulator()
156 # Set some sensible defaults
157 modConstKey_tmp = modConstKey
158 modClusColls_tmp = modClusColls
159 if doPFlow:
160 # Ideally this should not be hardcoded but linked to the JetDefinition with which this MET is built
161 # TODO : in new config, if possible use something like: jetdef.inputdef.containername
162 if modConstKey_tmp == "": modConstKey_tmp = "CHSGParticleFlowObjects"
163 else:
164 if modConstKey_tmp == "": modConstKey_tmp = "OriginCorr"
165 if modClusColls_tmp == {}: modClusColls_tmp = {'LCOriginCorrClusters':'LCOriginTopoClusters',
166 'EMOriginCorrClusters':'EMOriginTopoClusters'}
167 if doTruth:
168 metlog.info("{} Creating MET TruthAssoc config {}".format(prefix,suffix))
169 else:
170 metlog.info("{} Creating MET Assoc config {}".format(prefix,suffix))
171 self.suffix = suffix
172 self.doPFlow = doPFlow
173 self.doRecoil = doRecoil
174 self.useFELinks = usePFOLinks
175 self.modConstKey=modConstKey_tmp
176 self.modClusColls=modClusColls_tmp
177 self.doTruth = doTruth
178 if trksel:
179 self.trkseltool = trksel
180 else:
181 # TODO: These Z0 and D0 cuts are left over from R21. The track vertex association can now use looser ones.
182 # To be investigated and possibly updated by the MET group.
183 self.trkseltool=CompFactory.getComp("InDet::InDetTrackSelectionTool")("IDTrkSel_METAssoc",
184 CutLevel="TightPrimary",
185 maxZ0SinTheta=3,
186 maxD0=2,
187 minPt=500)
188
189 self.trkisotool = CompFactory.getComp("xAOD::TrackIsolationTool")("TrackIsolationTool_MET")
190 self.trkisotool.TrackSelectionTool = self.trkseltool # As configured above
191 from TrkConfig.AtlasExtrapolatorConfig import AtlasExtrapolatorCfg
192 extrapCfg = AtlasExtrapolatorCfg(inputFlags)
193 CaloExtensionTool= CompFactory.getComp("Trk::ParticleCaloExtensionTool")(Extrapolator = self.accumulator.popToolsAndMerge(extrapCfg))
194 CaloCellAssocTool = CompFactory.getComp("Rec::ParticleCaloCellAssociationTool")(ParticleCaloExtensionTool = CaloExtensionTool)
195 self.caloisotool = CompFactory.getComp("xAOD::CaloIsolationTool")("CaloIsolationTool_MET",
196 saveOnlyRequestedCorrections=True,
197 ParticleCaloExtensionTool = CaloExtensionTool,
198 ParticleCaloCellAssociationTool = CaloCellAssocTool)
199 self.associators = {}
200 self.assoclist = [] # need an ordered list
201 #
202 self.setupAssociators(inputFlags, buildconfigs)
203
204# Set up a top-level tool with mostly defaults

Member Function Documentation

◆ outputCollections()

METAssocCfg.METAssocConfig.outputCollections ( self)

Definition at line 121 of file METAssocCfg.py.

121 def outputCollections(self):
122 if self.doTruth: return 'MET_Core_'+self.suffix
123 else: return 'MET_Core_'+self.suffix,'MET_Reference_'+self.suffix

◆ outputMap()

METAssocCfg.METAssocConfig.outputMap ( self)

Definition at line 125 of file METAssocCfg.py.

125 def outputMap(self):
126 return 'METAssoc_'+self.suffix

◆ setupAssociators()

METAssocCfg.METAssocConfig.setupAssociators ( self,
configFlags,
buildconfigs )

Definition at line 128 of file METAssocCfg.py.

128 def setupAssociators(self, configFlags, buildconfigs):
129 metlog.info("{} Setting up associators for MET config {}".format(prefix,self.suffix))
130 for config in buildconfigs:
131 if config.objType in self.associators:
132 metlog.error("{} Config {} already contains a associator of type {}".format(prefix,self.suffix,config.objType))
133 raise LookupError
134 else:
135 associator = getAssociator(configFlags, config=config,suffix=self.suffix,
136 doPFlow=self.doPFlow,
137 doRecoil=self.doRecoil,
138 useFELinks=self.useFELinks,
139 trkseltool=self.trkseltool,
140 trkisotool=self.trkisotool,
141 caloisotool=self.caloisotool,
142 modConstKey=self.modConstKey,
143 modClusColls=self.modClusColls)
144 self.associators[config.objType] = associator
145 self.assoclist.append(associator)
146 metlog.info("{} Added {} tool named {}".format(prefix,config.objType,associator.name))

Member Data Documentation

◆ accumulator

METAssocCfg.METAssocConfig.accumulator = ComponentAccumulator()

Definition at line 155 of file METAssocCfg.py.

◆ associators

dict METAssocCfg.METAssocConfig.associators

Definition at line 131 of file METAssocCfg.py.

◆ assoclist

list METAssocCfg.METAssocConfig.assoclist = []

Definition at line 200 of file METAssocCfg.py.

◆ caloisotool

METAssocCfg.METAssocConfig.caloisotool
Initial value:
= CompFactory.getComp("xAOD::CaloIsolationTool")("CaloIsolationTool_MET",
saveOnlyRequestedCorrections=True,
ParticleCaloExtensionTool = CaloExtensionTool,
ParticleCaloCellAssociationTool = CaloCellAssocTool)

Definition at line 195 of file METAssocCfg.py.

◆ doPFlow

METAssocCfg.METAssocConfig.doPFlow = doPFlow

Definition at line 172 of file METAssocCfg.py.

◆ doRecoil

METAssocCfg.METAssocConfig.doRecoil = doRecoil

Definition at line 173 of file METAssocCfg.py.

◆ doTruth

return +self.suffix METAssocCfg.METAssocConfig.doTruth

Definition at line 122 of file METAssocCfg.py.

◆ modClusColls

METAssocCfg.METAssocConfig.modClusColls = modClusColls_tmp

Definition at line 176 of file METAssocCfg.py.

◆ modConstKey

METAssocCfg.METAssocConfig.modConstKey = modConstKey_tmp

Definition at line 175 of file METAssocCfg.py.

◆ suffix

METAssocCfg.METAssocConfig.suffix

Definition at line 123 of file METAssocCfg.py.

◆ trkisotool

METAssocCfg.METAssocConfig.trkisotool = CompFactory.getComp("xAOD::TrackIsolationTool")("TrackIsolationTool_MET")

Definition at line 189 of file METAssocCfg.py.

◆ trkseltool

METAssocCfg.METAssocConfig.trkseltool = trksel

Definition at line 179 of file METAssocCfg.py.

◆ useFELinks

METAssocCfg.METAssocConfig.useFELinks = usePFOLinks

Definition at line 174 of file METAssocCfg.py.


The documentation for this class was generated from the following file: