6from AthenaConfiguration.ComponentAccumulator
import ComponentAccumulator
7from AthenaConfiguration.ComponentFactory
import CompFactory
8from AthenaConfiguration.Enums
import BeamType
9from AthenaConfiguration.AccumulatorCache
import AccumulatorCache
10from TrkConfig.AtlasExtrapolatorConfig
import AtlasExtrapolatorCfg
11from MuonConfig.MuonRecToolsConfig
import MuonEDMPrinterToolCfg
12from MuonConfig.MuonTrackBuildingConfig
import MuonSegmentRegionRecoveryToolCfg
14from TrkConfig.AtlasExtrapolatorToolsConfig
import AtlasEnergyLossUpdatorCfg
15from AthenaCommon.SystemOfUnits
import GeV, mm
19 from InDetConfig.InDetTrackSelectorToolConfig
import MuonCombinedInDetDetailedTrackSelectorToolCfg
20 result = MuonCombinedInDetDetailedTrackSelectorToolCfg(flags)
21 kwargs.setdefault(
"TrackSelector", result.popPrivateTools())
22 result.setPrivateTools(
23 CompFactory.MuonCombined.InDetCandidateTool(name, **kwargs))
28 from InDetConfig.InDetTrackSelectorToolConfig
import MuonCombinedInDetDetailedForwardTrackSelectorToolCfg
29 result = MuonCombinedInDetDetailedForwardTrackSelectorToolCfg(flags)
30 kwargs.setdefault(
"TrackSelector", result.popPrivateTools())
31 kwargs.setdefault(
"FlagCandidatesAsSiAssociated",
True)
32 result.setPrivateTools(result.popToolsAndMerge(
38 from TrackToCalo.TrackToCaloConfig
import ParticleCaloCellAssociationToolCfg, ParticleCaloExtensionToolCfg
40 result = ParticleCaloExtensionToolCfg(
41 flags, name=
'MuonParticleCaloExtensionTool')
42 particle_calo_extension_tool = result.getPrimary()
44 particle_calo_cell_association_tool = result.popToolsAndMerge(
45 ParticleCaloCellAssociationToolCfg(flags, name=
'MuonCaloCellAssociationTool', ParticleCaloExtensionTool=particle_calo_extension_tool))
47 from TrkConfig.TrkParticleCreatorConfig
import MuonCaloParticleCreatorCfg
48 track_particle_creator = result.popToolsAndMerge(
49 MuonCaloParticleCreatorCfg(flags))
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)
59 from TrackingGeometryCondAlg.AtlasTrackingGeometryCondAlgConfig
import TrackingGeometryCondAlgCfg
60 from TrkConfig.AtlasExtrapolatorToolsConfig
import AtlasMultipleScatteringUpdatorCfg
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(
71 kwargs.setdefault(
"CaloMeasTool", calo_meas_tool)
72 result.addPublicTool(calo_meas_tool)
75 kwargs.setdefault(
"CaloParamTool", calo_param_tool)
76 result.addPublicTool(calo_param_tool)
78 multiple_scattering_tool = result.popToolsAndMerge(
79 AtlasMultipleScatteringUpdatorCfg(flags))
80 kwargs.setdefault(
"MultipleScatteringTool", multiple_scattering_tool)
81 result.addPublicTool(multiple_scattering_tool)
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)
92 energy_loss_updator = result.popToolsAndMerge(
93 AtlasEnergyLossUpdatorCfg(flags))
94 kwargs.setdefault(
"EnergyLossUpdator",
96 result.addPublicTool(energy_loss_updator)
98 track_isolation_tool = result.popToolsAndMerge(
100 kwargs.setdefault(
"TrackIsolationTool", track_isolation_tool)
101 result.addPublicTool(track_isolation_tool)
103 tool = CompFactory.Trk.TrkMaterialProviderTool(name=name, **kwargs)
104 result.setPrivateTools(tool)
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)
121 kwargs.setdefault(
"MuonSegmentHitSummaryTool", result.popPrivateTools())
123 tool = CompFactory.Muon.MuonSegmentConverterTool(name, **kwargs)
124 result.setPrivateTools(tool)
129 from MuonConfig.MuonRecToolsConfig
import MuonHitSummaryToolCfg
130 result = MuonHitSummaryToolCfg(flags)
131 kwargs.setdefault(
"MuonHitSummaryTool", result.popPrivateTools())
133 tool = CompFactory.MuonCombined.MuonDressingTool(name, **kwargs)
134 result.setPrivateTools(tool)
139 from TrackToCalo.TrackToCaloConfig
import ParticleCaloExtensionToolCfg
140 result = ComponentAccumulator()
142 muon_edm_printer = result.getPrimaryAndMerge(MuonEDMPrinterToolCfg(flags))
143 kwargs.setdefault(
"Printer", muon_edm_printer)
145 kwargs.setdefault(
"MuonPrinter", CompFactory.Rec.MuonPrintingTool(name=
'MuonPrintingTool',
146 MuonStationPrinter=muon_edm_printer))
148 kwargs.setdefault(
"ParticleCaloExtensionTool",
149 result.popToolsAndMerge(ParticleCaloExtensionToolCfg(flags,
150 name=
'MuonParticleCaloExtensionTool',
151 StartFromPerigee=
True)))
153 from TrkConfig.TrkParticleCreatorConfig
import MuonCombinedParticleCreatorCfg
154 kwargs.setdefault(
"TrackParticleCreator", result.popToolsAndMerge(
155 MuonCombinedParticleCreatorCfg(flags)))
157 from MuonConfig.MuonRecToolsConfig
import MuonAmbiProcessorCfg
158 kwargs.setdefault(
"AmbiguityProcessor", result.popToolsAndMerge(
159 MuonAmbiProcessorCfg(flags)))
161 from TrkConfig.TrkExRungeKuttaPropagatorConfig
import RungeKuttaPropagatorCfg
162 kwargs.setdefault(
"Propagator", result.popToolsAndMerge(
163 RungeKuttaPropagatorCfg(flags)))
164 kwargs.setdefault(
"MuonDressingTool", result.popToolsAndMerge(
166 kwargs.setdefault(
"AddMDTExtrasMuGirlLowBeta", flags.MuonCombined.addMDTExtrasMuGirlLowBeta)
170 kwargs.setdefault(
"CaloMaterialProvider", result.popToolsAndMerge(
173 kwargs.setdefault(
"TrackQuery", result.popToolsAndMerge(
176 if flags.Muon.SAMuonTrigger:
177 from TrkConfig.TrkTrackSummaryToolConfig
import MuonTrackSummaryToolCfg
178 kwargs.setdefault(
"TrackSummaryTool", result.popToolsAndMerge(
179 MuonTrackSummaryToolCfg(flags)))
181 from TrkConfig.TrkTrackSummaryToolConfig
import MuonCombinedTrackSummaryToolCfg
182 kwargs.setdefault(
"TrackSummaryTool", result.popToolsAndMerge(
183 MuonCombinedTrackSummaryToolCfg(flags)))
185 if flags.Muon.MuonTrigger:
186 kwargs.setdefault(
"MuonSelectionTool",
"")
187 kwargs.setdefault(
"UseCaloCells",
False)
188 kwargs.setdefault(
"CopyUInt8SummaryKeys", [])
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)
196 tool = CompFactory.MuonCombined.MuonCreatorTool(name, **kwargs)
197 result.setPrivateTools(tool)
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)))
208 if flags.Muon.MuonTrigger:
209 from TrkConfig.TrkTrackSummaryToolConfig
import MuonTrackSummaryToolCfg
210 kwargs.setdefault(
"TrackSummaryTool", result.popToolsAndMerge(
211 MuonTrackSummaryToolCfg(flags)))
213 from TrkConfig.TrkTrackSummaryToolConfig
import MuonCombinedTrackSummaryToolCfg
214 kwargs.setdefault(
"TrackSummaryTool", result.popToolsAndMerge(
215 MuonCombinedTrackSummaryToolCfg(flags)))
216 kwargs.setdefault(
"Printer", result.getPrimaryAndMerge(
217 MuonEDMPrinterToolCfg(flags)))
218 result.setPrivateTools(CompFactory.ExtrapolateMuonToIPTool(name, **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(
232 if flags.Muon.MuonTrigger
and flags.Beam.Type
is not BeamType.Cosmics:
234 kwargs.setdefault(
"TrackExtrapolationTool",
"")
236 kwargs.setdefault(
"TrackExtrapolationTool", result.popToolsAndMerge(
238 kwargs.setdefault(
"SegmentContainer",
"TrackMuonSegments")
239 kwargs.setdefault(
"AmbiguityProcessor", result.popToolsAndMerge(
240 MuonAmbiProcessorCfg(flags)))
242 from TrkConfig.TrkTrackSummaryToolConfig
import MuonTrackSummaryToolCfg
243 kwargs.setdefault(
"TrackSummaryTool", result.popToolsAndMerge(
244 MuonTrackSummaryToolCfg(flags)))
248 if flags.Beam.Type
is BeamType.Cosmics:
249 kwargs.setdefault(
"ExtrapolationStrategy", 1)
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)
257 tool = CompFactory.MuonCombined.MuonCandidateTool(name, **kwargs)
258 result.setPrivateTools(tool)
263 result = ComponentAccumulator()
264 match_quality = CompFactory.Rec.MuonMatchQuality(
266 kwargs.setdefault(
"MuonMatchQuality", match_quality)
267 tool = CompFactory.MuonCombined.MuonCombinedDebuggerTool(name, **kwargs)
268 result.setPrivateTools(tool)
274 result = ComponentAccumulator()
275 kwargs.setdefault(
"Printer", result.getPrimaryAndMerge(
276 MuonEDMPrinterToolCfg(flags)))
278 if flags.MuonCombined.doCombinedFit:
281 if flags.MuonCombined.doStatisticalCombination
and flags.Beam.Type
is not BeamType.Cosmics:
285 kwargs.setdefault(
"MuonCombinedTagTools", tools)
286 kwargs.setdefault(
"MuonCombinedDebuggerTool", result.popToolsAndMerge(
291 kwargs.setdefault(
"AlignmentUncertTool", result.getPublicTool(
292 'MuonAlignmentUncertToolTheta'))
294 kwargs.setdefault(
"DeltaEtaPreSelection", 0.2)
295 kwargs.setdefault(
"DeltaPhiPreSelection", 0.2)
296 tool = CompFactory.MuonCombined.MuonCombinedTool(name, **kwargs)
297 result.setPrivateTools(tool)
302 if flags.Muon.MuonTrigger:
303 kwargs.setdefault(
"VertexContainer",
"")
305 result = ComponentAccumulator()
306 kwargs.setdefault(
"TrackBuilder", result.popToolsAndMerge(
309 kwargs.setdefault(
"Printer", result.getPrimaryAndMerge(
310 MuonEDMPrinterToolCfg(flags)))
312 kwargs.setdefault(
"TrackQuery", result.popToolsAndMerge(
314 kwargs.setdefault(
"MatchQuality", result.popToolsAndMerge(
317 from MuonConfig.MuonRecToolsConfig
import MuonTrackScoringToolCfg
318 kwargs.setdefault(
"TrackScoringTool", result.popToolsAndMerge(
319 MuonTrackScoringToolCfg(flags)))
323 if flags.Beam.Type
is BeamType.Cosmics
and (
not flags.BField.endcapToroidOn
and not flags.BField.solenoidOn):
324 kwargs.setdefault(
"MomentumBalanceCut", 1e6)
326 tool = CompFactory.MuonCombined.MuonCombinedFitTagTool(name, **kwargs)
327 result.setPrivateTools(tool)
332 result = ComponentAccumulator()
333 kwargs.setdefault(
"Printer", result.getPrimaryAndMerge(
334 MuonEDMPrinterToolCfg(flags)))
335 kwargs.setdefault(
"TagTool", result.popToolsAndMerge(
337 kwargs.setdefault(
"Extrapolator", result.popToolsAndMerge(
338 AtlasExtrapolatorCfg(flags)))
340 tool = CompFactory.MuonCombined.MuonCombinedStacoTagTool(name, **kwargs)
341 result.setPrivateTools(tool)
348 from TrkConfig.TrkExSTEP_PropagatorConfig
import AtlasSTEP_PropagatorCfg
349 kwargs.setdefault(
"AggregateMaterial",
True)
350 kwargs.setdefault(
"AllowReordering",
False)
352 result = AtlasExtrapolatorCfg(flags)
353 kwargs.setdefault(
"Extrapolator", result.popPrivateTools())
355 kwargs.setdefault(
"STEP_Propagator", result.popToolsAndMerge(
356 AtlasSTEP_PropagatorCfg(flags, name=
"AtlasSTEP_Propagator")))
357 from TrackingGeometryCondAlg.AtlasTrackingGeometryCondAlgConfig
import TrackingGeometryCondAlgCfg
358 result.merge(TrackingGeometryCondAlgCfg(flags))
359 kwargs.setdefault(
"TrackingGeometryReadKey",
"AtlasTrackingGeometry")
361 tool = CompFactory.Trk.MaterialAllocator(name, **kwargs)
362 result.setPrivateTools(tool)
369 from TrkConfig.SolenoidalIntersectorConfig
import SolenoidalIntersectorCfg
370 from TrkConfig.TrkExSTEP_PropagatorConfig
import AtlasSTEP_PropagatorCfg
372 kwargs.setdefault(
"AggregateMaterial",
True)
373 kwargs.setdefault(
"FullCombinedFit",
True)
375 kwargs.setdefault(
"MaterialAllocator", result.popPrivateTools())
378 kwargs.setdefault(
'SolenoidalIntersector', result.popToolsAndMerge(
379 SolenoidalIntersectorCfg(flags)))
380 kwargs.setdefault(
'Propagator', result.popToolsAndMerge(
381 AtlasSTEP_PropagatorCfg(flags)))
383 if flags.Muon.MuonTrigger:
384 kwargs.setdefault(
"MaxIterations", 15)
385 if flags.Muon.SAMuonTrigger:
386 from TrkConfig.TrkTrackSummaryToolConfig
import MuonTrackSummaryToolCfg
387 kwargs.setdefault(
"TrackSummaryTool", result.popToolsAndMerge(
388 MuonTrackSummaryToolCfg(flags)))
390 from TrkConfig.TrkTrackSummaryToolConfig
import MuonCombinedTrackSummaryToolCfg
391 kwargs.setdefault(
"TrackSummaryTool", result.popToolsAndMerge(
392 MuonCombinedTrackSummaryToolCfg(flags)))
394 tool = CompFactory.Trk.iPatFitter(name, **kwargs)
395 result.setPrivateTools(tool)
400 kwargs.setdefault(
"LineFit",
True)
401 kwargs.setdefault(
"LineMomentum", flags.Muon.straightLineFitMomentum)
408 from MuonConfig.MuonRecToolsConfig
import MuonTrackCleanerCfg
409 from TrkConfig.AtlasExtrapolatorConfig
import AtlasExtrapolatorCfg
410 if flags.Beam.Type
is BeamType.Cosmics:
411 kwargs.setdefault(
"PullCut", 5.0)
412 kwargs.setdefault(
"PullCutPhi", 10.0)
414 kwargs.setdefault(
"PullCut", 4.0)
415 kwargs.setdefault(
"PullCutPhi", 4.0)
416 result = ComponentAccumulator()
417 if flags.Muon.MuonTrigger:
418 kwargs.setdefault(
"Iterate",
False)
419 kwargs.setdefault(
"RecoverOutliers",
False)
420 kwargs.setdefault(
"Fitter", result.popToolsAndMerge(
431 kwargs.setdefault(
"MaxAvePullSumPerChamber", 3.5)
432 kwargs.setdefault(
"Chi2Cut", 100.0)
433 kwargs.setdefault(
"Extrapolator", result.getPrimaryAndMerge(
434 AtlasExtrapolatorCfg(flags)))
435 result.setPrivateTools(result.popToolsAndMerge(
436 MuonTrackCleanerCfg(flags, name, **kwargs)))
441 kwargs.setdefault(
"Cosmics", flags.Beam.Type
is BeamType.Cosmics)
442 return CompFactory.Rec.MuidCaloEnergyParam(name, **kwargs)
446 result = ComponentAccumulator()
448 kwargs.setdefault(
"CaloParamTool", muidcaloenergyparam)
451 kwargs.setdefault(
"CellContainerLocation",
"AllCalo")
452 kwargs.setdefault(
"NoiseThresInSigmas", 4.)
453 tool = CompFactory.Rec.MuidCaloEnergyMeas(name, **kwargs)
454 result.setPrivateTools(tool)
462 kwargs.setdefault(
"CaloMeasTool", result.popPrivateTools())
463 kwargs.setdefault(
"EnergyLossMeasurement",
False)
466 if flags.Beam.Type
is BeamType.Cosmics:
467 kwargs.setdefault(
"Cosmics",
True)
468 kwargs.setdefault(
"TrackIsolationTool", result.popToolsAndMerge(
471 result.setPrivateTools(CompFactory.Rec.MuidCaloEnergyTool(name, **kwargs))
476 from MagFieldServices.MagFieldServicesConfig
import AtlasFieldCacheCondAlgCfg
477 kwargs.setdefault(
"InDetTracksLocation",
478 "CombinedInDetTracks" if flags.Detector.GeometryID
else "CombinedITkTracks")
480 result = AtlasFieldCacheCondAlgCfg(flags)
481 tool = CompFactory.Rec.MuidTrackIsolation(name, **kwargs)
482 result.setPrivateTools(tool)
488 from LArGeoAlgsNV.LArGMConfig
import LArGMCfg
489 result.merge(LArGMCfg(flags))
490 kwargs.setdefault(
"CaloMeasTool", result.popPrivateTools())
492 kwargs.setdefault(
"MinFinalEnergy", 1.0*GeV)
493 kwargs.setdefault(
"MinMuonPt", 10.0*GeV)
494 kwargs.setdefault(
"MopParametrization",
True)
495 if flags.Muon.MuonTrigger:
496 kwargs.setdefault(
"EnergyLossMeasurement",
False)
497 kwargs.setdefault(
"TrackIsolation",
False)
499 kwargs.setdefault(
"EnergyLossMeasurement",
True)
500 kwargs.setdefault(
"TrackIsolation",
True)
502 kwargs.setdefault(
"TrackIsolationTool", result.popToolsAndMerge(
504 kwargs.setdefault(
"Cosmics", flags.Beam.Type
is BeamType.Cosmics)
505 result.setPrivateTools(CompFactory.Rec.MuidCaloEnergyTool(name, **kwargs))
510 result = ComponentAccumulator()
511 from TrkConfig.TrkExRungeKuttaPropagatorConfig
import RungeKuttaPropagatorCfg
512 kwargs.setdefault(
"Propagator", result.popToolsAndMerge(
513 RungeKuttaPropagatorCfg(flags)))
514 kwargs.setdefault(
"MinRemainingEnergy", 0.2*GeV)
515 kwargs.setdefault(
"ParamPtCut", 3.0*GeV)
516 kwargs.setdefault(
"CaloEnergyDeposit", result.popToolsAndMerge(
518 kwargs.setdefault(
"CaloEnergyParam", result.popToolsAndMerge(
522 tool = CompFactory.Rec.MuidCaloTrackStateOnSurface(name, **kwargs)
523 result.setPrivateTools(tool)
528 result = ComponentAccumulator()
529 from TrkConfig.TrkExRungeKuttaPropagatorConfig
import RungeKuttaPropagatorCfg
530 kwargs.setdefault(
"Propagator", result.popToolsAndMerge(
531 RungeKuttaPropagatorCfg(flags)))
532 kwargs.setdefault(
"MinRemainingEnergy", 0.2*GeV)
533 kwargs.setdefault(
"ParamPtCut", 3.0*GeV)
536 tool = CompFactory.Rec.MuidCaloTrackStateOnSurface(name, **kwargs)
537 result.setPrivateTools(tool)
543 kwargs.setdefault(
"TSOSTool", result.popPrivateTools())
545 kwargs.setdefault(
"TSOSToolParam", acc.popPrivateTools())
547 kwargs.setdefault(
"Cosmics", flags.Beam.Type
is BeamType.Cosmics)
548 tool = CompFactory.Rec.MuidMaterialEffectsOnTrackProvider(name, **kwargs)
549 result.setPrivateTools(tool)
555 muidtsosparam = result.popPrivateTools()
556 kwargs.setdefault(
"TSOSTool", muidtsosparam)
557 kwargs.setdefault(
"TSOSToolParam", muidtsosparam)
558 kwargs.setdefault(
"Cosmics", flags.Beam.Type
is BeamType.Cosmics)
559 tool = CompFactory.Rec.MuidMaterialEffectsOnTrackProvider(name, **kwargs)
560 result.setPrivateTools(tool)
565 from MuonConfig.MuonRIO_OnTrackCreatorToolConfig
import MdtDriftCircleOnTrackCreatorCfg
566 result = MdtDriftCircleOnTrackCreatorCfg(flags)
567 kwargs.setdefault(
"MdtRotCreator", result.popPrivateTools())
568 from TrackingGeometryCondAlg.AtlasTrackingGeometryCondAlgConfig
import TrackingGeometryCondAlgCfg
569 result.merge(TrackingGeometryCondAlgCfg(flags))
570 kwargs.setdefault(
"TrackingGeometryReadKey",
"AtlasTrackingGeometry")
573 kwargs.setdefault(
"Fitter", acc.popPrivateTools())
576 tool = CompFactory.Rec.MuonTrackQuery(name, **kwargs)
577 result.setPrivateTools(tool)
581 from MuonConfig.MuonRecToolsConfig
import MuonTrackSummaryHelperToolCfg, MuonRefitToolCfg
582 result = ComponentAccumulator()
583 kwargs.setdefault(
"TrackSummaryTool", result.popToolsAndMerge(
584 MuonTrackSummaryHelperToolCfg(flags)))
586 if flags.IOVDb.DatabaseInstance ==
'COMP200' or \
587 'HLT' in flags.IOVDb.GlobalTag
or flags.Common.isOnline
or flags.Muon.MuonTrigger:
589 kwargs.setdefault(
"RefitTool", result.popToolsAndMerge(MuonRefitToolCfg(
590 flags, name=
"MuidRefitTool", AlignmentErrors=useAlignErrs,
592 tool = CompFactory.Muon.MuonErrorOptimisationTool(name, **kwargs)
593 result.setPrivateTools(tool)
598 result = ComponentAccumulator()
599 from MuonConfig.MuonGeometryConfig
import TrackingVolumesSvcCfg
600 kwargs.setdefault(
"TrackingVolumesSvc", result.getPrimaryAndMerge(TrackingVolumesSvcCfg(flags)))
601 kwargs.setdefault(
"HistoName",
"ThetaScattering")
603 "InFile",
"MuonCombinedBaseTools/AlignmentUncertainties/201029_initial/ID_MS_Uncertainties.root")
604 tool = CompFactory.Muon.MuonAlignmentUncertTool(name, **kwargs)
605 result.addPublicTool(tool)
610 result = ComponentAccumulator()
611 kwargs.setdefault(
"HistoName",
"PhiScattering")
612 from MuonConfig.MuonGeometryConfig
import TrackingVolumesSvcCfg
613 kwargs.setdefault(
"TrackingVolumesSvc", result.getPrimaryAndMerge(TrackingVolumesSvcCfg(flags)))
615 "InFile",
"MuonCombinedBaseTools/AlignmentUncertainties/201029_initial/ID_MS_Uncertainties.root")
616 tool = CompFactory.Muon.MuonAlignmentUncertTool(name, **kwargs)
617 result.addPublicTool(tool)
623 from AthenaCommon.SystemOfUnits
import meter
624 from MuonConfig.MuonRIO_OnTrackCreatorToolConfig
import CscClusterOnTrackCreatorCfg, MdtDriftCircleOnTrackCreatorCfg, MuonClusterOnTrackCreatorCfg
625 from TrkConfig.TrkTrackSummaryToolConfig
import MuonCombinedTrackSummaryToolCfg
627 result = ComponentAccumulator()
629 from MuonConfig.MuonGeometryConfig
import TrackingVolumesSvcCfg
630 kwargs.setdefault(
"TrackingVolumesSvc", result.getPrimaryAndMerge(TrackingVolumesSvcCfg(flags)))
632 kwargs.setdefault(
"CaloEnergyParam", result.popToolsAndMerge(
634 kwargs.setdefault(
"CaloTSOS", result.popToolsAndMerge(
636 kwargs.setdefault(
"Cleaner", result.popToolsAndMerge(
639 kwargs.setdefault(
"AlignmentUncertToolPhi",
640 result.getPublicTool(
'MuonAlignmentUncertToolPhi'))
642 kwargs.setdefault(
"AlignmentUncertToolTheta",
643 result.getPublicTool(
'MuonAlignmentUncertToolTheta'))
645 if flags.Detector.GeometryCSC
and not flags.Muon.MuonTrigger:
646 kwargs.setdefault(
"CscRotCreator", result.popToolsAndMerge(
647 CscClusterOnTrackCreatorCfg(flags)))
649 kwargs.setdefault(
"CscRotCreator",
"")
651 kwargs.setdefault(
"Extrapolator", result.popToolsAndMerge(
652 AtlasExtrapolatorCfg(flags)))
657 kwargs.setdefault(
"MaterialAllocator", result.popToolsAndMerge(
659 kwargs.setdefault(
"MdtRotCreator", result.popToolsAndMerge(
660 MdtDriftCircleOnTrackCreatorCfg(flags)))
661 kwargs.setdefault(
"MuonRotCreator", result.popToolsAndMerge(
662 MuonClusterOnTrackCreatorCfg(flags)))
665 from TrackingGeometryCondAlg.AtlasTrackingGeometryCondAlgConfig
import (
666 TrackingGeometryCondAlgCfg)
668 geom_cond_key = result.getPrimaryAndMerge(
669 TrackingGeometryCondAlgCfg(flags)).TrackingGeometryWriteKey
670 kwargs.setdefault(
"TrackingGeometryReadKey", geom_cond_key)
672 kwargs.setdefault(
"CleanCombined",
True)
673 kwargs.setdefault(
"CleanStandalone",
True)
674 kwargs.setdefault(
"BadFitChi2", 2.5)
675 kwargs.setdefault(
"LargeMomentumError", 0.5)
676 kwargs.setdefault(
"LineMomentum", flags.Muon.straightLineFitMomentum)
677 kwargs.setdefault(
"LowMomentum", 10.*GeV)
678 kwargs.setdefault(
"MinEnergy", 0.3*GeV)
679 kwargs.setdefault(
"PerigeeAtSpectrometerEntrance",
False)
680 kwargs.setdefault(
"ReallocateMaterial",
False)
681 kwargs.setdefault(
"Vertex2DSigmaRPhi", 100.*mm)
682 kwargs.setdefault(
"Vertex3DSigmaRPhi", 6.*mm)
683 kwargs.setdefault(
"Vertex3DSigmaZ", 60.*mm)
684 kwargs.setdefault(
"UseCaloTG",
True)
686 kwargs.setdefault(
"CaloMaterialProvider", result.popToolsAndMerge(
688 kwargs.setdefault(
"TrackQuery", result.popToolsAndMerge(
691 if flags.Muon.SAMuonTrigger:
692 from TrkConfig.TrkTrackSummaryToolConfig
import MuonTrackSummaryToolCfg
693 kwargs.setdefault(
"TrackSummaryTool", result.popToolsAndMerge(
694 MuonTrackSummaryToolCfg(flags)))
696 kwargs.setdefault(
"TrackSummaryTool", result.popToolsAndMerge(
697 MuonCombinedTrackSummaryToolCfg(flags)))
699 from TrkConfig.TrkExRungeKuttaPropagatorConfig
import MuonCombinedPropagatorCfg, RungeKuttaPropagatorCfg
701 if flags.Muon.MuonTrigger:
702 propagator = result.popToolsAndMerge(RungeKuttaPropagatorCfg(flags))
704 propagator = result.popToolsAndMerge(MuonCombinedPropagatorCfg(flags))
705 kwargs.setdefault(
"Propagator", propagator)
706 kwargs.setdefault(
"SLPropagator", propagator)
707 kwargs.setdefault(
"Printer", result.getPrimaryAndMerge(
708 MuonEDMPrinterToolCfg(flags)))
710 if flags.Beam.Type
is BeamType.Cosmics:
711 kwargs.setdefault(
"MdtRotCreator",
"")
712 kwargs.setdefault(
"MuonRotCreator",
"")
713 kwargs.setdefault(
"LowMomentum", 1.5*GeV)
714 kwargs.setdefault(
"ReallocateMaterial",
False)
715 kwargs.setdefault(
"Vertex2DSigmaRPhi", 100.*mm)
716 kwargs.setdefault(
"Vertex3DSigmaRPhi", 100.*mm)
717 kwargs.setdefault(
"Vertex3DSigmaZ", 1.*meter)
720 if flags.Muon.enableErrorTuning
and 'MuonErrorOptimizer' not in kwargs:
722 flags, name=
"MuidErrorOptimisationTool", PrepareForFit=
False, RecreateStartingParameters=
False))
723 kwargs.setdefault(
"MuonErrorOptimizer", erroropt)
725 kwargs.setdefault(
"MuonErrorOptimizer",
"")
727 if flags.Muon.MuonTrigger:
728 kwargs.setdefault(
"MuonHoleRecovery",
"")
730 if "MuonHoleRecovery" not in kwargs:
732 muon_combined_track_summary = result.popToolsAndMerge(
733 MuonCombinedTrackSummaryToolCfg(flags))
734 acc = MuonSegmentRegionRecoveryToolCfg(
735 flags, name=
"MuidSegmentRegionRecoveryTool", TrackSummaryTool=muon_combined_track_summary)
736 kwargs.setdefault(
"MuonHoleRecovery", acc.popPrivateTools())
739 if flags.Muon.doSegmentT0Fit:
740 kwargs.setdefault(
"MdtRotCreator",
"")
741 tool = CompFactory.Rec.CombinedMuonTrackBuilder(name, **kwargs)
742 result.setPrivateTools(tool)
749 from MuonConfig.MuonTrackBuildingConfig
import MuonChamberHoleRecoveryToolCfg
750 result = ComponentAccumulator()
751 kwargs.setdefault(
"PerigeeAtSpectrometerEntrance",
True)
752 kwargs.setdefault(
"UseCaloTG",
False)
753 if flags.Muon.MuonTrigger:
754 kwargs.setdefault(
"MuonErrorOptimizer",
"")
756 kwargs.setdefault(
"MuonErrorOptimizer", result.popToolsAndMerge(
758 kwargs.setdefault(
"MuonHoleRecovery", result.popToolsAndMerge(
759 MuonChamberHoleRecoveryToolCfg(flags)))
762 flags, name, **kwargs))
763 result.setPrivateTools(tool)
768 kwargs.setdefault(
"TagTool", result.popPrivateTools())
769 kwargs.setdefault(
"TrackQuery", result.popToolsAndMerge(
772 tool = CompFactory.Rec.MuonMatchQuality(name, **kwargs)
773 result.setPrivateTools(tool)
778 result = AtlasExtrapolatorCfg(flags)
779 kwargs.setdefault(
"Extrapolator", result.popPrivateTools())
780 kwargs.setdefault(
"TrackBuilder", result.popToolsAndMerge(
783 if "ResidualPullCalculator" not in kwargs:
784 from TrkConfig.TrkResidualPullCalculatorConfig
import (
785 ResidualPullCalculatorCfg)
786 kwargs.setdefault(
"ResidualPullCalculator", result.popToolsAndMerge(
787 ResidualPullCalculatorCfg(flags)))
789 tool = CompFactory.Rec.MuidMuonRecovery(name, **kwargs)
790 result.setPrivateTools(tool)
795 result = AtlasExtrapolatorCfg(flags)
796 kwargs.setdefault(
"ExtrapolatorTool", result.popPrivateTools())
797 kwargs.setdefault(
"Chi2Cut", 50000.)
798 from TrackingGeometryCondAlg.AtlasTrackingGeometryCondAlgConfig
import TrackingGeometryCondAlgCfg
799 result.merge(TrackingGeometryCondAlgCfg(flags))
800 kwargs.setdefault(
"TrackingGeometryReadKey",
"AtlasTrackingGeometry")
801 tool = CompFactory.MuonCombined.MuonTrackTagTestTool(name, **kwargs)
802 result.setPrivateTools(tool)
809 from TrackToCalo.TrackToCaloConfig
import ParticleCaloExtensionToolCfg, ParticleCaloCellAssociationToolCfg
810 result = ComponentAccumulator()
811 kwargs.setdefault(
"ParticleCaloExtensionTool",
812 result.popToolsAndMerge(ParticleCaloExtensionToolCfg(flags)))
813 kwargs.setdefault(
"ExtrapolatorHandle", result.popToolsAndMerge(
814 AtlasExtrapolatorCfg(flags)))
815 kwargs.setdefault(
"ParticleCaloCellAssociationTool",
816 result.popToolsAndMerge(ParticleCaloCellAssociationToolCfg(flags, name=
"Rec::ParticleCaloCellAssociationTool")))
817 tool = CompFactory.TrackDepositInCaloTool(name, **kwargs)
818 result.setPrivateTools(tool)
824 from TrackToCalo.TrackToCaloConfig
import ParticleCaloCellAssociationToolCfg
825 result = ComponentAccumulator()
826 kwargs.setdefault(
"ParticleCaloCellAssociationTool",
827 result.popToolsAndMerge(ParticleCaloCellAssociationToolCfg(flags)))
828 tool = CompFactory.CaloMuonScoreTool(name, **kwargs)
829 result.setPrivateTools(tool)
834 result = ComponentAccumulator()
835 the_tool = CompFactory.CaloMuonTag(name, **kwargs)
836 result.setPrivateTools(the_tool)
841 result = ComponentAccumulator()
842 kwargs.setdefault(
"CaloMuonTagLoose",
843 result.popToolsAndMerge(
CaloMuonTagCfg(flags, name=
"CaloMuonTagLoose", TagMode=
"Loose")))
844 kwargs.setdefault(
"CaloMuonTagTight",
846 kwargs.setdefault(
"CaloMuonScoreTool",
848 kwargs.setdefault(
"TrackDepositInCaloTool",
850 from InDetConfig.InDetTrackSelectorToolConfig
import CaloTrkMuIdAlgTrackSelectorToolCfg
851 kwargs.setdefault(
"TrackSelectorTool",
852 result.popToolsAndMerge(CaloTrkMuIdAlgTrackSelectorToolCfg(flags)))
853 the_tool = CompFactory.MuonCombined.MuonCaloTagTool(name, **kwargs)
854 result.setPrivateTools(the_tool)
861 from MuonConfig.MuonSegmentFindingConfig
import DCMathSegmentMakerCfg, MuonNSWSegmentFinderToolCfg, MuonPRDSelectionToolCfg
862 result = ComponentAccumulator()
864 from MuonConfig.MuonSegmentFindingConfig
import Csc2dSegmentMakerCfg, Csc4dSegmentMakerCfg
865 kwargs.setdefault(
"Csc2DSegmentMaker", result.popToolsAndMerge(
866 Csc2dSegmentMakerCfg(flags))
if flags.Detector.GeometryCSC
else "")
867 kwargs.setdefault(
"Csc4DSegmentMaker", result.popToolsAndMerge(
868 Csc4dSegmentMakerCfg(flags))
if flags.Detector.GeometryCSC
else "")
870 kwargs.setdefault(
"MuonPRDSelectionTool", result.popToolsAndMerge(
871 MuonPRDSelectionToolCfg(flags)))
872 kwargs.setdefault(
"SegmentMaker", result.popToolsAndMerge(
873 DCMathSegmentMakerCfg(flags, name=
"DCMathSegmentMaker")))
874 kwargs.setdefault(
"NSWMuonClusterSegmentFinderTool",
875 result.popToolsAndMerge(MuonNSWSegmentFinderToolCfg(flags, name=
"MuonNSWSegmentFinderTool")))
878 from AthenaConfiguration.Enums
import LHCPeriod
879 if flags.GeoModel.Run < LHCPeriod.Run3
or flags.Muon.MuonTrigger:
880 kwargs.setdefault(
"InSegmentContainer",
"")
881 kwargs.setdefault(
"MuonLayerSegmentMatchingTool",
"")
883 kwargs.setdefault(
"MuonLayerSegmentMatchingTool", result.popToolsAndMerge(
885 tool = CompFactory.Muon.MuonLayerSegmentFinderTool(name, **kwargs)
886 result.setPrivateTools(tool)
891 result = AtlasExtrapolatorCfg(flags)
892 kwargs.setdefault(
"Extrapolator", result.popPrivateTools())
894 kwargs.setdefault(
"MatchTool", MuTagTool)
896 tool = CompFactory.Muon.MuonLayerSegmentMatchingTool(name, **kwargs)
897 result.setPrivateTools(tool)
902 from MuonConfig.MuonRecToolsConfig
import MuonAmbiProcessorCfg
903 if flags.Muon.MuonTrigger:
904 kwargs.setdefault(
"VertexContainer",
"")
905 result = ComponentAccumulator()
906 kwargs.setdefault(
"MuonEDMPrinterTool", result.getPrimaryAndMerge(MuonEDMPrinterToolCfg(flags)))
907 layersegmentfindertool = result.popToolsAndMerge(
909 kwargs.setdefault(
"MuonLayerSegmentFinderTool", layersegmentfindertool)
910 kwargs.setdefault(
"MuonLayerSegmentMatchingTool", result.popToolsAndMerge(
912 kwargs.setdefault(
"MuonLayerAmbiguitySolverTool", result.popToolsAndMerge(
914 kwargs.setdefault(
"MuonCandidateTrackBuilderTool", result.popToolsAndMerge(
916 from TrkConfig.TrkTrackSummaryToolConfig
import MuonCombinedTrackSummaryToolCfg
917 kwargs.setdefault(
"TrackSummaryTool", result.popToolsAndMerge(
918 MuonCombinedTrackSummaryToolCfg(flags)))
919 kwargs.setdefault(
"MuonTrackBuilder", result.popToolsAndMerge(
921 kwargs.setdefault(
"TrackAmbiguityProcessor",
922 result.popToolsAndMerge(MuonAmbiProcessorCfg(flags)))
924 tool = CompFactory.MuonCombined.MuonInsideOutRecoTool(name, **kwargs)
925 result.setPrivateTools(tool)
931 kwargs.setdefault(
"MuonTrackBuilder", result.popPrivateTools())
932 muoncandidatetrackbuilder = CompFactory.Muon.MuonCandidateTrackBuilderTool(
934 result.setPrivateTools(muoncandidatetrackbuilder)
939 if flags.Input.isMC
is False:
940 kwargs.setdefault(
"GoodADCFractionCut", 0.5)
941 kwargs.setdefault(
"MinADCPerSegmentCut", 100)
942 result = ComponentAccumulator()
943 kwargs.setdefault(
"Printer", result.getPrimaryAndMerge(
944 MuonEDMPrinterToolCfg(flags)))
945 muon_segment_hit_summary_tool = result.popToolsAndMerge(
947 kwargs.setdefault(
"MuonSegmentHitSummaryTool",
948 muon_segment_hit_summary_tool)
949 result.addPublicTool(muon_segment_hit_summary_tool)
951 result.setPrivateTools(
952 CompFactory.Muon.MuonSegmentSelectionTool(name, **kwargs))
957 from MuonConfig.MuonTrackBuildingConfig
import MuonSegmentMatchingToolCfg, MooTrackBuilderCfg
959 kwargs.setdefault(
"MuonSegmentSelectionTool", result.popPrivateTools())
960 kwargs.setdefault(
"MuonSegmentMatchingTool", result.popToolsAndMerge(
961 MuonSegmentMatchingToolCfg(flags, name=
'MuonSegmentMatchingToolTight', TightSegmentMatching=
True)))
963 kwargs.setdefault(
"MuonSegmentTrackBuilder",
964 result.popToolsAndMerge(MooTrackBuilderCfg(flags, name=
'MooMuonTrackBuilder', prefix=
'MuSt_')))
965 kwargs.setdefault(
"MuonEDMPrinterTool", result.getPrimaryAndMerge(
966 MuonEDMPrinterToolCfg(flags)))
968 result.setPrivateTools(
969 CompFactory.Muon.MuonLayerAmbiguitySolverTool(name, **kwargs))
974 from MuonConfig.MuonRIO_OnTrackCreatorToolConfig
import MdtDriftCircleOnTrackCreatorCfg, MdtCalibWindowNumber, MdtCalibToolForRotsCfg
975 result = ComponentAccumulator()
976 kwargs.setdefault(
"TimingMode", 3)
977 kwargs.setdefault(
"CalibrationTool", result.popToolsAndMerge(MdtCalibToolForRotsCfg(flags, TimeWindowSetting = MdtCalibWindowNumber(
'Collision_t0fit') )) )
978 the_tool = result.popToolsAndMerge(MdtDriftCircleOnTrackCreatorCfg(flags, name, **kwargs))
979 result.setPrivateTools(the_tool)
986 from MuonConfig.MuonSegmentFindingConfig
import DCMathSegmentMakerCfg, MuonPRDSelectionToolCfg
987 from MuonConfig.MuonTrackBuildingConfig
import MuonChamberHoleRecoveryToolCfg
988 from MuonConfig.MuonRecToolsConfig
import MuonAmbiProcessorCfg, MuonSeededSegmentFinderCfg
989 from MuonConfig.MuonRIO_OnTrackCreatorToolConfig
import MdtDriftCircleOnTrackCreatorCfg
990 from MuonConfig.MuonSegmentFindingConfig
import MuonLayerHoughAlgCfg
991 kwargs.setdefault(
"DoSummary", flags.Muon.printSummary)
992 kwargs.setdefault(
"ConsideredPDGs", [13, -13, 1000015, -1000015])
993 kwargs.setdefault(
"DoTruth", flags.Input.isMC)
994 kwargs.setdefault(
"AddMDTExtrasMuGirlLowBeta", flags.MuonCombined.addMDTExtrasMuGirlLowBeta)
996 result = ComponentAccumulator()
997 result.merge(MuonLayerHoughAlgCfg(flags))
999 kwargs.setdefault(
"MuonEDMPrinterTool", result.getPrimaryAndMerge(MuonEDMPrinterToolCfg(flags)))
1000 kwargs.setdefault(
"MuonPRDSelectionTool", result.popToolsAndMerge(MuonPRDSelectionToolCfg(flags)))
1004 kwargs.setdefault(
"MuonPRDSelectionToolStau",
1005 result.popToolsAndMerge(MuonPRDSelectionToolCfg(flags,
1006 "MuonPRDSelectionToolStau",
1007 MdtDriftCircleOnTrackCreator=staurotcreator)))
1009 segmentmaker = result.popToolsAndMerge(DCMathSegmentMakerCfg(
1010 flags, name=
"DCMathStauSegmentMaker", MdtCreator=staurotcreator))
1012 kwargs.setdefault(
"MuonSegmentMaker", segmentmaker)
1013 kwargs.setdefault(
"MuonSegmentMakerT0Fit", result.popToolsAndMerge(DCMathSegmentMakerCfg(
1014 flags, name=
"DCMathT0FitSegmentMaker", doSegmentT0Fit=
True)))
1017 kwargs.setdefault(
"MuonLayerSegmentMatchingTool", result.popToolsAndMerge(
1021 kwargs.setdefault(
"TrackAmbiguityProcessor",
1022 result.popToolsAndMerge(MuonAmbiProcessorCfg(flags)))
1024 kwargs.setdefault(
"MuonPRDSelectionTool", result.popToolsAndMerge(
1025 MuonPRDSelectionToolCfg(flags)))
1026 kwargs.setdefault(
"MuonPRDSelectionToolStau", result.popToolsAndMerge(
1027 MuonPRDSelectionToolCfg(flags, MdtDriftCircleOnTrackCreator=staurotcreator)))
1028 kwargs.setdefault(
"MdtDriftCircleOnTrackCreator", result.popToolsAndMerge(
1029 MdtDriftCircleOnTrackCreatorCfg(flags)))
1030 kwargs.setdefault(
"MdtDriftCircleOnTrackCreatorStau", staurotcreator)
1033 chamberholerecoverytool = result.popToolsAndMerge(MuonChamberHoleRecoveryToolCfg(flags,
1034 sTgcPrepDataContainer=
"",
1035 MMPrepDataContainer=
""))
1036 seededsegmentfinder = result.popToolsAndMerge(MuonSeededSegmentFinderCfg(flags, name=
"MuonStauSeededSegmentFinder", MdtRotCreator=staurotcreator,
1037 SegmentMaker=segmentmaker, SegmentMakerNoHoles=segmentmaker))
1039 flags, name=
"CombinedStauTrackBuilderFit", MdtRotCreator=staurotcreator))
1040 from TrkConfig.TrkTrackSummaryToolConfig
import MuonCombinedTrackSummaryToolCfg
1041 muon_combined_track_summary = result.popToolsAndMerge(
1042 MuonCombinedTrackSummaryToolCfg(flags))
1043 muidsegmentregionrecovery = result.popToolsAndMerge(MuonSegmentRegionRecoveryToolCfg(flags, name=
"MuonStauSegmentRegionRecoveryTool", SeededSegmentFinder=seededsegmentfinder,
1044 RecoverMM=
False, RecoverSTGC=
False, MMRegionSelector=
"", STGCRegionSelector=
"",
1045 ChamberHoleRecoveryTool=chamberholerecoverytool, Fitter=fitter, TrackSummaryTool=muon_combined_track_summary))
1047 flags, name=
"CombinedStauTrackBuilder", MdtRotCreator=staurotcreator, MuonHoleRecovery=muidsegmentregionrecovery))
1048 muoncandidatetrackbuilder = CompFactory.Muon.MuonCandidateTrackBuilderTool(
1049 name=
"MuonStauCandidateTrackBuilderTool", MuonTrackBuilder=trackbuilder)
1050 kwargs.setdefault(
"MuonInsideOutRecoTool", result.popToolsAndMerge(
1051 MuonInsideOutRecoToolCfg(flags, name=
'MuonStauInsideOutRecoTool', MuonCandidateTrackBuilderTool=muoncandidatetrackbuilder)))
1054 tool = CompFactory.MuonCombined.MuonStauRecoTool(name, **kwargs)
1055 result.setPrivateTools(tool)
1060 result = ComponentAccumulator()
1062 from TrackToCalo.TrackToCaloConfig
import ParticleCaloExtensionToolCfg
1063 from MuonConfig.MuonRecToolsConfig
import MuonEDMPrinterToolCfg
1065 kwargs.setdefault(
"Extrapolator", result.popToolsAndMerge(AtlasExtrapolatorCfg(flags)))
1066 kwargs.setdefault(
"Printer", result.addPublicTool(result.getPrimaryAndMerge(MuonEDMPrinterToolCfg(flags))) )
1067 kwargs.setdefault(
"ParticleCaloExtensionTool",
1068 result.popToolsAndMerge(ParticleCaloExtensionToolCfg(flags,
1069 name=
'MuonParticleCaloExtensionTool')))
1072 muon_ext_tool = CompFactory.Muon.MuonSystemExtensionTool(
"MuonSystemExtensionTool", **kwargs)
1073 result.setPrivateTools(muon_ext_tool)
1078 from TrkConfig.AtlasExtrapolatorConfig
import AtlasExtrapolatorCfg
1079 from TrkConfig.TrkExRungeKuttaPropagatorConfig
import RungeKuttaPropagatorCfg
1082 kwargs.setdefault(
"AssumeLocalErrors",
True)
1083 kwargs.setdefault(
"PhiCut", 30.)
1084 kwargs.setdefault(
"GlobalPhiCut", 1.)
1085 kwargs.setdefault(
"ThetaCut", 5.)
1086 kwargs.setdefault(
"GlobalThetaCut", 0.5)
1087 kwargs.setdefault(
"ThetaAngleCut", 5.)
1088 kwargs.setdefault(
"DoDistanceCut",
True)
1089 kwargs.setdefault(
"CombinedPullCut", 3.0)
1091 result = AtlasExtrapolatorCfg(flags)
1092 kwargs.setdefault(
"IExtrapolator", result.popPrivateTools())
1093 kwargs.setdefault(
"Propagator", result.popToolsAndMerge(
1094 RungeKuttaPropagatorCfg(flags)))
1095 kwargs.setdefault(
"Printer", result.getPrimaryAndMerge(
1096 MuonEDMPrinterToolCfg(flags)))
1097 kwargs.setdefault(
"MuonSegmentHitSummary", result.popToolsAndMerge(
1099 kwargs.setdefault(
"MuonSegmentSelection", result.popToolsAndMerge(
1102 if "ResidualPullCalculator" not in kwargs:
1103 from TrkConfig.TrkResidualPullCalculatorConfig
import (
1104 ResidualPullCalculatorCfg)
1105 kwargs.setdefault(
"ResidualPullCalculator", result.popToolsAndMerge(
1106 ResidualPullCalculatorCfg(flags)))
1108 from TrackingGeometryCondAlg.AtlasTrackingGeometryCondAlgConfig
import (
1109 TrackingGeometryCondAlgCfg)
1110 acc = TrackingGeometryCondAlgCfg(flags)
1111 geom_cond_key = acc.getPrimary().TrackingGeometryWriteKey
1113 kwargs.setdefault(
"TrackingGeometryReadKey", geom_cond_key)
1115 tool = CompFactory.MuTagMatchingTool(name, **kwargs)
1117 result.addPublicTool(tool, primary=
True)
1122 from MuonConfig.MuonTrackBuildingConfig
import MuonSegmentMatchingToolCfg
1124 kwargs.setdefault(
"RejectOuterEndcap",
True)
1125 kwargs.setdefault(
"RejectMatchPhi",
True)
1126 result = ComponentAccumulator()
1127 kwargs.setdefault(
"Printer", result.getPrimaryAndMerge(MuonEDMPrinterToolCfg(flags)))
1128 kwargs.setdefault(
"MuonSegmentMatchingTool", result.popToolsAndMerge(
1129 MuonSegmentMatchingToolCfg(flags, name=
'MuonSegmentMatchingTool', doPhiMatching=
False)))
1132 tool = CompFactory.MuTagAmbiguitySolverTool(name, **kwargs)
1133 result.addPublicTool(tool, primary=
True)
1138 result = ComponentAccumulator()
1140 kwargs.setdefault(
"MuTagMatchingTool", mu_tag_matching)
1142 kwargs.setdefault(
"Printer", result.getPrimaryAndMerge(
1143 MuonEDMPrinterToolCfg(flags)))
1144 kwargs.setdefault(
"MuTagAmbiguitySolverTool", result.getPrimaryAndMerge(
1146 kwargs.setdefault(
"MuonSegmentSelectionTool", result.getPrimaryAndMerge(
1148 kwargs.setdefault(
"MuonSegmentHitSummaryTool", result.getPrimaryAndMerge(
1151 result.setPrivateTools(
1152 CompFactory.MuonCombined.MuonSegmentTagTool(name, **kwargs))
AlgTool returning the parametrized value for the calorimeter energy deposited by a traversing muon.