ATLAS Offline Software
Loading...
Searching...
No Matches
MuonPatternRecognitionConfig Namespace Reference

Functions

 MuonPhiHoughTransformAlgCfg (flags, name="MuonPhiHoughTransformAlg", **kwargs)
 MuonNSWSegmentFinderAlgCfg (flags, name="MuonNswSegmentFinderAlg", **kwargs)
 MuonEtaHoughTransformAlgCfg (flags, name="MuonEtaHoughTransformAlg", **kwargs)
 MuonSegmentFittingAlgCfg (flags, name="MuonSegmentFittingAlg", **kwargs)
 ActsMuonSegmentRefitAlgCfg (flags, name="ActsMuonSegmentRefitAlg", **kwargs)
 MuonPatternRecognitionCfg (flags)

Function Documentation

◆ ActsMuonSegmentRefitAlgCfg()

MuonPatternRecognitionConfig.ActsMuonSegmentRefitAlgCfg ( flags,
name = "ActsMuonSegmentRefitAlg",
** kwargs )

Definition at line 58 of file MuonPatternRecognitionConfig.py.

58def ActsMuonSegmentRefitAlgCfg(flags,name="ActsMuonSegmentRefitAlg", **kwargs):
59 result = ComponentAccumulator()
60 from MuonTrackFindingAlgs.TrackFindingConfig import SegmentSelectorCfg, MSTrackFitterCfg
61 kwargs.setdefault("SegmentSelectionTool", result.popToolsAndMerge(SegmentSelectorCfg(flags)))
62 from MuonSpacePointCalibrator.CalibrationConfig import MuonSpacePointCalibratorCfg
63 kwargs.setdefault("Calibrator", result.popToolsAndMerge(MuonSpacePointCalibratorCfg(flags)))
64 kwargs.setdefault("FittingTool", result.popToolsAndMerge(MSTrackFitterCfg(flags,
65 DoStraightLine=True)))
66 from ActsConfig.ActsGeometryConfig import ActsExtrapolationToolCfg
67 kwargs.setdefault("ExtrapolationTool", result.popToolsAndMerge(ActsExtrapolationToolCfg(flags, MaxSteps=10000)))
68 from ActsConfig.ActsGeometryConfig import ActsTrackingGeometryToolCfg
69 kwargs.setdefault("TrackingGeometryTool", result.getPrimaryAndMerge(ActsTrackingGeometryToolCfg(flags)))
70 kwargs.setdefault("SegmentContainer", "MuonSegmentsFromR4")
71 theAlg = CompFactory.MuonR4.SegmentActsRefitAlg(name, **kwargs)
72 result.addEventAlgo(theAlg, primary = True)
73 return result
74

◆ MuonEtaHoughTransformAlgCfg()

MuonPatternRecognitionConfig.MuonEtaHoughTransformAlgCfg ( flags,
name = "MuonEtaHoughTransformAlg",
** kwargs )

Definition at line 24 of file MuonPatternRecognitionConfig.py.

24def MuonEtaHoughTransformAlgCfg(flags, name = "MuonEtaHoughTransformAlg", **kwargs):
25 result = ComponentAccumulator()
26 kwargs.setdefault("downWeightPrdMultiplicity", True)
27 if flags.Muon.enableMLBucketFilter and name == "MuonEtaHoughTransformAlg":
28 kwargs.setdefault("SpacePointContainer", "FilteredMlBuckets")
29 theAlg = CompFactory.MuonR4.EtaHoughTransformAlg(name, **kwargs)
30 result.addEventAlgo(theAlg, primary=True)
31 return result
32

◆ MuonNSWSegmentFinderAlgCfg()

MuonPatternRecognitionConfig.MuonNSWSegmentFinderAlgCfg ( flags,
name = "MuonNswSegmentFinderAlg",
** kwargs )

Definition at line 15 of file MuonPatternRecognitionConfig.py.

15def MuonNSWSegmentFinderAlgCfg(flags, name = "MuonNswSegmentFinderAlg", **kwargs):
16 result = ComponentAccumulator()
17 from MuonSpacePointCalibrator.CalibrationConfig import MuonSpacePointCalibratorCfg
18 kwargs.setdefault("Calibrator", result.popToolsAndMerge(MuonSpacePointCalibratorCfg(flags)))
19 theAlg = CompFactory.MuonR4.NswSegmentFinderAlg(name, **kwargs)
20 result.addEventAlgo(theAlg, primary=True)
21 return result
22
23

◆ MuonPatternRecognitionCfg()

MuonPatternRecognitionConfig.MuonPatternRecognitionCfg ( flags)

Definition at line 75 of file MuonPatternRecognitionConfig.py.

75def MuonPatternRecognitionCfg(flags):
76 result = ComponentAccumulator()
77 from ActsAlignmentAlgs.AlignmentAlgsConfig import ActsGeometryContextAlgCfg
78 result.merge(ActsGeometryContextAlgCfg(flags))
79
80 if flags.Muon.enableMLBucketFilter:
81 from MuonInference.InferenceConfig import GraphBucketFilterToolCfg, GraphInferenceAlgCfg
82 bucketTool = result.popToolsAndMerge(GraphBucketFilterToolCfg(flags))
83 result.merge(GraphInferenceAlgCfg(flags, InferenceTools=[bucketTool]))
84
85 segmentContainers = []
86 if flags.Detector.GeometrysTGC or flags.Detector.GeometryMM:
87 segmentContainers+=["MuonNswSegments"]
88 result.merge(MuonEtaHoughTransformAlgCfg(flags, name="MuonNswEtaHoughTransformAlg",
89 EtaHoughMaxContainer = "MuonHoughNswMaxima",
90 SpacePointContainer = "NswSpacePoints"))
91 result.merge(MuonNSWSegmentFinderAlgCfg(flags, name="MuonNswSegmentFinderAlg",
92 MuonNswSegmentWriteKey = segmentContainers[-1],
93 MuonNswSegmentSeedWriteKey = "MuonNswSegmentSeeds",
94 CombinatorialReadKey = "MuonHoughNswMaxima"))
95
96 if flags.Detector.GeometryMDT or flags.Detector.GeometryRPC or flags.Detector.GeometryTGC:
97 result.merge(MuonEtaHoughTransformAlgCfg(flags))
98 result.merge(MuonPhiHoughTransformAlgCfg(flags))
99 segmentContainers+=["R4MuonSegments"]
100
101 result.merge(MuonSegmentFittingAlgCfg(flags, OutSegmentContainer=segmentContainers[-1]))
102
103 from MuonSegmentCnv.MuonSegmentCnvConfig import xAODSegmentCnvAlgCfg
104 result.merge(xAODSegmentCnvAlgCfg(flags, InSegmentKeys = segmentContainers))
105 if flags.Input.isMC:
106 from MuonTruthAlgsR4.MuonTruthAlgsConfig import RecoSegmentTruthAssocCfg
107 result.merge(RecoSegmentTruthAssocCfg(flags,
108 name="MuonSegmentsFromR4TruthMatching",
109 SegmentKey="MuonSegmentsFromR4"))
110 if flags.Muon.scheduleActsReco:
111 from MuonSegmentCnv.MuonSegmentCnvConfig import MuonR4SegmentCnvAlgCfg
112 result.merge(MuonR4SegmentCnvAlgCfg(flags,
113 ReadSegments = segmentContainers,
114 WriteKey="TrackMuonSegments"))
115 return result

◆ MuonPhiHoughTransformAlgCfg()

MuonPatternRecognitionConfig.MuonPhiHoughTransformAlgCfg ( flags,
name = "MuonPhiHoughTransformAlg",
** kwargs )

Definition at line 7 of file MuonPatternRecognitionConfig.py.

7def MuonPhiHoughTransformAlgCfg(flags, name = "MuonPhiHoughTransformAlg", **kwargs):
8 result = ComponentAccumulator()
9 kwargs.setdefault("downWeightPrdMultiplicity", True)
10 theAlg = CompFactory.MuonR4.PhiHoughTransformAlg(name, **kwargs)
11 result.addEventAlgo(theAlg, primary=True)
12 return result
13
14

◆ MuonSegmentFittingAlgCfg()

MuonPatternRecognitionConfig.MuonSegmentFittingAlgCfg ( flags,
name = "MuonSegmentFittingAlg",
** kwargs )

Definition at line 33 of file MuonPatternRecognitionConfig.py.

33def MuonSegmentFittingAlgCfg(flags, name = "MuonSegmentFittingAlg", **kwargs):
34 result = ComponentAccumulator()
35 from MuonSpacePointCalibrator.CalibrationConfig import MuonSpacePointCalibratorCfg
36 kwargs.setdefault("Calibrator", result.popToolsAndMerge(MuonSpacePointCalibratorCfg(flags)))
37 kwargs.setdefault("ResoSeedHitAssoc", 5. )
38 kwargs.setdefault("RecoveryPull", 3.)
39 # Configure pre-fitting, false by default
40 kwargs.setdefault("useFastPreFitter", False)
41 if kwargs.get("useFastPreFitter"):
42 kwargs.setdefault("useFastFitter", True)
43 # Configure main (full) fitting
44 kwargs.setdefault("useFastFitter", False)
45 kwargs.setdefault("ignoreFailedPreFit", False)
46 # Configure T0 fitting, false by default
47 kwargs.setdefault("fitSegmentT0", False)
48 kwargs.setdefault("recalibInFit", False)
49 if kwargs.get("fitSegmentT0"):
50 kwargs.setdefault("useHessianResidual", True)
51 kwargs.setdefault("recalibInFit", True)
52 kwargs.setdefault("maxIterations", 1000)
53 kwargs.setdefault("doBeamspotConstraint", True)
54 theAlg = CompFactory.MuonR4.SegmentFittingAlg(name, **kwargs)
55 result.addEventAlgo(theAlg, primary=True)
56 return result
57