Loading [MathJax]/extensions/tex2jax.js
ATLAS Offline Software
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
MuonCombinedRecToolsConfig.py
Go to the documentation of this file.
1 # Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
2 
3 # Defines the shared tools used in muon identification
4 # Based on :
5 # https://gitlab.cern.ch/atlas/athena/blob/release/22.0.8/Reconstruction/MuonIdentification/MuonCombinedRecExample/python/MuonCombinedTools.py
6 from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator
7 from AthenaConfiguration.ComponentFactory import CompFactory
8 from AthenaConfiguration.Enums import BeamType
9 from AthenaConfiguration.AccumulatorCache import AccumulatorCache
10 from TrkConfig.AtlasExtrapolatorConfig import AtlasExtrapolatorCfg
11 from MuonConfig.MuonRecToolsConfig import MuonEDMPrinterToolCfg
12 from MuonConfig.MuonTrackBuildingConfig import MuonSegmentRegionRecoveryToolCfg
13 
14 from TrkConfig.AtlasExtrapolatorToolsConfig import AtlasEnergyLossUpdatorCfg
15 from AthenaCommon.SystemOfUnits import GeV, mm
16 
17 
18 def InDetCandidateToolCfg(flags, name="InDetCandidateTool", **kwargs):
19  from InDetConfig.InDetTrackSelectorToolConfig import MuonCombinedInDetDetailedTrackSelectorToolCfg
21  kwargs.setdefault("TrackSelector", result.popPrivateTools())
22  result.setPrivateTools(
23  CompFactory.MuonCombined.InDetCandidateTool(name, **kwargs))
24  return result
25 
26 
27 def MuonInDetForwardCandidateToolCfg(flags, name='InDetForwardCandidateTool', **kwargs):
28  from InDetConfig.InDetTrackSelectorToolConfig import MuonCombinedInDetDetailedForwardTrackSelectorToolCfg
30  kwargs.setdefault("TrackSelector", result.popPrivateTools())
31  kwargs.setdefault("FlagCandidatesAsSiAssociated", True)
32  result.setPrivateTools(result.popToolsAndMerge(
33  InDetCandidateToolCfg(flags, name, **kwargs)))
34  return result # FIXME - is this and the above, actually used?
35 
36 
37 def MuonCaloEnergyToolCfg(flags, name="MuonCaloEnergyTool", **kwargs):
38  from TrackToCalo.TrackToCaloConfig import ParticleCaloCellAssociationToolCfg, ParticleCaloExtensionToolCfg
39 
41  flags, name='MuonParticleCaloExtensionTool')
42  particle_calo_extension_tool = result.getPrimary()
43 
44  particle_calo_cell_association_tool = result.popToolsAndMerge(
45  ParticleCaloCellAssociationToolCfg(flags, name='MuonCaloCellAssociationTool', ParticleCaloExtensionTool=particle_calo_extension_tool))
46 
47  from TrkConfig.TrkParticleCreatorConfig import MuonCaloParticleCreatorCfg
48  track_particle_creator = result.popToolsAndMerge(
50 
51  muonCaloEnergyTool = CompFactory.Rec.MuonCaloEnergyTool(name, ParticleCaloExtensionTool=particle_calo_extension_tool,
52  ParticleCaloCellAssociationTool=particle_calo_cell_association_tool,
53  TrackParticleCreator=track_particle_creator)
54  result.setPrivateTools(muonCaloEnergyTool)
55  return result
56 
57 
58 def MuonMaterialProviderToolCfg(flags, name="MuonTrkMaterialProviderTool", **kwargs):
59  from TrackingGeometryCondAlg.AtlasTrackingGeometryCondAlgConfig import TrackingGeometryCondAlgCfg
60  from TrkConfig.AtlasExtrapolatorToolsConfig import AtlasMultipleScatteringUpdatorCfg
61 
62  result = AtlasExtrapolatorCfg(flags)
63  atlas_extrapolator = result.popPrivateTools()
64  kwargs.setdefault("Extrapolator", atlas_extrapolator)
65  result.addPublicTool(atlas_extrapolator)
66  kwargs.setdefault("MuonCaloEnergyTool", result.popToolsAndMerge(
67  MuonCaloEnergyToolCfg(flags, name="MuonCaloEnergyTool")))
68 
69  # MuonCaloEnergyTool is actually a private tool
70  calo_meas_tool = result.popToolsAndMerge(MuidCaloEnergyMeasCfg(flags))
71  kwargs.setdefault("CaloMeasTool", calo_meas_tool)
72  result.addPublicTool(calo_meas_tool)
73 
74  calo_param_tool = MuidCaloEnergyParam(flags)
75  kwargs.setdefault("CaloParamTool", calo_param_tool)
76  result.addPublicTool(calo_param_tool)
77 
78  multiple_scattering_tool = result.popToolsAndMerge(
80  kwargs.setdefault("MultipleScatteringTool", multiple_scattering_tool)
81  result.addPublicTool(multiple_scattering_tool)
82 
83  useCaloEnergyMeas = True
84  if flags.Muon.MuonTrigger:
85  useCaloEnergyMeas = False
86  kwargs.setdefault("UseCaloEnergyMeasurement", useCaloEnergyMeas)
87  acc = TrackingGeometryCondAlgCfg(flags)
88  kwargs.setdefault("TrackingGeometryReadKey",
89  acc.getPrimary().TrackingGeometryWriteKey)
90  result.merge(acc)
91 
92  energy_loss_updator = result.popToolsAndMerge(
94  kwargs.setdefault("EnergyLossUpdator",
95  energy_loss_updator) # PublicToolHandle
96  result.addPublicTool(energy_loss_updator)
97 
98  track_isolation_tool = result.popToolsAndMerge(
99  MuidTrackIsolationCfg(flags))
100  kwargs.setdefault("TrackIsolationTool", track_isolation_tool)
101  result.addPublicTool(track_isolation_tool)
102 
103  tool = CompFactory.Trk.TrkMaterialProviderTool(name=name, **kwargs)
104  result.setPrivateTools(tool)
105  return result
106 
107 
108 def MuonSegmentHitSummaryToolCfg(flags, name="MuonSegmentHitSummaryTool", **kwargs):
109  from MuonConfig.MuonGeometryConfig import MuonGeoModelCfg
110  result = ComponentAccumulator()
111  kwargs.setdefault("Printer", result.getPrimaryAndMerge(MuonEDMPrinterToolCfg(flags)))
112  result.merge(MuonGeoModelCfg(flags))
113  kwargs.setdefault("DetectorManagerKey", "MuonDetectorManager")
114  tool = CompFactory.Muon.MuonSegmentHitSummaryTool(name, **kwargs)
115  result.setPrivateTools(tool)
116  return result
117 
118 
119 def MuonSegmentConverterToolCfg(flags, name="MuonSegmentConverterTool", **kwargs):
120  result = MuonSegmentHitSummaryToolCfg(flags)
121  kwargs.setdefault("MuonSegmentHitSummaryTool", result.popPrivateTools())
122  # HitTimingTool does not need specific configuration
123  tool = CompFactory.Muon.MuonSegmentConverterTool(name, **kwargs)
124  result.setPrivateTools(tool)
125  return result
126 
127 
128 def MuonDressingToolCfg(flags, name="MuonDressingTool", **kwargs):
129  from MuonConfig.MuonRecToolsConfig import MuonHitSummaryToolCfg
130  result = MuonHitSummaryToolCfg(flags)
131  kwargs.setdefault("MuonHitSummaryTool", result.popPrivateTools())
132  # HitTimingTool does not need specific configuration
133  tool = CompFactory.MuonCombined.MuonDressingTool(name, **kwargs)
134  result.setPrivateTools(tool)
135  return result
136 
137 
138 def MuonCreatorToolCfg(flags, name="MuonCreatorTool", **kwargs):
139  from TrackToCalo.TrackToCaloConfig import ParticleCaloExtensionToolCfg
140  result = ComponentAccumulator()
141  # Not explicitly setting up MuonIdHelperSvc, nor MuonEDMHelperSvc (configured in top level reco Cfg)
142  muon_edm_printer = result.getPrimaryAndMerge(MuonEDMPrinterToolCfg(flags))
143  kwargs.setdefault("Printer", muon_edm_printer)
144 
145  kwargs.setdefault("MuonPrinter", CompFactory.Rec.MuonPrintingTool(name='MuonPrintingTool',
146  MuonStationPrinter=muon_edm_printer))
147 
148  kwargs.setdefault("ParticleCaloExtensionTool",
149  result.popToolsAndMerge(ParticleCaloExtensionToolCfg(flags,
150  name='MuonParticleCaloExtensionTool',
151  StartFromPerigee=True)))
152 
153  from TrkConfig.TrkParticleCreatorConfig import MuonCombinedParticleCreatorCfg
154  kwargs.setdefault("TrackParticleCreator", result.popToolsAndMerge(
156 
157  from MuonConfig.MuonRecToolsConfig import MuonAmbiProcessorCfg
158  kwargs.setdefault("AmbiguityProcessor", result.popToolsAndMerge(
159  MuonAmbiProcessorCfg(flags)))
160 
161  from TrkConfig.TrkExRungeKuttaPropagatorConfig import RungeKuttaPropagatorCfg
162  kwargs.setdefault("Propagator", result.popToolsAndMerge(
163  RungeKuttaPropagatorCfg(flags)))
164  kwargs.setdefault("MuonDressingTool", result.popToolsAndMerge(
165  MuonDressingToolCfg(flags)))
166  kwargs.setdefault("AddMDTExtrasMuGirlLowBeta", flags.MuonCombined.addMDTExtrasMuGirlLowBeta)
167  # Not explicitly setting up MomentumBalanceTool nor ScatteringAngleTool
168  # Not explicitly setting up MeanMDTdADCTool (but probably should FIXME)
169 
170  kwargs.setdefault("CaloMaterialProvider", result.popToolsAndMerge(
172 
173  kwargs.setdefault("TrackQuery", result.popToolsAndMerge(
174  MuonTrackQueryCfg(flags)))
175  # runCommissioningChain
176  if flags.Muon.SAMuonTrigger:
177  from TrkConfig.TrkTrackSummaryToolConfig import MuonTrackSummaryToolCfg
178  kwargs.setdefault("TrackSummaryTool", result.popToolsAndMerge(
179  MuonTrackSummaryToolCfg(flags)))
180  else:
181  from TrkConfig.TrkTrackSummaryToolConfig import MuonCombinedTrackSummaryToolCfg
182  kwargs.setdefault("TrackSummaryTool", result.popToolsAndMerge(
184 
185  if flags.Muon.MuonTrigger:
186  kwargs.setdefault("MuonSelectionTool", "")
187  kwargs.setdefault("UseCaloCells", False)
188  kwargs.setdefault("CopyUInt8SummaryKeys", [])
189  else:
190  from MuonSelectorTools.MuonSelectorToolsConfig import MuonSelectionToolCfg
191  kwargs.setdefault("MuonSelectionTool", result.popToolsAndMerge(
192  MuonSelectionToolCfg(flags, name='MuonRecoSelTool')))
193  kwargs.setdefault("RequireMSOEforSA", flags.Beam.Type is BeamType.Collisions)
194  kwargs.setdefault("RequireCaloForSA", flags.Beam.Type is BeamType.Collisions)
195 
196  tool = CompFactory.MuonCombined.MuonCreatorTool(name, **kwargs)
197  result.setPrivateTools(tool)
198  return result
199 
200 
201 def ExtrapolateMuonToIPToolCfg(flags, name="ExtrapolateMuonToIPTool", **kwargs):
202  result = AtlasExtrapolatorCfg(flags)
203  kwargs.setdefault("Extrapolator", result.popPrivateTools())
204  from TrkConfig.AtlasExtrapolatorConfig import MuonExtrapolatorCfg
205  kwargs.setdefault("MuonExtrapolator", result.popToolsAndMerge(
206  MuonExtrapolatorCfg(flags)))
207 
208  if flags.Muon.MuonTrigger:
209  from TrkConfig.TrkTrackSummaryToolConfig import MuonTrackSummaryToolCfg
210  kwargs.setdefault("TrackSummaryTool", result.popToolsAndMerge(
211  MuonTrackSummaryToolCfg(flags)))
212  else:
213  from TrkConfig.TrkTrackSummaryToolConfig import MuonCombinedTrackSummaryToolCfg
214  kwargs.setdefault("TrackSummaryTool", result.popToolsAndMerge(
216  kwargs.setdefault("Printer", result.getPrimaryAndMerge(
217  MuonEDMPrinterToolCfg(flags)))
218  result.setPrivateTools(CompFactory.ExtrapolateMuonToIPTool(name, **kwargs))
219  return result
220 
221 
222 def MuonCandidateToolCfg(flags, name="MuonCandidateTool", **kwargs):
223  from MuonConfig.MuonRecToolsConfig import MuonAmbiProcessorCfg
224  result = ComponentAccumulator()
225  muon_edm_printer = result.getPrimaryAndMerge(MuonEDMPrinterToolCfg(flags))
226  kwargs.setdefault("Printer", muon_edm_printer)
227  if "TrackBuilder" not in kwargs:
228  kwargs.setdefault("TrackBuilder", result.popToolsAndMerge(
229  CombinedMuonTrackBuilderCfg(flags, name="CombinedMuonTrackBuilder")))
230  # Why was this dependent on cosmics? will now always create this
231  # if flags.Beam.Type is BeamType.Cosmics:
232  if flags.Muon.MuonTrigger and flags.Beam.Type is not BeamType.Cosmics:
233  # trigger definitely only uses the ExtrapolateToIPtool in cosmics mode
234  kwargs.setdefault("TrackExtrapolationTool", "")
235  else:
236  kwargs.setdefault("TrackExtrapolationTool", result.popToolsAndMerge(
238  kwargs.setdefault("SegmentContainer", "TrackMuonSegments")
239  kwargs.setdefault("AmbiguityProcessor", result.popToolsAndMerge(
240  MuonAmbiProcessorCfg(flags)))
241 
242  from TrkConfig.TrkTrackSummaryToolConfig import MuonTrackSummaryToolCfg
243  kwargs.setdefault("TrackSummaryTool", result.popToolsAndMerge(
244  MuonTrackSummaryToolCfg(flags)))
245 
246  # MuonIDHelperSvc already configured
247 
248  if flags.Beam.Type is BeamType.Cosmics:
249  kwargs.setdefault("ExtrapolationStrategy", 1)
250 
251  track_segment_association_tool = CompFactory.MuonCombined.TrackSegmentAssociationTool(
252  MuonEDMPrinterTool=muon_edm_printer)
253  kwargs.setdefault("TrackSegmentAssociationTool",
254  track_segment_association_tool)
255  result.addPublicTool(track_segment_association_tool)
256 
257  tool = CompFactory.MuonCombined.MuonCandidateTool(name, **kwargs)
258  result.setPrivateTools(tool)
259  return result
260 
261 
262 def MuonCombinedDebuggerToolCfg(flags, name="MuonCombinedDebuggerTool", **kwargs):
263  result = ComponentAccumulator()
264  match_quality = CompFactory.Rec.MuonMatchQuality(
265  TrackQuery=result.popToolsAndMerge(MuonTrackQueryCfg(flags)))
266  kwargs.setdefault("MuonMatchQuality", match_quality)
267  tool = CompFactory.MuonCombined.MuonCombinedDebuggerTool(name, **kwargs)
268  result.setPrivateTools(tool)
269  return result
270 
271 
272 def MuonCombinedToolCfg(flags, name="MuonCombinedTool", **kwargs):
273  tools = []
274  result = ComponentAccumulator()
275  kwargs.setdefault("Printer", result.getPrimaryAndMerge(
276  MuonEDMPrinterToolCfg(flags)))
277 
278  if flags.MuonCombined.doCombinedFit:
279  tool = result.popToolsAndMerge(MuonCombinedFitTagToolCfg(flags))
280  tools.append(tool)
281  if flags.MuonCombined.doStatisticalCombination and flags.Beam.Type is not BeamType.Cosmics:
282  tool = result.popToolsAndMerge(MuonCombinedStacoTagToolCfg(flags))
283  tools.append(tool)
284 
285  kwargs.setdefault("MuonCombinedTagTools", tools)
286  kwargs.setdefault("MuonCombinedDebuggerTool", result.popToolsAndMerge(
288 
290  result.merge(acc)
291  kwargs.setdefault("AlignmentUncertTool", result.getPublicTool(
292  'MuonAlignmentUncertToolTheta'))
293 
294  kwargs.setdefault("DeltaEtaPreSelection", 0.2)
295  kwargs.setdefault("DeltaPhiPreSelection", 0.2)
296  tool = CompFactory.MuonCombined.MuonCombinedTool(name, **kwargs)
297  result.setPrivateTools(tool)
298  return result
299 
300 
301 def MuonCombinedFitTagToolCfg(flags, name="MuonCombinedFitTagTool", **kwargs):
302  if flags.Muon.MuonTrigger:
303  kwargs.setdefault("VertexContainer", "")
304 
305  result = ComponentAccumulator()
306  kwargs.setdefault("TrackBuilder", result.popToolsAndMerge(
308 
309  kwargs.setdefault("Printer", result.getPrimaryAndMerge(
310  MuonEDMPrinterToolCfg(flags)))
311 
312  kwargs.setdefault("TrackQuery", result.popToolsAndMerge(
313  MuonTrackQueryCfg(flags)))
314  kwargs.setdefault("MatchQuality", result.popToolsAndMerge(
315  MuonMatchQualityCfg(flags)))
316 
317  from MuonConfig.MuonRecToolsConfig import MuonTrackScoringToolCfg
318  kwargs.setdefault("TrackScoringTool", result.popToolsAndMerge(
319  MuonTrackScoringToolCfg(flags)))
320 
321  tool = CompFactory.MuonCombined.MuonCombinedFitTagTool(name, **kwargs)
322  result.setPrivateTools(tool)
323  return result
324 
325 
326 def EMEO_MuonCombinedFitTagToolCfg(flags, name="MuonCombinedFitTagTool_EMEO", **kwargs):
327  result = ComponentAccumulator()
328  track_builder = result.popToolsAndMerge(
330  fit_tag_tool = result.popToolsAndMerge(MuonCombinedFitTagToolCfg(flags, name=name,
331  TrackBuilder=track_builder,
332  **kwargs))
333  result.setPrivateTools(fit_tag_tool)
334  return result
335 
336 
337 def EMEO_MuonCombinedToolCfg(flags, name="MuonCombinedTool_EMEO", **kwargs):
338  tools = []
339  result = ComponentAccumulator()
340  kwargs.setdefault("Printer", result.getPrimaryAndMerge(
341  MuonEDMPrinterToolCfg(flags)))
342 
343  if flags.MuonCombined.doCombinedFit:
344  tool = result.popToolsAndMerge(EMEO_MuonCombinedFitTagToolCfg(flags))
345  tools.append(tool)
346  if flags.MuonCombined.doStatisticalCombination:
347  tool = result.popToolsAndMerge(MuonCombinedStacoTagToolCfg(flags))
348  tools.append(tool)
349 
350  kwargs.setdefault("MuonCombinedTagTools", tools)
351  kwargs.setdefault("MuonCombinedDebuggerTool", result.popToolsAndMerge(
353 
355  result.merge(acc)
356  kwargs.setdefault("AlignmentUncertTool", result.getPublicTool(
357  'MuonAlignmentUncertToolTheta'))
358 
359  kwargs.setdefault("DeltaEtaPreSelection", 0.2)
360  kwargs.setdefault("DeltaPhiPreSelection", 0.2)
361  tool = CompFactory.MuonCombined.MuonCombinedTool(name, **kwargs)
362  result.setPrivateTools(tool)
363  return result
364 
365 
366 def MuonCombinedStacoTagToolCfg(flags, name="MuonCombinedStacoTagTool", **kwargs):
367 
368  result = ComponentAccumulator()
369  kwargs.setdefault("Printer", result.getPrimaryAndMerge(
370  MuonEDMPrinterToolCfg(flags)))
371  kwargs.setdefault("TagTool", result.popToolsAndMerge(
373  kwargs.setdefault("Extrapolator", result.popToolsAndMerge(
374  AtlasExtrapolatorCfg(flags)))
375 
376  tool = CompFactory.MuonCombined.MuonCombinedStacoTagTool(name, **kwargs)
377  result.setPrivateTools(tool)
378  return result
379 
380 # From Combined fit tools.py
381 
382 
383 def MuidMaterialAllocatorCfg(flags, name='MuidMaterialAllocator', **kwargs):
384  from TrkConfig.TrkExSTEP_PropagatorConfig import AtlasSTEP_PropagatorCfg
385  kwargs.setdefault("AggregateMaterial", True)
386  kwargs.setdefault("AllowReordering", False)
387 
388  result = AtlasExtrapolatorCfg(flags)
389  kwargs.setdefault("Extrapolator", result.popPrivateTools())
390  # Intersector (a RungeKuttaIntersector) does not require explicit configuration
391  kwargs.setdefault("STEP_Propagator", result.popToolsAndMerge(
392  AtlasSTEP_PropagatorCfg(flags, name="AtlasSTEP_Propagator")))
393  from TrackingGeometryCondAlg.AtlasTrackingGeometryCondAlgConfig import TrackingGeometryCondAlgCfg
394  result.merge(TrackingGeometryCondAlgCfg(flags))
395  kwargs.setdefault("TrackingGeometryReadKey", "AtlasTrackingGeometry")
396 
397  tool = CompFactory.Trk.MaterialAllocator(name, **kwargs)
398  result.setPrivateTools(tool)
399  return result
400 
401 # and the fitter
402 
403 
404 def iPatFitterCfg(flags, name='iPatFitter', **kwargs):
405  from TrkConfig.SolenoidalIntersectorConfig import SolenoidalIntersectorCfg
406  from TrkConfig.TrkExSTEP_PropagatorConfig import AtlasSTEP_PropagatorCfg
407 
408  kwargs.setdefault("AggregateMaterial", True)
409  kwargs.setdefault("FullCombinedFit", True)
410  result = MuidMaterialAllocatorCfg(flags)
411  kwargs.setdefault("MaterialAllocator", result.popPrivateTools())
412  # RungeKuttaIntersector needs a AtlasFieldCacheCondObj, but it's impossible to get here without that being configured already so let's be lazy
413  # It does not otherwise require explicit configuration
414  kwargs.setdefault('SolenoidalIntersector', result.popToolsAndMerge(
415  SolenoidalIntersectorCfg(flags)))
416  kwargs.setdefault('Propagator', result.popToolsAndMerge(
417  AtlasSTEP_PropagatorCfg(flags)))
418  # StraightLineIntersector does not need explicit configuration
419  if flags.Muon.MuonTrigger:
420  kwargs.setdefault("MaxIterations", 15)
421  if flags.Muon.SAMuonTrigger:
422  from TrkConfig.TrkTrackSummaryToolConfig import MuonTrackSummaryToolCfg
423  kwargs.setdefault("TrackSummaryTool", result.popToolsAndMerge(
424  MuonTrackSummaryToolCfg(flags)))
425  else:
426  from TrkConfig.TrkTrackSummaryToolConfig import MuonCombinedTrackSummaryToolCfg
427  kwargs.setdefault("TrackSummaryTool", result.popToolsAndMerge(
429  # This is only to match old-style config. Does nothing.
430  kwargs.setdefault("TrackingVolumesSvc", "TrackingVolumesSvc")
431 
432  tool = CompFactory.Trk.iPatFitter(name, **kwargs)
433  result.setPrivateTools(tool)
434  return result
435 
436 
437 def iPatSLFitterCfg(flags, name='iPatSLFitter', **kwargs):
438  kwargs.setdefault("LineFit", True)
439  kwargs.setdefault("LineMomentum", flags.Muon.straightLineFitMomentum)
440  return iPatFitterCfg(flags, name, **kwargs)
441 
442 # track cleaner configured to use the same fitter
443 
444 
445 def MuidTrackCleanerCfg(flags, name='MuidTrackCleaner', **kwargs):
446  from MuonConfig.MuonRecToolsConfig import MuonTrackCleanerCfg
447  from TrkConfig.AtlasExtrapolatorConfig import AtlasExtrapolatorCfg
448  if flags.Beam.Type is BeamType.Cosmics:
449  kwargs.setdefault("PullCut", 5.0)
450  kwargs.setdefault("PullCutPhi", 10.0)
451  else:
452  kwargs.setdefault("PullCut", 4.0)
453  kwargs.setdefault("PullCutPhi", 4.0)
454  result = ComponentAccumulator()
455  if flags.Muon.MuonTrigger:
456  kwargs.setdefault("Iterate", False)
457  kwargs.setdefault("RecoverOutliers", False)
458  kwargs.setdefault("Fitter", result.popToolsAndMerge(
459  iPatFitterCfg(flags, 'iPatFitterClean', MaxIterations=4)))
460  else:
461  kwargs.setdefault(
462  "Fitter", result.popToolsAndMerge(iPatFitterCfg(flags)))
463  kwargs.setdefault(
464  "SLFitter", result.popToolsAndMerge(iPatSLFitterCfg(flags)))
465 
466  # For these following items, set back to default, because overridden in MuonTrackCleaner and we don't want overrides.
467  # ALL properties that are set in old-style are: PullCut, PullCutPhi, Iterate, RecoverOutliers, Fitter and iPatSLFitter
468  # However since there are defaults we still DO need to explicitly set, it's still probably easier to use MuonTrackCleanerCfg
469  kwargs.setdefault("MaxAvePullSumPerChamber", 3.5)
470  kwargs.setdefault("Chi2Cut", 100.0)
471  kwargs.setdefault("Extrapolator", result.getPrimaryAndMerge(
472  AtlasExtrapolatorCfg(flags)))
473  result.setPrivateTools(result.popToolsAndMerge(
474  MuonTrackCleanerCfg(flags, name, **kwargs)))
475  return result
476 
477 
478 def MuidCaloEnergyParam(flags, name='MuidCaloEnergyParam', **kwargs):
479  kwargs.setdefault("Cosmics", flags.Beam.Type is BeamType.Cosmics)
480  return CompFactory.Rec.MuidCaloEnergyParam(name, **kwargs)
481 
482 
483 def MuidCaloEnergyMeasCfg(flags, name='MuidCaloEnergyMeas', **kwargs):
484  result = ComponentAccumulator()
485  muidcaloenergyparam = MuidCaloEnergyParam(flags)
486  kwargs.setdefault("CaloParamTool", muidcaloenergyparam)
487  # FIXME! Need to setup the folders for CaloNoiseKey (which is why this needs a CA)
488  # Not sure how to do : if flags.haveRIO.Calo_on() but TBH, if the cells aren't there it will abort anyway
489  kwargs.setdefault("CellContainerLocation", "AllCalo")
490  kwargs.setdefault("NoiseThresInSigmas", 4.)
491  tool = CompFactory.Rec.MuidCaloEnergyMeas(name, **kwargs)
492  result.setPrivateTools(tool)
493  return result
494 
495 
496 def MuidCaloEnergyToolParamCfg(flags, name='MuidCaloEnergyToolParam', **kwargs):
497  # Some duplication with MuidCaloEnergyToolCfg but probably safer like this, since
498  # we don't want to set e.g. MinFinalEnergy here
499  result = MuidCaloEnergyMeasCfg(flags)
500  kwargs.setdefault("CaloMeasTool", result.popPrivateTools())
501  kwargs.setdefault("EnergyLossMeasurement", False)
502 
503  kwargs.setdefault("CaloParamTool", MuidCaloEnergyParam(flags))
504  if flags.Beam.Type is BeamType.Cosmics:
505  kwargs.setdefault("Cosmics", True)
506  kwargs.setdefault("TrackIsolationTool", result.popToolsAndMerge(
507  MuidTrackIsolationCfg(flags)))
508 
509  result.setPrivateTools(CompFactory.Rec.MuidCaloEnergyTool(name, **kwargs))
510  return result
511 
512 
513 def MuidTrackIsolationCfg(flags, name='MuidTrackIsolation', **kwargs):
514  from MagFieldServices.MagFieldServicesConfig import AtlasFieldCacheCondAlgCfg
515  kwargs.setdefault("InDetTracksLocation",
516  "CombinedInDetTracks" if flags.Detector.GeometryID else "CombinedITkTracks")
517  # RungeKuttaIntersector requires the magnetic field conditions
518  result = AtlasFieldCacheCondAlgCfg(flags)
519  tool = CompFactory.Rec.MuidTrackIsolation(name, **kwargs)
520  result.setPrivateTools(tool)
521  return result
522 
523 
524 def MuidCaloEnergyToolCfg(flags, name='MuidCaloEnergyTool', **kwargs):
525  result = MuidCaloEnergyMeasCfg(flags)
526  from LArGeoAlgsNV.LArGMConfig import LArGMCfg
527  result.merge(LArGMCfg(flags))
528  kwargs.setdefault("CaloMeasTool", result.popPrivateTools())
529  kwargs.setdefault("CaloParamTool", MuidCaloEnergyParam(flags))
530  kwargs.setdefault("MinFinalEnergy", 1.0*GeV)
531  kwargs.setdefault("MinMuonPt", 10.0*GeV)
532  kwargs.setdefault("MopParametrization", True)
533  if flags.Muon.MuonTrigger:
534  kwargs.setdefault("EnergyLossMeasurement", False)
535  kwargs.setdefault("TrackIsolation", False)
536  else:
537  kwargs.setdefault("EnergyLossMeasurement", True)
538  kwargs.setdefault("TrackIsolation", True)
539 
540  kwargs.setdefault("TrackIsolationTool", result.popToolsAndMerge(
541  MuidTrackIsolationCfg(flags)))
542  kwargs.setdefault("Cosmics", flags.Beam.Type is BeamType.Cosmics)
543  result.setPrivateTools(CompFactory.Rec.MuidCaloEnergyTool(name, **kwargs))
544  return result
545 
546 
547 def MuidCaloTrackStateOnSurfaceCfg(flags, name='MuidCaloTrackStateOnSurface', **kwargs):
548  result = ComponentAccumulator()
549  from TrkConfig.TrkExRungeKuttaPropagatorConfig import RungeKuttaPropagatorCfg
550  kwargs.setdefault("Propagator", result.popToolsAndMerge(
551  RungeKuttaPropagatorCfg(flags)))
552  kwargs.setdefault("MinRemainingEnergy", 0.2*GeV)
553  kwargs.setdefault("ParamPtCut", 3.0*GeV)
554  kwargs.setdefault("CaloEnergyDeposit", result.popToolsAndMerge(
555  MuidCaloEnergyToolCfg(flags)))
556  kwargs.setdefault("CaloEnergyParam", result.popToolsAndMerge(
558  # I don't think CaloMaterialParam i.e. MuidCaloMaterialParam needs explicit configuration
559  # Ditto for IntersectorWrapper, since it just uses RKIntersector which doesn't
560  tool = CompFactory.Rec.MuidCaloTrackStateOnSurface(name, **kwargs)
561  result.setPrivateTools(tool)
562  return result
563 
564 
565 def MuidCaloTrackStateOnSurfaceParamCfg(flags, name='MuidCaloTrackStateOnSurfaceParam', **kwargs):
566  result = ComponentAccumulator()
567  from TrkConfig.TrkExRungeKuttaPropagatorConfig import RungeKuttaPropagatorCfg
568  kwargs.setdefault("Propagator", result.popToolsAndMerge(
569  RungeKuttaPropagatorCfg(flags)))
570  kwargs.setdefault("MinRemainingEnergy", 0.2*GeV)
571  kwargs.setdefault("ParamPtCut", 3.0*GeV)
572  kwargs.setdefault("CaloEnergyDeposit", MuidCaloEnergyParam(flags))
573  kwargs.setdefault("CaloEnergyParam", MuidCaloEnergyParam(flags))
574  tool = CompFactory.Rec.MuidCaloTrackStateOnSurface(name, **kwargs)
575  result.setPrivateTools(tool)
576  return result
577 
578 
579 def MuidMaterialEffectsOnTrackProviderCfg(flags, name='MuidMaterialEffectsOnTrackProvider', **kwargs):
580  result = MuidCaloTrackStateOnSurfaceCfg(flags)
581  kwargs.setdefault("TSOSTool", result.popPrivateTools())
583  kwargs.setdefault("TSOSToolParam", acc.popPrivateTools())
584  result.merge(acc)
585  kwargs.setdefault("Cosmics", flags.Beam.Type is BeamType.Cosmics)
586  tool = CompFactory.Rec.MuidMaterialEffectsOnTrackProvider(name, **kwargs)
587  result.setPrivateTools(tool)
588  return result
589 
590 
591 def MuidMaterialEffectsOnTrackProviderParamCfg(flags, name='MuidMaterialEffectsOnTrackProviderParam', **kwargs):
593  muidtsosparam = result.popPrivateTools()
594  kwargs.setdefault("TSOSTool", muidtsosparam)
595  kwargs.setdefault("TSOSToolParam", muidtsosparam)
596  kwargs.setdefault("Cosmics", flags.Beam.Type is BeamType.Cosmics)
597  tool = CompFactory.Rec.MuidMaterialEffectsOnTrackProvider(name, **kwargs)
598  result.setPrivateTools(tool)
599  return result
600 
601 
602 def MuonTrackQueryCfg(flags, name="MuonTrackQuery", **kwargs):
603  from MuonConfig.MuonRIO_OnTrackCreatorToolConfig import MdtDriftCircleOnTrackCreatorCfg
604  result = MdtDriftCircleOnTrackCreatorCfg(flags)
605  kwargs.setdefault("MdtRotCreator", result.popPrivateTools())
606  from TrackingGeometryCondAlg.AtlasTrackingGeometryCondAlgConfig import TrackingGeometryCondAlgCfg
607  result.merge(TrackingGeometryCondAlgCfg(flags))
608  kwargs.setdefault("TrackingGeometryReadKey", "AtlasTrackingGeometry")
609 
610  acc = iPatFitterCfg(flags)
611  kwargs.setdefault("Fitter", acc.popPrivateTools())
612  result.merge(acc)
613 
614  tool = CompFactory.Rec.MuonTrackQuery(name, **kwargs)
615  result.setPrivateTools(tool)
616  return result
617 
618 
619 def EMEO_MuonSegmentRegionRecoveryToolCfg(flags, name="MuonSegmentRegionRecoveryTool_EMEO"):
620  result = ComponentAccumulator()
621  from MuonConfig.MuonTrackBuildingConfig import EMEO_MuonChamberHoleRecoveryToolCfg
622  chamber_recovery = result.popToolsAndMerge(
624  trk_builder = result.popToolsAndMerge(
626  from TrkConfig.TrkTrackSummaryToolConfig import MuonCombinedTrackSummaryToolCfg
627  muon_combined_track_summary = result.popToolsAndMerge(
629  tool = result.popToolsAndMerge(MuonSegmentRegionRecoveryToolCfg(flags,
630  name=name,
631  ChamberHoleRecoveryTool=chamber_recovery,
632  Builder=trk_builder,
633  TrackSummaryTool=muon_combined_track_summary,
634  STGCRegionSelector="",
635  MMRegionSelector="",
636  RecoverMM=False,
637  RecoverSTGC=False))
638  result.setPrivateTools(tool)
639  return result
640 
641 
642 def EMEO_CombinedMuonTrackBuilderCfg(flags, name="MuonCombinedTrackBuilder_EMEO"):
643  result = ComponentAccumulator()
644  recovery_tool = result.popToolsAndMerge(
646  acc = CombinedMuonTrackBuilderCfg(flags, name,
647  MuonRotCreator="",
648  MuonHoleRecovery=recovery_tool)
649  # Need to reset this to be the primary tool
650  tool = result.popToolsAndMerge(acc)
651  result.setPrivateTools(tool)
652  return result
653 
654 
655 def MuidErrorOptimisationToolCfg(flags, name='MuidErrorOptimisationTool', **kwargs):
656  from MuonConfig.MuonRecToolsConfig import MuonTrackSummaryHelperToolCfg, MuonRefitToolCfg
657  result = ComponentAccumulator()
658  kwargs.setdefault("TrackSummaryTool", result.popToolsAndMerge(
660  useAlignErrs = True
661  if flags.IOVDb.DatabaseInstance == 'COMP200' or \
662  'HLT' in flags.IOVDb.GlobalTag or flags.Common.isOnline or flags.Muon.MuonTrigger:
663  useAlignErrs = False
664  kwargs.setdefault("RefitTool", result.popToolsAndMerge(MuonRefitToolCfg(
665  flags, name="MuidRefitTool", AlignmentErrors=useAlignErrs,
666  Fitter=result.popToolsAndMerge(iPatFitterCfg(flags)))))
667  tool = CompFactory.Muon.MuonErrorOptimisationTool(name, **kwargs)
668  result.setPrivateTools(tool)
669  return result
670 
671 
672 def MuonAlignmentUncertToolThetaCfg(flags, name="MuonAlignmentUncertToolTheta", **kwargs):
673  result = ComponentAccumulator()
674  from MuonConfig.MuonGeometryConfig import TrackingVolumesSvcCfg
675  kwargs.setdefault("TrackingVolumesSvc", result.getPrimaryAndMerge(TrackingVolumesSvcCfg(flags)))
676  kwargs.setdefault("HistoName", "ThetaScattering")
677  kwargs.setdefault(
678  "InFile", "MuonCombinedBaseTools/AlignmentUncertainties/201029_initial/ID_MS_Uncertainties.root")
679  tool = CompFactory.Muon.MuonAlignmentUncertTool(name, **kwargs)
680  result.addPublicTool(tool)
681  return result
682 
683 
684 def MuonAlignmentUncertToolPhiCfg(flags, name="MuonAlignmentUncertToolPhi", **kwargs):
685  result = ComponentAccumulator()
686  kwargs.setdefault("HistoName", "PhiScattering")
687  from MuonConfig.MuonGeometryConfig import TrackingVolumesSvcCfg
688  kwargs.setdefault("TrackingVolumesSvc", result.getPrimaryAndMerge(TrackingVolumesSvcCfg(flags)))
689  kwargs.setdefault(
690  "InFile", "MuonCombinedBaseTools/AlignmentUncertainties/201029_initial/ID_MS_Uncertainties.root")
691  tool = CompFactory.Muon.MuonAlignmentUncertTool(name, **kwargs)
692  result.addPublicTool(tool)
693  return result
694 
695 
696 @AccumulatorCache
697 def CombinedMuonTrackBuilderCfg(flags, name='CombinedMuonTrackBuilder', **kwargs):
698  from AthenaCommon.SystemOfUnits import meter
699  from MuonConfig.MuonRIO_OnTrackCreatorToolConfig import CscClusterOnTrackCreatorCfg, MdtDriftCircleOnTrackCreatorCfg, MuonClusterOnTrackCreatorCfg
700  from TrkConfig.TrkTrackSummaryToolConfig import MuonCombinedTrackSummaryToolCfg
701 
702  result = ComponentAccumulator()
703 
704  from MuonConfig.MuonGeometryConfig import TrackingVolumesSvcCfg
705  kwargs.setdefault("TrackingVolumesSvc", result.getPrimaryAndMerge(TrackingVolumesSvcCfg(flags)))
706 
707  kwargs.setdefault("CaloEnergyParam", result.popToolsAndMerge(
709  kwargs.setdefault("CaloTSOS", result.popToolsAndMerge(
711  kwargs.setdefault("Cleaner", result.popToolsAndMerge(
712  MuidTrackCleanerCfg(flags)))
713  result.merge(MuonAlignmentUncertToolPhiCfg(flags))
714  kwargs.setdefault("AlignmentUncertToolPhi",
715  result.getPublicTool('MuonAlignmentUncertToolPhi'))
716  result.merge(MuonAlignmentUncertToolThetaCfg(flags))
717  kwargs.setdefault("AlignmentUncertToolTheta",
718  result.getPublicTool('MuonAlignmentUncertToolTheta'))
719 
720  if flags.Detector.GeometryCSC and not flags.Muon.MuonTrigger:
721  kwargs.setdefault("CscRotCreator", result.popToolsAndMerge(
723  else:
724  kwargs.setdefault("CscRotCreator", "")
725 
726  kwargs.setdefault("Extrapolator", result.popToolsAndMerge(
727  AtlasExtrapolatorCfg(flags)))
728  kwargs.setdefault(
729  "Fitter", result.popToolsAndMerge(iPatFitterCfg(flags)))
730  kwargs.setdefault(
731  "SLFitter", result.popToolsAndMerge(iPatSLFitterCfg(flags)))
732  kwargs.setdefault("MaterialAllocator", result.popToolsAndMerge(
733  MuidMaterialAllocatorCfg(flags)))
734  kwargs.setdefault("MdtRotCreator", result.popToolsAndMerge(
736  kwargs.setdefault("MuonRotCreator", result.popToolsAndMerge(
738 
739  # Tracking Geometry
740  from TrackingGeometryCondAlg.AtlasTrackingGeometryCondAlgConfig import (
741  TrackingGeometryCondAlgCfg)
742 
743  geom_cond_key = result.getPrimaryAndMerge(
744  TrackingGeometryCondAlgCfg(flags)).TrackingGeometryWriteKey
745  kwargs.setdefault("TrackingGeometryReadKey", geom_cond_key)
746 
747  kwargs.setdefault("CleanCombined", True)
748  kwargs.setdefault("CleanStandalone", True)
749  kwargs.setdefault("BadFitChi2", 2.5)
750  kwargs.setdefault("LargeMomentumError", 0.5)
751  kwargs.setdefault("LineMomentum", flags.Muon.straightLineFitMomentum)
752  kwargs.setdefault("LowMomentum", 10.*GeV)
753  kwargs.setdefault("MinEnergy", 0.3*GeV)
754  kwargs.setdefault("PerigeeAtSpectrometerEntrance", False)
755  kwargs.setdefault("ReallocateMaterial", False)
756  kwargs.setdefault("Vertex2DSigmaRPhi", 100.*mm)
757  kwargs.setdefault("Vertex3DSigmaRPhi", 6.*mm)
758  kwargs.setdefault("Vertex3DSigmaZ", 60.*mm)
759  kwargs.setdefault("UseCaloTG", True)
760 
761  kwargs.setdefault("CaloMaterialProvider", result.popToolsAndMerge(
763  kwargs.setdefault("TrackQuery", result.popToolsAndMerge(
764  MuonTrackQueryCfg(flags)))
765 
766  if flags.Muon.SAMuonTrigger:
767  from TrkConfig.TrkTrackSummaryToolConfig import MuonTrackSummaryToolCfg
768  kwargs.setdefault("TrackSummaryTool", result.popToolsAndMerge(
769  MuonTrackSummaryToolCfg(flags)))
770  else:
771  kwargs.setdefault("TrackSummaryTool", result.popToolsAndMerge(
773 
774  from TrkConfig.TrkExRungeKuttaPropagatorConfig import MuonCombinedPropagatorCfg, RungeKuttaPropagatorCfg
775  propagator = None
776  if flags.Muon.MuonTrigger:
777  propagator = result.popToolsAndMerge(RungeKuttaPropagatorCfg(flags))
778  else:
779  propagator = result.popToolsAndMerge(MuonCombinedPropagatorCfg(flags))
780  kwargs.setdefault("Propagator", propagator)
781  kwargs.setdefault("SLPropagator", propagator)
782  kwargs.setdefault("Printer", result.getPrimaryAndMerge(
783  MuonEDMPrinterToolCfg(flags)))
784 
785  if flags.Beam.Type is BeamType.Cosmics:
786  kwargs.setdefault("MdtRotCreator", "")
787  kwargs.setdefault("MuonRotCreator", "")
788  kwargs.setdefault("LowMomentum", 1.5*GeV)
789  kwargs.setdefault("ReallocateMaterial", False)
790  kwargs.setdefault("Vertex2DSigmaRPhi", 100.*mm)
791  kwargs.setdefault("Vertex3DSigmaRPhi", 100.*mm)
792  kwargs.setdefault("Vertex3DSigmaZ", 1.*meter)
793 
794  # configure tools for data reprocessing
795  if flags.Muon.enableErrorTuning and 'MuonErrorOptimizer' not in kwargs:
796  erroropt = result.popToolsAndMerge(MuidErrorOptimisationToolCfg(
797  flags, name="MuidErrorOptimisationTool", PrepareForFit=False, RecreateStartingParameters=False))
798  kwargs.setdefault("MuonErrorOptimizer", erroropt)
799  else:
800  kwargs.setdefault("MuonErrorOptimizer", "")
801 
802  if flags.Muon.MuonTrigger:
803  kwargs.setdefault("MuonHoleRecovery", "")
804  else:
805  if "MuonHoleRecovery" not in kwargs:
806  # Meeded to resolve circular dependency since MuonSegmentRegionRecoveryToolCfg calls CombinedMuonTrackBuilderCfg (i.e. this)!
807  muon_combined_track_summary = result.popToolsAndMerge(
810  flags, name="MuidSegmentRegionRecoveryTool", TrackSummaryTool=muon_combined_track_summary)
811  kwargs.setdefault("MuonHoleRecovery", acc.popPrivateTools())
812  result.merge(acc)
813 
814  if flags.Muon.doSegmentT0Fit:
815  kwargs.setdefault("MdtRotCreator", "")
816  tool = CompFactory.Rec.CombinedMuonTrackBuilder(name, **kwargs)
817  result.setPrivateTools(tool)
818  return result
819 
820 
821 def CombinedMuonTrackBuilderFitCfg(flags, name='CombinedMuonTrackBuilderFit', **kwargs):
822  # In the old configuration we had duplication between CombinedMuonTrackBuilder and CombinedMuonTrackBuilderFit
823  # Here we just call the Combined
824  from MuonConfig.MuonTrackBuildingConfig import MuonChamberHoleRecoveryToolCfg
825  result = ComponentAccumulator()
826  kwargs.setdefault("PerigeeAtSpectrometerEntrance", True)
827  kwargs.setdefault("UseCaloTG", False)
828  if flags.Muon.MuonTrigger:
829  kwargs.setdefault("MuonErrorOptimizer", "")
830  else:
831  kwargs.setdefault("MuonErrorOptimizer", result.popToolsAndMerge(
832  MuidErrorOptimisationToolCfg(flags, PrepareForFit=False, RecreateStartingParameters=False)))
833  kwargs.setdefault("MuonHoleRecovery", result.popToolsAndMerge(
835 
836  tool = result.popToolsAndMerge(CombinedMuonTrackBuilderCfg(
837  flags, name, **kwargs)) # Need to reset this to be the primary tool
838  result.setPrivateTools(tool)
839  return result
840 
841 
842 def EMEO_CombinedTrackBuilderFitCfg(flags, name="CombinedTrackBuilderFit_EMEO", **kwargs):
843  result = ComponentAccumulator()
844  from MuonConfig.MuonTrackBuildingConfig import EMEO_MuonChamberHoleRecoveryToolCfg
845  if not flags.Muon.MuonTrigger:
846  trk_builder = result.popToolsAndMerge(
848  kwargs.setdefault("MuonHoleRecovery", trk_builder)
849  else:
850  kwargs.setdefault("MuonHoleRecovery", "")
851  kwargs.setdefault("MuonRotCreator", "")
852  tool = result.popToolsAndMerge(CombinedMuonTrackBuilderFitCfg(
853  flags, name, **kwargs)) # Need to reset this to be the primary tool
854  result.setPrivateTools(tool)
855  return result
856 
857 
858 def MuonMatchQualityCfg(flags, name='MuonMatchQuality', **kwargs):
859  result = CombinedMuonTagTestToolCfg(flags)
860  kwargs.setdefault("TagTool", result.popPrivateTools())
861  kwargs.setdefault("TrackQuery", result.popToolsAndMerge(
862  MuonTrackQueryCfg(flags)))
863 
864  tool = CompFactory.Rec.MuonMatchQuality(name, **kwargs)
865  result.setPrivateTools(tool)
866  return result
867 
868 
869 def MuidMuonRecoveryCfg(flags, name='MuidMuonRecovery', **kwargs):
870  result = AtlasExtrapolatorCfg(flags)
871  kwargs.setdefault("Extrapolator", result.popPrivateTools())
872  kwargs.setdefault("TrackBuilder", result.popToolsAndMerge(
874 
875  if "ResidualPullCalculator" not in kwargs:
876  from TrkConfig.TrkResidualPullCalculatorConfig import (
877  ResidualPullCalculatorCfg)
878  kwargs.setdefault("ResidualPullCalculator", result.popToolsAndMerge(
880 
881  tool = CompFactory.Rec.MuidMuonRecovery(name, **kwargs)
882  result.setPrivateTools(tool)
883  return result
884 
885 
886 def CombinedMuonTagTestToolCfg(flags, name='CombinedMuonTagTestTool', **kwargs):
887  result = AtlasExtrapolatorCfg(flags)
888  kwargs.setdefault("ExtrapolatorTool", result.popPrivateTools())
889  kwargs.setdefault("Chi2Cut", 50000.)
890  from TrackingGeometryCondAlg.AtlasTrackingGeometryCondAlgConfig import TrackingGeometryCondAlgCfg
891  result.merge(TrackingGeometryCondAlgCfg(flags))
892  kwargs.setdefault("TrackingGeometryReadKey", "AtlasTrackingGeometry")
893  tool = CompFactory.MuonCombined.MuonTrackTagTestTool(name, **kwargs)
894  result.setPrivateTools(tool)
895  return result
896 
897 # From MuonCaloTagTool.py
898 
899 
900 def TrackDepositInCaloToolCfg(flags, name='TrackDepositInCaloTool', **kwargs):
901  from TrackToCalo.TrackToCaloConfig import ParticleCaloExtensionToolCfg, ParticleCaloCellAssociationToolCfg
902  result = ComponentAccumulator()
903  kwargs.setdefault("ParticleCaloExtensionTool",
904  result.popToolsAndMerge(ParticleCaloExtensionToolCfg(flags)))
905  kwargs.setdefault("ExtrapolatorHandle", result.popToolsAndMerge(
906  AtlasExtrapolatorCfg(flags)))
907  kwargs.setdefault("ParticleCaloCellAssociationTool",
908  result.popToolsAndMerge(ParticleCaloCellAssociationToolCfg(flags, name="Rec::ParticleCaloCellAssociationTool")))
909  tool = CompFactory.TrackDepositInCaloTool(name, **kwargs)
910  result.setPrivateTools(tool)
911  return result
912 
913 
914 def CaloMuonLikelihoodToolCfg(flags, name='CaloMuonLikelihoodTool', **kwargs):
915  from TrackToCalo.TrackToCaloConfig import ParticleCaloExtensionToolCfg
916  result = ComponentAccumulator()
917  kwargs.setdefault("ParticleCaloExtensionTool",
918  result.popToolsAndMerge(ParticleCaloExtensionToolCfg(flags)))
919  tool = CompFactory.CaloMuonLikelihoodTool(name, **kwargs)
920  result.setPrivateTools(tool)
921  return result
922 
923 
924 def CaloMuonScoreToolCfg(flags, name='CaloMuonScoreTool', **kwargs):
925  from TrackToCalo.TrackToCaloConfig import ParticleCaloCellAssociationToolCfg
926  result = ComponentAccumulator()
927  kwargs.setdefault("ParticleCaloCellAssociationTool",
928  result.popToolsAndMerge(ParticleCaloCellAssociationToolCfg(flags)))
929  tool = CompFactory.CaloMuonScoreTool(name, **kwargs)
930  result.setPrivateTools(tool)
931  return result
932 
933 
934 def CaloMuonTagCfg(flags, name="CaloMuonTag", **kwargs):
935  result = ComponentAccumulator()
936  the_tool = CompFactory.CaloMuonTag(name, **kwargs)
937  result.setPrivateTools(the_tool)
938  return result
939 
940 
941 def MuonCaloTagToolCfg(flags, name='MuonCaloTagTool', **kwargs):
942  result = ComponentAccumulator()
943  kwargs.setdefault("CaloMuonTagLoose",
944  result.popToolsAndMerge(CaloMuonTagCfg(flags, name="CaloMuonTagLoose", TagMode="Loose")))
945  kwargs.setdefault("CaloMuonTagTight",
946  result.popToolsAndMerge(CaloMuonTagCfg(flags)))
947  kwargs.setdefault("CaloMuonLikelihoodTool",
948  result.popToolsAndMerge(CaloMuonLikelihoodToolCfg(flags)))
949  kwargs.setdefault("CaloMuonScoreTool",
950  result.popToolsAndMerge(CaloMuonScoreToolCfg(flags)))
951  kwargs.setdefault("TrackDepositInCaloTool",
952  result.popToolsAndMerge(TrackDepositInCaloToolCfg(flags)))
953  from InDetConfig.InDetTrackSelectorToolConfig import CaloTrkMuIdAlgTrackSelectorToolCfg
954  kwargs.setdefault("TrackSelectorTool",
955  result.popToolsAndMerge(CaloTrkMuIdAlgTrackSelectorToolCfg(flags)))
956  kwargs.setdefault("doCaloLR", False)
957  the_tool = CompFactory.MuonCombined.MuonCaloTagTool(name, **kwargs)
958  result.setPrivateTools(the_tool)
959  return result
960 
961 # Misc
962 
963 
964 def MuonLayerSegmentFinderToolCfg(flags, name="MuonLayerSegmentFinderTool", **kwargs):
965  from MuonConfig.MuonSegmentFindingConfig import DCMathSegmentMakerCfg, MuonNSWSegmentFinderToolCfg, MuonPRDSelectionToolCfg
966  result = ComponentAccumulator()
967 
968  from MuonConfig.MuonSegmentFindingConfig import Csc2dSegmentMakerCfg, Csc4dSegmentMakerCfg
969  kwargs.setdefault("Csc2DSegmentMaker", result.popToolsAndMerge(
970  Csc2dSegmentMakerCfg(flags)) if flags.Detector.GeometryCSC else "")
971  kwargs.setdefault("Csc4DSegmentMaker", result.popToolsAndMerge(
972  Csc4dSegmentMakerCfg(flags)) if flags.Detector.GeometryCSC else "")
973 
974  kwargs.setdefault("MuonPRDSelectionTool", result.popToolsAndMerge(
975  MuonPRDSelectionToolCfg(flags)))
976  kwargs.setdefault("SegmentMaker", result.popToolsAndMerge(
977  DCMathSegmentMakerCfg(flags, name="DCMathSegmentMaker")))
978  kwargs.setdefault("NSWMuonClusterSegmentFinderTool",
979  result.popToolsAndMerge(MuonNSWSegmentFinderToolCfg(flags, name="MuonNSWSegmentFinderTool")))
980 
981 
982  from AthenaConfiguration.Enums import LHCPeriod
983  if flags.GeoModel.Run < LHCPeriod.Run3 or flags.Muon.MuonTrigger:
984  kwargs.setdefault("InSegmentContainer", "")
985  kwargs.setdefault("MuonLayerSegmentMatchingTool", "")
986  else:
987  kwargs.setdefault("MuonLayerSegmentMatchingTool", result.popToolsAndMerge(
989  tool = CompFactory.Muon.MuonLayerSegmentFinderTool(name, **kwargs)
990  result.setPrivateTools(tool)
991  return result
992 
993 
994 def MuonLayerSegmentMatchingToolCfg(flags, name="MuonLayerSegmentMatchingTool", **kwargs):
995  result = AtlasExtrapolatorCfg(flags)
996  kwargs.setdefault("Extrapolator", result.popPrivateTools())
997  MuTagTool = result.getPrimaryAndMerge(MuTagMatchingToolCfg(flags))
998  kwargs.setdefault("MatchTool", MuTagTool)
999 
1000  tool = CompFactory.Muon.MuonLayerSegmentMatchingTool(name, **kwargs)
1001  result.setPrivateTools(tool)
1002  return result
1003 
1004 
1005 def MuonInsideOutRecoToolCfg(flags, name="MuonInsideOutRecoTool", **kwargs):
1006  from MuonConfig.MuonRecToolsConfig import MuonAmbiProcessorCfg
1007  if flags.Muon.MuonTrigger:
1008  kwargs.setdefault("VertexContainer", "")
1009  result = ComponentAccumulator()
1010  kwargs.setdefault("MuonEDMPrinterTool", result.getPrimaryAndMerge(MuonEDMPrinterToolCfg(flags)))
1011  layersegmentfindertool = result.popToolsAndMerge(
1012  MuonLayerSegmentFinderToolCfg(flags, name="MuonLayerSegmentFinderTool"))
1013  kwargs.setdefault("MuonLayerSegmentFinderTool", layersegmentfindertool)
1014  kwargs.setdefault("MuonLayerSegmentMatchingTool", result.popToolsAndMerge(
1016  kwargs.setdefault("MuonLayerAmbiguitySolverTool", result.popToolsAndMerge(
1018  kwargs.setdefault("MuonCandidateTrackBuilderTool", result.popToolsAndMerge(
1020  from TrkConfig.TrkTrackSummaryToolConfig import MuonCombinedTrackSummaryToolCfg
1021  kwargs.setdefault("TrackSummaryTool", result.popToolsAndMerge(
1023  kwargs.setdefault("MuonTrackBuilder", result.popToolsAndMerge(
1025  kwargs.setdefault("TrackAmbiguityProcessor",
1026  result.popToolsAndMerge(MuonAmbiProcessorCfg(flags)))
1027 
1028  tool = CompFactory.MuonCombined.MuonInsideOutRecoTool(name, **kwargs)
1029  result.setPrivateTools(tool)
1030  return result
1031 
1032 
1033 def MuonCandidateTrackBuilderToolCfg(flags, name="MuonCandidateTrackBuilderTool", **kwargs):
1034  result = CombinedMuonTrackBuilderCfg(flags)
1035  kwargs.setdefault("MuonTrackBuilder", result.popPrivateTools())
1036  muoncandidatetrackbuilder = CompFactory.Muon.MuonCandidateTrackBuilderTool(
1037  name, **kwargs)
1038  result.setPrivateTools(muoncandidatetrackbuilder)
1039  return result
1040 
1041 
1042 def MuonSegmentSelectionToolCfg(flags, name="MuonSegmentSelectionTool", **kwargs):
1043  if flags.Input.isMC is False:
1044  kwargs.setdefault("GoodADCFractionCut", 0.5)
1045  kwargs.setdefault("MinADCPerSegmentCut", 100)
1046  result = ComponentAccumulator()
1047  kwargs.setdefault("Printer", result.getPrimaryAndMerge(
1048  MuonEDMPrinterToolCfg(flags)))
1049  muon_segment_hit_summary_tool = result.popToolsAndMerge(
1051  kwargs.setdefault("MuonSegmentHitSummaryTool",
1052  muon_segment_hit_summary_tool)
1053  result.addPublicTool(muon_segment_hit_summary_tool)
1054 
1055  result.setPrivateTools(
1056  CompFactory.Muon.MuonSegmentSelectionTool(name, **kwargs))
1057  return result
1058 
1059 
1060 def MuonLayerAmbiguitySolverToolCfg(flags, name="MuonLayerAmbiguitySolverTool", **kwargs):
1061  from MuonConfig.MuonTrackBuildingConfig import MuonSegmentMatchingToolCfg, MooTrackBuilderCfg
1062  result = MuonSegmentSelectionToolCfg(flags)
1063  kwargs.setdefault("MuonSegmentSelectionTool", result.popPrivateTools())
1064  kwargs.setdefault("MuonSegmentMatchingTool", result.popToolsAndMerge(
1065  MuonSegmentMatchingToolCfg(flags, name='MuonSegmentMatchingToolTight', TightSegmentMatching=True)))
1066 
1067  kwargs.setdefault("MuonSegmentTrackBuilder",
1068  result.popToolsAndMerge(MooTrackBuilderCfg(flags, name='MooMuonTrackBuilder', prefix='MuSt_')))
1069  kwargs.setdefault("MuonEDMPrinterTool", result.getPrimaryAndMerge(
1070  MuonEDMPrinterToolCfg(flags)))
1071 
1072  result.setPrivateTools(
1073  CompFactory.Muon.MuonLayerAmbiguitySolverTool(name, **kwargs))
1074  return result
1075 
1076 
1077 def MdtDriftCircleOnTrackCreatorStauCfg(flags, name="MdtDriftCircleOnTrackCreatorStau", **kwargs):
1078  from MuonConfig.MuonRIO_OnTrackCreatorToolConfig import MdtDriftCircleOnTrackCreatorCfg, MdtCalibWindowNumber, MdtCalibToolForRotsCfg
1079  result = ComponentAccumulator()
1080  kwargs.setdefault("TimingMode", 3)
1081  kwargs.setdefault("CalibrationTool", result.popToolsAndMerge(MdtCalibToolForRotsCfg(flags, TimeWindowSetting = MdtCalibWindowNumber('Collision_t0fit') )) )
1082  the_tool = result.popToolsAndMerge(MdtDriftCircleOnTrackCreatorCfg(flags, name, **kwargs))
1083  result.setPrivateTools(the_tool)
1084  return result
1085 
1086 
1087 def MuonStauRecoToolCfg(flags, name="MuonStauRecoTool", **kwargs):
1088  # In the old configuration this was split over several functions. But since these Stau tools are only used here,
1089  # trying a new approach. We can always refactorise later if necessary.
1090  from MuonConfig.MuonSegmentFindingConfig import DCMathSegmentMakerCfg, MuonPRDSelectionToolCfg
1091  from MuonConfig.MuonTrackBuildingConfig import MuonChamberHoleRecoveryToolCfg
1092  from MuonConfig.MuonRecToolsConfig import MuonAmbiProcessorCfg, MuonSeededSegmentFinderCfg
1093  from MuonConfig.MuonRIO_OnTrackCreatorToolConfig import MdtDriftCircleOnTrackCreatorCfg
1094  from MuonConfig.MuonSegmentFindingConfig import MuonLayerHoughAlgCfg
1095  kwargs.setdefault("DoSummary", flags.Muon.printSummary)
1096  kwargs.setdefault("ConsideredPDGs", [13, -13, 1000015, -1000015])
1097  kwargs.setdefault("DoTruth", flags.Input.isMC)
1098  kwargs.setdefault("AddMDTExtrasMuGirlLowBeta", flags.MuonCombined.addMDTExtrasMuGirlLowBeta)
1099 
1100  result = ComponentAccumulator()
1101  result.merge(MuonLayerHoughAlgCfg(flags))
1102  # Not setting up MuonIdHelperSvc nor MuonEDMHelperSvc
1103  kwargs.setdefault("MuonEDMPrinterTool", result.getPrimaryAndMerge(MuonEDMPrinterToolCfg(flags)))
1104  kwargs.setdefault("MuonPRDSelectionTool", result.popToolsAndMerge(MuonPRDSelectionToolCfg(flags)))
1105 
1106  # This is going to be used in a few tools below
1107  staurotcreator = result.popToolsAndMerge(MdtDriftCircleOnTrackCreatorStauCfg(flags))
1108  kwargs.setdefault("MuonPRDSelectionToolStau",
1109  result.popToolsAndMerge(MuonPRDSelectionToolCfg(flags,
1110  "MuonPRDSelectionToolStau",
1111  MdtDriftCircleOnTrackCreator=staurotcreator)))
1112 
1113  segmentmaker = result.popToolsAndMerge(DCMathSegmentMakerCfg(
1114  flags, name="DCMathStauSegmentMaker", MdtCreator=staurotcreator))
1115  # segmentmaker also used by MuonSeededSegmentFinder below
1116  kwargs.setdefault("MuonSegmentMaker", segmentmaker)
1117  kwargs.setdefault("MuonSegmentMakerT0Fit", result.popToolsAndMerge(DCMathSegmentMakerCfg(
1118  flags, name="DCMathT0FitSegmentMaker", doSegmentT0Fit=True)))
1119  # ^ doSegmentT0Fit overrides several defaults, including MdtCreatorT0 and MdtSegmentFinder
1120 
1121  kwargs.setdefault("MuonLayerSegmentMatchingTool", result.popToolsAndMerge(
1123 
1124  # Not configuring MuonRecoValidationTool as it is off by default, but it would need configuring if used
1125  kwargs.setdefault("TrackAmbiguityProcessor",
1126  result.popToolsAndMerge(MuonAmbiProcessorCfg(flags)))
1127  # I don't believe MuonHitTimingTool needs configuration.
1128  kwargs.setdefault("MuonPRDSelectionTool", result.popToolsAndMerge(
1129  MuonPRDSelectionToolCfg(flags)))
1130  kwargs.setdefault("MuonPRDSelectionToolStau", result.popToolsAndMerge(
1131  MuonPRDSelectionToolCfg(flags, MdtDriftCircleOnTrackCreator=staurotcreator)))
1132  kwargs.setdefault("MdtDriftCircleOnTrackCreator", result.popToolsAndMerge(
1134  kwargs.setdefault("MdtDriftCircleOnTrackCreatorStau", staurotcreator)
1135  # Now setup MuonInsideOutRecoTool property of MuonStauRecoTool. Long chain here! Could split for clarity. Another option would be to have a Stau flag on
1136  # shared tool functions.
1137  chamberholerecoverytool = result.popToolsAndMerge(MuonChamberHoleRecoveryToolCfg(flags,
1138  sTgcPrepDataContainer="",
1139  MMPrepDataContainer=""))
1140  seededsegmentfinder = result.popToolsAndMerge(MuonSeededSegmentFinderCfg(flags, name="MuonStauSeededSegmentFinder", MdtRotCreator=staurotcreator,
1141  SegmentMaker=segmentmaker, SegmentMakerNoHoles=segmentmaker))
1142  fitter = result.popToolsAndMerge(CombinedMuonTrackBuilderFitCfg(
1143  flags, name="CombinedStauTrackBuilderFit", MdtRotCreator=staurotcreator))
1144  from TrkConfig.TrkTrackSummaryToolConfig import MuonCombinedTrackSummaryToolCfg
1145  muon_combined_track_summary = result.popToolsAndMerge(
1147  muidsegmentregionrecovery = result.popToolsAndMerge(MuonSegmentRegionRecoveryToolCfg(flags, name="MuonStauSegmentRegionRecoveryTool", SeededSegmentFinder=seededsegmentfinder,
1148  RecoverMM=False, RecoverSTGC=False, MMRegionSelector="", STGCRegionSelector="",
1149  ChamberHoleRecoveryTool=chamberholerecoverytool, Fitter=fitter, TrackSummaryTool=muon_combined_track_summary))
1150  trackbuilder = result.popToolsAndMerge(CombinedMuonTrackBuilderCfg(
1151  flags, name="CombinedStauTrackBuilder", MdtRotCreator=staurotcreator, MuonHoleRecovery=muidsegmentregionrecovery))
1152  muoncandidatetrackbuilder = CompFactory.Muon.MuonCandidateTrackBuilderTool(
1153  name="MuonStauCandidateTrackBuilderTool", MuonTrackBuilder=trackbuilder)
1154  kwargs.setdefault("MuonInsideOutRecoTool", result.popToolsAndMerge(
1155  MuonInsideOutRecoToolCfg(flags, name='MuonStauInsideOutRecoTool', MuonCandidateTrackBuilderTool=muoncandidatetrackbuilder)))
1156  # Rest
1157 
1158  tool = CompFactory.MuonCombined.MuonStauRecoTool(name, **kwargs)
1159  result.setPrivateTools(tool)
1160  return result
1161 
1162 
1163 def MuonSystemExtensionToolCfg(flags, **kwargs):
1164  result = ComponentAccumulator()
1165 
1166  from TrackToCalo.TrackToCaloConfig import ParticleCaloExtensionToolCfg
1167  from MuonConfig.MuonRecToolsConfig import MuonEDMPrinterToolCfg
1168 
1169  kwargs.setdefault("Extrapolator", result.popToolsAndMerge(AtlasExtrapolatorCfg(flags)))
1170  kwargs.setdefault("Printer", result.addPublicTool(result.getPrimaryAndMerge(MuonEDMPrinterToolCfg(flags))) )
1171  kwargs.setdefault("ParticleCaloExtensionTool",
1172  result.popToolsAndMerge(ParticleCaloExtensionToolCfg(flags,
1173  name='MuonParticleCaloExtensionTool')))
1174 
1175 
1176  muon_ext_tool = CompFactory.Muon.MuonSystemExtensionTool("MuonSystemExtensionTool", **kwargs)
1177  result.setPrivateTools(muon_ext_tool)
1178  return result
1179 
1180 
1181 def MuTagMatchingToolCfg(flags, name='MuTagMatchingTool', **kwargs):
1182  from TrkConfig.AtlasExtrapolatorConfig import AtlasExtrapolatorCfg
1183  from TrkConfig.TrkExRungeKuttaPropagatorConfig import RungeKuttaPropagatorCfg
1184 
1185  #TODO: defaults in cxx
1186  kwargs.setdefault("AssumeLocalErrors", True)
1187  kwargs.setdefault("PhiCut", 30.)
1188  kwargs.setdefault("GlobalPhiCut", 1.)
1189  kwargs.setdefault("ThetaCut", 5.)
1190  kwargs.setdefault("GlobalThetaCut", 0.5)
1191  kwargs.setdefault("ThetaAngleCut", 5.)
1192  kwargs.setdefault("DoDistanceCut", True)
1193  kwargs.setdefault("CombinedPullCut", 3.0)
1194 
1195  result = AtlasExtrapolatorCfg(flags)
1196  kwargs.setdefault("IExtrapolator", result.popPrivateTools())
1197  kwargs.setdefault("Propagator", result.popToolsAndMerge(
1198  RungeKuttaPropagatorCfg(flags)))
1199  kwargs.setdefault("Printer", result.getPrimaryAndMerge(
1200  MuonEDMPrinterToolCfg(flags)))
1201  kwargs.setdefault("MuonSegmentHitSummary", result.popToolsAndMerge(
1203  kwargs.setdefault("MuonSegmentSelection", result.popToolsAndMerge(
1205 
1206  if "ResidualPullCalculator" not in kwargs:
1207  from TrkConfig.TrkResidualPullCalculatorConfig import (
1208  ResidualPullCalculatorCfg)
1209  kwargs.setdefault("ResidualPullCalculator", result.popToolsAndMerge(
1210  ResidualPullCalculatorCfg(flags)))
1211 
1212  from TrackingGeometryCondAlg.AtlasTrackingGeometryCondAlgConfig import (
1213  TrackingGeometryCondAlgCfg)
1214  acc = TrackingGeometryCondAlgCfg(flags)
1215  geom_cond_key = acc.getPrimary().TrackingGeometryWriteKey
1216  result.merge(acc)
1217  kwargs.setdefault("TrackingGeometryReadKey", geom_cond_key)
1218 
1219  tool = CompFactory.MuTagMatchingTool(name, **kwargs)
1220 
1221  result.addPublicTool(tool, primary=True)
1222  return result
1223 
1224 
1225 def MuTagAmbiguitySolverToolCfg(flags, name='MuTagAmbiguitySolverTool', **kwargs):
1226  from MuonConfig.MuonTrackBuildingConfig import MuonSegmentMatchingToolCfg
1227  #TODO: defaults in cxx
1228  kwargs.setdefault("RejectOuterEndcap", True)
1229  kwargs.setdefault("RejectMatchPhi", True)
1230  result = ComponentAccumulator()
1231  kwargs.setdefault("Printer", result.getPrimaryAndMerge(MuonEDMPrinterToolCfg(flags)))
1232  kwargs.setdefault("MuonSegmentMatchingTool", result.popToolsAndMerge(
1233  MuonSegmentMatchingToolCfg(flags, name='MuonSegmentMatchingTool', doPhiMatching=False)))
1234  # EJWM. Not sure where doPhiMatching is set to False in old, but this is what I see in configuration diffs
1235 
1236  tool = CompFactory.MuTagAmbiguitySolverTool(name, **kwargs)
1237  result.addPublicTool(tool, primary=True)
1238  return result
1239 
1240 
1241 def MuonSegmentTagToolCfg(flags, name="MuonSegmentTagTool", **kwargs):
1242  result = ComponentAccumulator()
1243  mu_tag_matching = result.getPrimaryAndMerge(MuTagMatchingToolCfg(flags))
1244  kwargs.setdefault("MuTagMatchingTool", mu_tag_matching)
1245 
1246  kwargs.setdefault("Printer", result.getPrimaryAndMerge(
1247  MuonEDMPrinterToolCfg(flags)))
1248  kwargs.setdefault("MuTagAmbiguitySolverTool", result.getPrimaryAndMerge(
1250  kwargs.setdefault("MuonSegmentSelectionTool", result.getPrimaryAndMerge(
1252  kwargs.setdefault("MuonSegmentHitSummaryTool", result.getPrimaryAndMerge(
1254 
1255  result.setPrivateTools(
1256  CompFactory.MuonCombined.MuonSegmentTagTool(name, **kwargs))
1257  return result
python.MuonRecToolsConfig.MuonAmbiProcessorCfg
def MuonAmbiProcessorCfg(flags, name="MuonAmbiProcessor", **kwargs)
Definition: MuonRecToolsConfig.py:144
python.MuonCombinedRecToolsConfig.MuidTrackCleanerCfg
def MuidTrackCleanerCfg(flags, name='MuidTrackCleaner', **kwargs)
Definition: MuonCombinedRecToolsConfig.py:445
python.MuonCombinedRecToolsConfig.CombinedMuonTagTestToolCfg
def CombinedMuonTagTestToolCfg(flags, name='CombinedMuonTagTestTool', **kwargs)
Definition: MuonCombinedRecToolsConfig.py:886
SystemOfUnits
python.MuonRecToolsConfig.MuonTrackSummaryHelperToolCfg
def MuonTrackSummaryHelperToolCfg(flags, name="MuonTrackSummaryHelperTool", **kwargs)
Definition: MuonRecToolsConfig.py:123
python.MuonTrackBuildingConfig.MooTrackBuilderCfg
def MooTrackBuilderCfg(flags, name="MooTrackBuilderTemplate", prefix="", doSegmentPhiMatching=True, **kwargs)
Definition: MuonTrackBuildingConfig.py:68
python.JetAnalysisCommon.ComponentAccumulator
ComponentAccumulator
Definition: JetAnalysisCommon.py:302
python.AtlasExtrapolatorToolsConfig.AtlasEnergyLossUpdatorCfg
def AtlasEnergyLossUpdatorCfg(flags, name='AtlasEnergyLossUpdator', **kwargs)
Definition: AtlasExtrapolatorToolsConfig.py:12
MuidCaloEnergyParam
python.MuonCombinedRecToolsConfig.ExtrapolateMuonToIPToolCfg
def ExtrapolateMuonToIPToolCfg(flags, name="ExtrapolateMuonToIPTool", **kwargs)
Definition: MuonCombinedRecToolsConfig.py:201
python.MuonRecToolsConfig.MuonSeededSegmentFinderCfg
def MuonSeededSegmentFinderCfg(flags, name="MuonSeededSegmentFinder", **kwargs)
Definition: MuonRecToolsConfig.py:64
python.MuonCombinedRecToolsConfig.MuonTrackQueryCfg
def MuonTrackQueryCfg(flags, name="MuonTrackQuery", **kwargs)
Definition: MuonCombinedRecToolsConfig.py:602
python.MuonCombinedRecToolsConfig.MuonAlignmentUncertToolPhiCfg
def MuonAlignmentUncertToolPhiCfg(flags, name="MuonAlignmentUncertToolPhi", **kwargs)
Definition: MuonCombinedRecToolsConfig.py:684
python.MuonCombinedRecToolsConfig.MuonDressingToolCfg
def MuonDressingToolCfg(flags, name="MuonDressingTool", **kwargs)
Definition: MuonCombinedRecToolsConfig.py:128
python.InDetTrackSelectorToolConfig.MuonCombinedInDetDetailedTrackSelectorToolCfg
def MuonCombinedInDetDetailedTrackSelectorToolCfg(flags, name="MuonCombinedInDetDetailedTrackSelectorTool", **kwargs)
Definition: InDetTrackSelectorToolConfig.py:125
python.MuonCombinedRecToolsConfig.MuidCaloEnergyToolParamCfg
def MuidCaloEnergyToolParamCfg(flags, name='MuidCaloEnergyToolParam', **kwargs)
Definition: MuonCombinedRecToolsConfig.py:496
python.MuonCombinedRecToolsConfig.MuonLayerSegmentMatchingToolCfg
def MuonLayerSegmentMatchingToolCfg(flags, name="MuonLayerSegmentMatchingTool", **kwargs)
Definition: MuonCombinedRecToolsConfig.py:994
python.MuonRIO_OnTrackCreatorToolConfig.MdtCalibWindowNumber
def MdtCalibWindowNumber(name)
Definition: MuonRIO_OnTrackCreatorToolConfig.py:19
python.MuonRecToolsConfig.MuonTrackScoringToolCfg
def MuonTrackScoringToolCfg(flags, name="MuonTrackScoringTool", **kwargs)
Definition: MuonRecToolsConfig.py:132
python.MuonCombinedRecToolsConfig.EMEO_MuonCombinedFitTagToolCfg
def EMEO_MuonCombinedFitTagToolCfg(flags, name="MuonCombinedFitTagTool_EMEO", **kwargs)
Definition: MuonCombinedRecToolsConfig.py:326
python.MuonCombinedRecToolsConfig.MuonMaterialProviderToolCfg
def MuonMaterialProviderToolCfg(flags, name="MuonTrkMaterialProviderTool", **kwargs)
Definition: MuonCombinedRecToolsConfig.py:58
AtlasTrackingGeometryCondAlgConfig.TrackingGeometryCondAlgCfg
def TrackingGeometryCondAlgCfg(flags, name='AtlasTrackingGeometryCondAlg', doMaterialValidation=False, **kwargs)
Definition: AtlasTrackingGeometryCondAlgConfig.py:131
python.MuonCombinedRecToolsConfig.MuonCreatorToolCfg
def MuonCreatorToolCfg(flags, name="MuonCreatorTool", **kwargs)
Definition: MuonCombinedRecToolsConfig.py:138
python.MuonCombinedRecToolsConfig.iPatFitterCfg
def iPatFitterCfg(flags, name='iPatFitter', **kwargs)
Definition: MuonCombinedRecToolsConfig.py:404
python.MuonCombinedRecToolsConfig.MuonCandidateToolCfg
def MuonCandidateToolCfg(flags, name="MuonCandidateTool", **kwargs)
Definition: MuonCombinedRecToolsConfig.py:222
python.MuonRecToolsConfig.MuonEDMPrinterToolCfg
def MuonEDMPrinterToolCfg(flags, name="MuonEDMPrinterTool", **kwargs)
Definition: MuonRecToolsConfig.py:10
python.TrkTrackSummaryToolConfig.MuonTrackSummaryToolCfg
def MuonTrackSummaryToolCfg(flags, name="MuonTrackSummaryTool", **kwargs)
Definition: TrkTrackSummaryToolConfig.py:143
python.MuonCombinedRecToolsConfig.MuidCaloEnergyToolCfg
def MuidCaloEnergyToolCfg(flags, name='MuidCaloEnergyTool', **kwargs)
Definition: MuonCombinedRecToolsConfig.py:524
python.MuonSegmentFindingConfig.MuonNSWSegmentFinderToolCfg
def MuonNSWSegmentFinderToolCfg(flags, name='MuonNSWSegmentFinderTool', **kwargs)
Definition: MuonSegmentFindingConfig.py:342
python.MuonCombinedRecToolsConfig.MuonCombinedFitTagToolCfg
def MuonCombinedFitTagToolCfg(flags, name="MuonCombinedFitTagTool", **kwargs)
Definition: MuonCombinedRecToolsConfig.py:301
python.MuonCombinedRecToolsConfig.MuonInDetForwardCandidateToolCfg
def MuonInDetForwardCandidateToolCfg(flags, name='InDetForwardCandidateTool', **kwargs)
Definition: MuonCombinedRecToolsConfig.py:27
python.MuonCombinedRecToolsConfig.MuidCaloTrackStateOnSurfaceCfg
def MuidCaloTrackStateOnSurfaceCfg(flags, name='MuidCaloTrackStateOnSurface', **kwargs)
Definition: MuonCombinedRecToolsConfig.py:547
python.MuonRecToolsConfig.MuonRefitToolCfg
def MuonRefitToolCfg(flags, name="MuonRefitTool", **kwargs)
Definition: MuonRecToolsConfig.py:279
python.TrkTrackSummaryToolConfig.MuonCombinedTrackSummaryToolCfg
def MuonCombinedTrackSummaryToolCfg(flags, name="CombinedMuonTrackSummary", **kwargs)
Definition: TrkTrackSummaryToolConfig.py:153
python.AtlasExtrapolatorToolsConfig.AtlasMultipleScatteringUpdatorCfg
def AtlasMultipleScatteringUpdatorCfg(flags, name="AtlasMultipleScatteringUpdator", **kwargs)
Definition: AtlasExtrapolatorToolsConfig.py:115
python.MuonCombinedRecToolsConfig.MuidMaterialAllocatorCfg
def MuidMaterialAllocatorCfg(flags, name='MuidMaterialAllocator', **kwargs)
Definition: MuonCombinedRecToolsConfig.py:383
python.MuonCombinedRecToolsConfig.EMEO_CombinedTrackBuilderFitCfg
def EMEO_CombinedTrackBuilderFitCfg(flags, name="CombinedTrackBuilderFit_EMEO", **kwargs)
Definition: MuonCombinedRecToolsConfig.py:842
python.MuonCombinedRecToolsConfig.InDetCandidateToolCfg
def InDetCandidateToolCfg(flags, name="InDetCandidateTool", **kwargs)
Definition: MuonCombinedRecToolsConfig.py:18
python.MuonCombinedRecToolsConfig.MuonMatchQualityCfg
def MuonMatchQualityCfg(flags, name='MuonMatchQuality', **kwargs)
Definition: MuonCombinedRecToolsConfig.py:858
python.AtlasExtrapolatorConfig.AtlasExtrapolatorCfg
def AtlasExtrapolatorCfg(flags, name='AtlasExtrapolator')
Definition: AtlasExtrapolatorConfig.py:63
python.TrkExRungeKuttaPropagatorConfig.RungeKuttaPropagatorCfg
def RungeKuttaPropagatorCfg(flags, name='AtlasRungeKuttaPropagator', **kwargs)
Definition: TrkExRungeKuttaPropagatorConfig.py:9
TrackToCaloConfig.ParticleCaloCellAssociationToolCfg
def ParticleCaloCellAssociationToolCfg(flags, name='ParticleCaloCellAssociationTool', **kwargs)
Definition: TrackToCaloConfig.py:72
python.MuonCombinedRecToolsConfig.MuidErrorOptimisationToolCfg
def MuidErrorOptimisationToolCfg(flags, name='MuidErrorOptimisationTool', **kwargs)
Definition: MuonCombinedRecToolsConfig.py:655
python.MuonTrackBuildingConfig.MuonChamberHoleRecoveryToolCfg
def MuonChamberHoleRecoveryToolCfg(flags, name="MuonChamberHoleRecoveryTool", **kwargs)
Definition: MuonTrackBuildingConfig.py:309
python.MuonCombinedRecToolsConfig.CaloMuonTagCfg
def CaloMuonTagCfg(flags, name="CaloMuonTag", **kwargs)
Definition: MuonCombinedRecToolsConfig.py:934
python.MuonCombinedRecToolsConfig.CombinedMuonTrackBuilderCfg
def CombinedMuonTrackBuilderCfg(flags, name='CombinedMuonTrackBuilder', **kwargs)
Definition: MuonCombinedRecToolsConfig.py:697
python.MuonCombinedRecToolsConfig.CombinedMuonTrackBuilderFitCfg
def CombinedMuonTrackBuilderFitCfg(flags, name='CombinedMuonTrackBuilderFit', **kwargs)
Definition: MuonCombinedRecToolsConfig.py:821
python.MuonGeometryConfig.TrackingVolumesSvcCfg
def TrackingVolumesSvcCfg(flags, name="TrackingVolumesSvc", **kwargs)
Definition: MuonGeometryConfig.py:10
python.MuonCombinedRecToolsConfig.MuTagAmbiguitySolverToolCfg
def MuTagAmbiguitySolverToolCfg(flags, name='MuTagAmbiguitySolverTool', **kwargs)
Definition: MuonCombinedRecToolsConfig.py:1225
python.MuonCombinedRecToolsConfig.MuonCombinedToolCfg
def MuonCombinedToolCfg(flags, name="MuonCombinedTool", **kwargs)
Definition: MuonCombinedRecToolsConfig.py:272
python.MuonCombinedRecToolsConfig.MuonStauRecoToolCfg
def MuonStauRecoToolCfg(flags, name="MuonStauRecoTool", **kwargs)
Definition: MuonCombinedRecToolsConfig.py:1087
python.TrkParticleCreatorConfig.MuonCaloParticleCreatorCfg
def MuonCaloParticleCreatorCfg(flags, name="MuonCaloParticleCreator", **kwargs)
Definition: TrkParticleCreatorConfig.py:376
python.MuonCombinedRecToolsConfig.MuonCaloEnergyToolCfg
def MuonCaloEnergyToolCfg(flags, name="MuonCaloEnergyTool", **kwargs)
Definition: MuonCombinedRecToolsConfig.py:37
python.TrkExSTEP_PropagatorConfig.AtlasSTEP_PropagatorCfg
def AtlasSTEP_PropagatorCfg(flags, name='AtlasSTEP_Propagator', **kwargs)
Definition: TrkExSTEP_PropagatorConfig.py:16
python.MuonRIO_OnTrackCreatorToolConfig.CscClusterOnTrackCreatorCfg
def CscClusterOnTrackCreatorCfg(flags, name="CscClusterOnTrackCreator", **kwargs)
Definition: MuonRIO_OnTrackCreatorToolConfig.py:34
python.MuonCombinedRecToolsConfig.MuidTrackIsolationCfg
def MuidTrackIsolationCfg(flags, name='MuidTrackIsolation', **kwargs)
Definition: MuonCombinedRecToolsConfig.py:513
python.MuonCombinedRecToolsConfig.MuidCaloEnergyParam
def MuidCaloEnergyParam(flags, name='MuidCaloEnergyParam', **kwargs)
Definition: MuonCombinedRecToolsConfig.py:478
python.MuonCombinedRecToolsConfig.MuonAlignmentUncertToolThetaCfg
def MuonAlignmentUncertToolThetaCfg(flags, name="MuonAlignmentUncertToolTheta", **kwargs)
Definition: MuonCombinedRecToolsConfig.py:672
python.MuonTrackBuildingConfig.EMEO_MuonChamberHoleRecoveryToolCfg
def EMEO_MuonChamberHoleRecoveryToolCfg(flags, name="MuonChamberRecovery_EMEO")
Definition: MuonTrackBuildingConfig.py:359
python.MuonCombinedRecToolsConfig.MuonSegmentTagToolCfg
def MuonSegmentTagToolCfg(flags, name="MuonSegmentTagTool", **kwargs)
Definition: MuonCombinedRecToolsConfig.py:1241
python.MuonSegmentFindingConfig.MuonLayerHoughAlgCfg
def MuonLayerHoughAlgCfg(flags, name="MuonLayerHoughAlg", **kwargs)
Definition: MuonSegmentFindingConfig.py:382
python.InDetTrackSelectorToolConfig.CaloTrkMuIdAlgTrackSelectorToolCfg
def CaloTrkMuIdAlgTrackSelectorToolCfg(flags, name='CaloTrkMuIdAlgTrackSelectorTool', **kwargs)
Definition: InDetTrackSelectorToolConfig.py:176
python.MuonCombinedRecToolsConfig.MuonSegmentSelectionToolCfg
def MuonSegmentSelectionToolCfg(flags, name="MuonSegmentSelectionTool", **kwargs)
Definition: MuonCombinedRecToolsConfig.py:1042
python.MuonCombinedRecToolsConfig.MuidMuonRecoveryCfg
def MuidMuonRecoveryCfg(flags, name='MuidMuonRecovery', **kwargs)
Definition: MuonCombinedRecToolsConfig.py:869
python.MuonCombinedRecToolsConfig.MdtDriftCircleOnTrackCreatorStauCfg
def MdtDriftCircleOnTrackCreatorStauCfg(flags, name="MdtDriftCircleOnTrackCreatorStau", **kwargs)
Definition: MuonCombinedRecToolsConfig.py:1077
python.TrkExRungeKuttaPropagatorConfig.MuonCombinedPropagatorCfg
def MuonCombinedPropagatorCfg(flags, name='MuonCombinedPropagator', **kwargs)
Definition: TrkExRungeKuttaPropagatorConfig.py:31
python.MuonCombinedRecToolsConfig.MuonCandidateTrackBuilderToolCfg
def MuonCandidateTrackBuilderToolCfg(flags, name="MuonCandidateTrackBuilderTool", **kwargs)
Definition: MuonCombinedRecToolsConfig.py:1033
python.MuonCombinedRecToolsConfig.EMEO_MuonCombinedToolCfg
def EMEO_MuonCombinedToolCfg(flags, name="MuonCombinedTool_EMEO", **kwargs)
Definition: MuonCombinedRecToolsConfig.py:337
LArGMConfig.LArGMCfg
def LArGMCfg(flags)
Definition: LArGMConfig.py:8
python.MuonCombinedRecToolsConfig.CaloMuonLikelihoodToolCfg
def CaloMuonLikelihoodToolCfg(flags, name='CaloMuonLikelihoodTool', **kwargs)
Definition: MuonCombinedRecToolsConfig.py:914
python.MuonCombinedRecToolsConfig.MuonCombinedDebuggerToolCfg
def MuonCombinedDebuggerToolCfg(flags, name="MuonCombinedDebuggerTool", **kwargs)
Definition: MuonCombinedRecToolsConfig.py:262
python.MuonCombinedRecToolsConfig.MuonSegmentHitSummaryToolCfg
def MuonSegmentHitSummaryToolCfg(flags, name="MuonSegmentHitSummaryTool", **kwargs)
Definition: MuonCombinedRecToolsConfig.py:108
python.AtlasExtrapolatorConfig.MuonExtrapolatorCfg
def MuonExtrapolatorCfg(flags, name="MuonExtrapolator", **kwargs)
Definition: AtlasExtrapolatorConfig.py:376
python.MuonSelectorToolsConfig.MuonSelectionToolCfg
def MuonSelectionToolCfg(flags, name="MuonSelectionTool", **kwargs)
Standard configuration of the MuonSelectionTool used in reconstruction & validation jobs The snippet ...
Definition: MuonSelectorToolsConfig.py:16
python.InDetTrackSelectorToolConfig.MuonCombinedInDetDetailedForwardTrackSelectorToolCfg
def MuonCombinedInDetDetailedForwardTrackSelectorToolCfg(flags, name='MuonCombinedInDetDetailedForwardTrackSelectorTool', **kwargs)
Definition: InDetTrackSelectorToolConfig.py:172
python.MuonCombinedRecToolsConfig.MuidCaloEnergyMeasCfg
def MuidCaloEnergyMeasCfg(flags, name='MuidCaloEnergyMeas', **kwargs)
Definition: MuonCombinedRecToolsConfig.py:483
python.MuonCombinedRecToolsConfig.MuTagMatchingToolCfg
def MuTagMatchingToolCfg(flags, name='MuTagMatchingTool', **kwargs)
Definition: MuonCombinedRecToolsConfig.py:1181
python.MuonCombinedRecToolsConfig.MuidMaterialEffectsOnTrackProviderCfg
def MuidMaterialEffectsOnTrackProviderCfg(flags, name='MuidMaterialEffectsOnTrackProvider', **kwargs)
Definition: MuonCombinedRecToolsConfig.py:579
python.TrkParticleCreatorConfig.MuonCombinedParticleCreatorCfg
def MuonCombinedParticleCreatorCfg(flags, name="MuonCombinedParticleCreator", **kwargs)
Definition: TrkParticleCreatorConfig.py:315
python.MuonCombinedRecToolsConfig.MuonCaloTagToolCfg
def MuonCaloTagToolCfg(flags, name='MuonCaloTagTool', **kwargs)
Definition: MuonCombinedRecToolsConfig.py:941
python.MuonRecToolsConfig.MuonTrackCleanerCfg
def MuonTrackCleanerCfg(flags, name="MuonTrackCleaner", seg=False, **kwargs)
Definition: MuonRecToolsConfig.py:159
python.MuonRIO_OnTrackCreatorToolConfig.MuonClusterOnTrackCreatorCfg
def MuonClusterOnTrackCreatorCfg(flags, name="MuonClusterOnTrackCreator", **kwargs)
Definition: MuonRIO_OnTrackCreatorToolConfig.py:96
python.MuonRIO_OnTrackCreatorToolConfig.MdtDriftCircleOnTrackCreatorCfg
def MdtDriftCircleOnTrackCreatorCfg(flags, name="MdtDriftCircleOnTrackCreator", **kwargs)
Definition: MuonRIO_OnTrackCreatorToolConfig.py:73
python.MuonGeometryConfig.MuonGeoModelCfg
def MuonGeoModelCfg(flags)
Definition: MuonGeometryConfig.py:28
python.MuonCombinedRecToolsConfig.MuonInsideOutRecoToolCfg
def MuonInsideOutRecoToolCfg(flags, name="MuonInsideOutRecoTool", **kwargs)
Definition: MuonCombinedRecToolsConfig.py:1005
python.MuonCombinedRecToolsConfig.iPatSLFitterCfg
def iPatSLFitterCfg(flags, name='iPatSLFitter', **kwargs)
Definition: MuonCombinedRecToolsConfig.py:437
python.MuonCombinedRecToolsConfig.EMEO_MuonSegmentRegionRecoveryToolCfg
def EMEO_MuonSegmentRegionRecoveryToolCfg(flags, name="MuonSegmentRegionRecoveryTool_EMEO")
Definition: MuonCombinedRecToolsConfig.py:619
python.MuonCombinedRecToolsConfig.EMEO_CombinedMuonTrackBuilderCfg
def EMEO_CombinedMuonTrackBuilderCfg(flags, name="MuonCombinedTrackBuilder_EMEO")
Definition: MuonCombinedRecToolsConfig.py:642
python.MuonCombinedRecToolsConfig.TrackDepositInCaloToolCfg
def TrackDepositInCaloToolCfg(flags, name='TrackDepositInCaloTool', **kwargs)
Definition: MuonCombinedRecToolsConfig.py:900
python.MuonCombinedRecToolsConfig.MuidCaloTrackStateOnSurfaceParamCfg
def MuidCaloTrackStateOnSurfaceParamCfg(flags, name='MuidCaloTrackStateOnSurfaceParam', **kwargs)
Definition: MuonCombinedRecToolsConfig.py:565
python.MuonCombinedRecToolsConfig.MuonLayerSegmentFinderToolCfg
def MuonLayerSegmentFinderToolCfg(flags, name="MuonLayerSegmentFinderTool", **kwargs)
Definition: MuonCombinedRecToolsConfig.py:964
python.MuonSegmentFindingConfig.Csc4dSegmentMakerCfg
def Csc4dSegmentMakerCfg(flags, name="Csc4dSegmentMaker", **kwargs)
Definition: MuonSegmentFindingConfig.py:335
python.MuonCombinedRecToolsConfig.CaloMuonScoreToolCfg
def CaloMuonScoreToolCfg(flags, name='CaloMuonScoreTool', **kwargs)
Definition: MuonCombinedRecToolsConfig.py:924
python.MuonCombinedRecToolsConfig.MuidMaterialEffectsOnTrackProviderParamCfg
def MuidMaterialEffectsOnTrackProviderParamCfg(flags, name='MuidMaterialEffectsOnTrackProviderParam', **kwargs)
Definition: MuonCombinedRecToolsConfig.py:591
python.MuonRIO_OnTrackCreatorToolConfig.MdtCalibToolForRotsCfg
def MdtCalibToolForRotsCfg(flags, name="MdtCalibrationTool", **kwargs)
Definition: MuonRIO_OnTrackCreatorToolConfig.py:62
python.MuonCombinedRecToolsConfig.MuonSystemExtensionToolCfg
def MuonSystemExtensionToolCfg(flags, **kwargs)
Definition: MuonCombinedRecToolsConfig.py:1163
python.MagFieldServicesConfig.AtlasFieldCacheCondAlgCfg
def AtlasFieldCacheCondAlgCfg(flags, **kwargs)
Definition: MagFieldServicesConfig.py:8
python.TrkResidualPullCalculatorConfig.ResidualPullCalculatorCfg
def ResidualPullCalculatorCfg(flags, name='ResidualPullCalculator', **kwargs)
Definition: TrkResidualPullCalculatorConfig.py:6
python.MuonTrackBuildingConfig.MuonSegmentRegionRecoveryToolCfg
def MuonSegmentRegionRecoveryToolCfg(flags, name="MuonSegmentRegionRecoveryTool", **kwargs)
Definition: MuonTrackBuildingConfig.py:217
python.SolenoidalIntersectorConfig.SolenoidalIntersectorCfg
def SolenoidalIntersectorCfg(flags, name='SolenoidalIntersector', **kwargs)
Definition: SolenoidalIntersectorConfig.py:7
python.MuonRecToolsConfig.MuonHitSummaryToolCfg
def MuonHitSummaryToolCfg(flags, name="MuonHitSummaryTool", **kwargs)
Definition: MuonRecToolsConfig.py:54
python.MuonSegmentFindingConfig.DCMathSegmentMakerCfg
def DCMathSegmentMakerCfg(flags, name='DCMathSegmentMaker', doSegmentT0Fit=False, **kwargs)
Definition: MuonSegmentFindingConfig.py:94
python.MuonSegmentFindingConfig.Csc2dSegmentMakerCfg
def Csc2dSegmentMakerCfg(flags, name="Csc2dSegmentMaker", **kwargs)
Definition: MuonSegmentFindingConfig.py:317
python.MuonCombinedRecToolsConfig.MuonSegmentConverterToolCfg
def MuonSegmentConverterToolCfg(flags, name="MuonSegmentConverterTool", **kwargs)
Definition: MuonCombinedRecToolsConfig.py:119
python.MuonTrackBuildingConfig.MuonSegmentMatchingToolCfg
def MuonSegmentMatchingToolCfg(flags, name="MuonSegmentMatchingTool", **kwargs)
Definition: MuonTrackBuildingConfig.py:152
python.MuonSegmentFindingConfig.MuonPRDSelectionToolCfg
def MuonPRDSelectionToolCfg(flags, name="MuonPRDSelectionTool", **kwargs)
Definition: MuonSegmentFindingConfig.py:364
python.MuonCombinedRecToolsConfig.MuonCombinedStacoTagToolCfg
def MuonCombinedStacoTagToolCfg(flags, name="MuonCombinedStacoTagTool", **kwargs)
Definition: MuonCombinedRecToolsConfig.py:366
python.MuonCombinedRecToolsConfig.MuonLayerAmbiguitySolverToolCfg
def MuonLayerAmbiguitySolverToolCfg(flags, name="MuonLayerAmbiguitySolverTool", **kwargs)
Definition: MuonCombinedRecToolsConfig.py:1060
TrackToCaloConfig.ParticleCaloExtensionToolCfg
def ParticleCaloExtensionToolCfg(flags, name='ParticleCaloExtensionTool', **kwargs)
Definition: TrackToCaloConfig.py:10