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 135 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 163 of file METAssocCfg.py.

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

Member Function Documentation

◆ outputCollections()

METAssocCfg.METAssocConfig.outputCollections ( self)

Definition at line 136 of file METAssocCfg.py.

136 def outputCollections(self):
137 if self.doTruth: return 'MET_Core_'+self.suffix
138 else: return 'MET_Core_'+self.suffix,'MET_Reference_'+self.suffix

◆ outputMap()

METAssocCfg.METAssocConfig.outputMap ( self)

Definition at line 140 of file METAssocCfg.py.

140 def outputMap(self):
141 return 'METAssoc_'+self.suffix

◆ setupAssociators()

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

Definition at line 143 of file METAssocCfg.py.

143 def setupAssociators(self, configFlags, buildconfigs):
144 metlog.info("{} Setting up associators for MET config {}".format(prefix,self.suffix))
145 for config in buildconfigs:
146 if config.objType in self.associators:
147 metlog.error("{} Config {} already contains a associator of type {}".format(prefix,self.suffix,config.objType))
148 raise LookupError
149 else:
150 associator = getAssociator(configFlags, config=config,suffix=self.suffix,
151 doPFlow=self.doPFlow,
152 doRecoil=self.doRecoil,
153 useFELinks=self.useFELinks,
154 trkseltool=self.trkseltool,
155 trkisotool=self.trkisotool,
156 caloisotool=self.caloisotool,
157 modConstKey=self.modConstKey,
158 modClusColls=self.modClusColls)
159 self.associators[config.objType] = associator
160 self.assoclist.append(associator)
161 metlog.info("{} Added {} tool named {}".format(prefix,config.objType,associator.name))

Member Data Documentation

◆ accumulator

METAssocCfg.METAssocConfig.accumulator = ComponentAccumulator()

Definition at line 170 of file METAssocCfg.py.

◆ associators

dict METAssocCfg.METAssocConfig.associators

Definition at line 146 of file METAssocCfg.py.

◆ assoclist

list METAssocCfg.METAssocConfig.assoclist = []

Definition at line 215 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 210 of file METAssocCfg.py.

◆ doPFlow

METAssocCfg.METAssocConfig.doPFlow = doPFlow

Definition at line 187 of file METAssocCfg.py.

◆ doRecoil

METAssocCfg.METAssocConfig.doRecoil = doRecoil

Definition at line 188 of file METAssocCfg.py.

◆ doTruth

return +self.suffix METAssocCfg.METAssocConfig.doTruth

Definition at line 137 of file METAssocCfg.py.

◆ modClusColls

METAssocCfg.METAssocConfig.modClusColls = modClusColls_tmp

Definition at line 191 of file METAssocCfg.py.

◆ modConstKey

METAssocCfg.METAssocConfig.modConstKey = modConstKey_tmp

Definition at line 190 of file METAssocCfg.py.

◆ suffix

METAssocCfg.METAssocConfig.suffix

Definition at line 138 of file METAssocCfg.py.

◆ trkisotool

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

Definition at line 204 of file METAssocCfg.py.

◆ trkseltool

METAssocCfg.METAssocConfig.trkseltool = trksel

Definition at line 194 of file METAssocCfg.py.

◆ useFELinks

METAssocCfg.METAssocConfig.useFELinks = usePFOLinks

Definition at line 189 of file METAssocCfg.py.


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