55 from AthenaConfiguration.AutoConfigFlags
import DetDescrInfo
57 mcf.addFlag(
"Muon.usePhaseIIGeoSetup",
lambda prevFlags : prevFlags.Detector.GeometryMuon
and
58 DetDescrInfo(prevFlags.GeoModel.AtlasVersion,
59 prevFlags.GeoModel.SQLiteDB ,
60 prevFlags.GeoModel.SQLiteDBFullPath)[
"Muon"][
"useR4Plugin"] )
62 mcf.addFlag(
"Muon.AlignedGeoTrfCacheMode", GeoTrfCacheMode.FullCacheCond, type = GeoTrfCacheMode)
66 mcf.addFlag(
"Muon.trackGeometryActiveMaterial",
True)
69 mcf.addFlag(
"Muon.trackGeometryPassiveMaterial",
lambda prevFlags: prevFlags.Muon.usePhaseIIGeoSetup
and \
70 len(prevFlags.Muon.trackGeometryMaterialMap) > 0)
72 mcf.addFlag(
"Muon.trackGeometryMaterialMap",
"")
74 mcf.addFlag(
"Muon.doFastMMDigitization",
False)
75 mcf.addFlag(
"Muon.doFastsTGCDigitization",
True)
76 mcf.addFlag(
"Muon.doFastRpcDigitization",
False)
78 mcf.addFlag(
"Muon.setupTruthAlgorithms",
lambda prevFlags: prevFlags.Muon.usePhaseIIGeoSetup
and \
79 prevFlags.Input.isMC
and \
80 not prevFlags.Trigger.doHLT)
88 from TrkConfig.TrkConfigFlags
import TrackingComponent
89 mcf.addFlag(
"Muon.scheduleActsReco",
lambda prevFlags: prevFlags.Muon.usePhaseIIGeoSetup
and \
90 prevFlags.Tracking.recoChain[0]
in [TrackingComponent.ActsChain , TrackingComponent.ActsLegacyChain ])
92 mcf.addFlag(
"Muon.scheduleActsReco",
False)
95 from ActsConfig.ActsConfigFlags
import TrackFitterType
96 mcf.addFlag(
"Muon.TrackFitterType", TrackFitterType.GlobalChiSquareFitter)
98 mcf.addFlag(
"Muon.TrackFitterType",
"None")
102 mcf.addFlag(
"Muon.includePileUpTruth",
False)
104 mcf.addFlag(
"Muon.enableMLBucketFilter",
False)
107 mcf.addFlag(
"Muon.expressMsTrackAtEntrance",
lambda prevFlags: prevFlags.Reco.EnableTracking )
112 mcf.addFlag(
"Muon.buildMETrack",
lambda prevFlags: prevFlags.Reco.EnableTracking
and\
113 not prevFlags.Muon.MuonTrigger )
115 mcf.addFlag(
"Muon.doMSVertex",
True)
116 mcf.addFlag(
"Muon.doSegmentT0Fit",
lambda prevFlags : prevFlags.Beam.Type
is not BeamType.Collisions)
117 mcf.addFlag(
"Muon.enableErrorTuning",
True)
118 mcf.addFlag(
"Muon.useLooseErrorTuning",
False)
120 mcf.addFlag(
"Muon.splitNswSegmentFinder",
lambda prevFlags: prevFlags.Detector.EnableMM
or prevFlags.Detector.EnablesTGC)
121 mcf.addFlag(
"Muon.useTGCPriorNextBC",
False)
122 mcf.addFlag(
"Muon.useAlignmentCorrections",
True)
124 mcf.addFlag(
"Muon.makePRDs",
True)
126 mcf.addFlag(
"Muon.enableNRPC",
lambda prevFlags: prevFlags.Detector.GeometryRPC
and \
127 prevFlags.Muon.usePhaseIIGeoSetup )
129 mcf.addFlag(
"Muon.printSummary",
False)
130 mcf.addFlag(
"Muon.segmentOrigin",
"Muon")
132 mcf.addFlag(
"Muon.strategy", [])
133 mcf.addFlag(
"Muon.straightLineFitMomentum", 2000.0 )
135 mcf.addFlag(
"Muon.Chi2NDofCut", 20.0 )
136 mcf.addFlag(
"Muon.enableCurvedSegmentFinding",
False )
137 mcf.addFlag(
"Muon.updateSegmentSecondCoordinate",
lambda prevFlags : prevFlags.Beam.Type
is BeamType.Collisions)
139 mcf.addFlag(
"Muon.useSegmentMatching",
lambda prevFlags : prevFlags.Beam.Type
is BeamType.Collisions)
140 mcf.addFlag(
"Muon.useTrackSegmentMatching",
True )
141 mcf.addFlag(
"Muon.runCommissioningChain",
lambda prevFlags: (
False and (prevFlags.Detector.EnableMM
or prevFlags.Detector.EnablesTGC) \
142 and prevFlags.Beam.Type
is BeamType.Collisions) )
144 mcf.addFlag(
"Muon.applyMMPassivation",
lambda prevFlags: prevFlags.Detector.EnableMM
and not prevFlags.Common.isOnline
and (prevFlags.Common.Project
is not Project.AthSimulation \
145 and (prevFlags.Common.ProductionStep
not in [ProductionStep.Simulation, ProductionStep.FastChain]
or prevFlags.Overlay.DataOverlay)))
147 mcf.addFlag(
"Muon.Calib.readMdtJSON",
lambda prevFlags: prevFlags.GeoModel.Run > LHCPeriod.Run3
and prevFlags.Muon.usePhaseIIGeoSetup)
148 mcf.addFlag(
"Muon.Calib.fitAnalyticRt",
False)
150 mcf.addFlag(
"Muon.Calib.readMDTCalibFromBlob",
True)
151 mcf.addFlag(
"Muon.Calib.correctMdtRtForBField",
lambda prevFlags : (prevFlags.Input.isMC
is False and prevFlags.Beam.Type
is BeamType.Collisions))
152 mcf.addFlag(
"Muon.Calib.correctMdtRtForTimeSlewing",
lambda prevFlags : prevFlags.Input.isMC
is False)
154 mcf.addFlag(
"Muon.Calib.applySigPropUncert",
lambda prevFlags: prevFlags.Muon.usePhaseIIGeoSetup )
155 mcf.addFlag(
"Muon.Calib.useMLRt",
True)
156 mcf.addFlag(
"Muon.Calib.applyRtScaling",
False)
157 mcf.addFlag(
"Muon.Calib.mdtCalibrationSource",
"MDT")
158 mcf.addFlag(
"Muon.Calib.mdtPropagationSpeedBeta",
lambda prevFlags : 1.0
if prevFlags.Input.isMC
else 0.85)
160 mcf.addFlag(
"Muon.Calib.CscPedFromLocalFile",
False)
161 mcf.addFlag(
"Muon.Calib.CscNoiseFromLocalFile",
False)
162 mcf.addFlag(
"Muon.Calib.CscPSlopeFromLocalFile",
False)
163 mcf.addFlag(
"Muon.Calib.CscStatusFromLocalFile",
False)
164 mcf.addFlag(
"Muon.Calib.CscRmsFromLocalFile",
False)
165 mcf.addFlag(
"Muon.Calib.CscF001FromLocalFile",
False)
166 mcf.addFlag(
"Muon.Calib.CscT0BaseFromLocalFile",
False)
167 mcf.addFlag(
"Muon.Calib.CscT0PhaseFromLocalFile",
False)
169 mcf.addFlag(
"Muon.Calib.EventTag",
"MoMu")
179 mcf.addFlag(
"Muon.Calib.mdtMode",
"ntuple")
184 mcf.addFlag(
"Muon.Calib.applyMmT0Correction",
lambda prevFlags: prevFlags.GeoModel.Run==LHCPeriod.Run3
and prevFlags.Input.DataYear != 2022
and not prevFlags.Common.isOnline
and not prevFlags.Input.isMC )
185 mcf.addFlag(
"Muon.Calib.applysTgcT0Correction",
lambda prevFlags: prevFlags.GeoModel.Run<LHCPeriod.Run4
and not prevFlags.Common.isOnline
and not prevFlags.Input.isMC
and False)
186 mcf.addFlag(
"Muon.Calib.applyMmBFieldCalib",
True)
190 mcf.addFlag(
"Muon.Align.UseALines",
lambda prevFlags: (
_muonAlignMode(prevFlags)))
191 mcf.addFlag(
"Muon.Align.UseBLines",
lambda prevFlags: prevFlags.Muon.Align.UseALines)
192 mcf.addFlag(
"Muon.Align.UseILines",
lambda prevFlags: (
_muonAlignMode(prevFlags))
and \
193 prevFlags.Detector.GeometryCSC
and 'HLT' not in prevFlags.IOVDb.GlobalTag)
194 mcf.addFlag(
"Muon.Align.UseAsBuilt",
lambda prevFlags: (
_muonAlignMode(prevFlags))
and not \
195 (prevFlags.IOVDb.DatabaseInstance ==
'COMP200' or \
196 'HLT' in prevFlags.IOVDb.GlobalTag
or prevFlags.Common.isOnline) )
197 mcf.addFlag(
"Muon.Align.UsesTGCAsBuild",
lambda prevFlags: (
_muonAlignMode(prevFlags))
and not prevFlags.Common.isOnline
and prevFlags.GeoModel.Run == LHCPeriod.Run3)
200 mcf.addFlag(
"Muon.MuonTrigger",
False)
201 mcf.addFlag(
"Muon.SAMuonTrigger",
False)
202 mcf.addFlag(
"Muon.disableNSWForL2SA",
True)
204 mcf.addFlag(
"Muon.enableAlignment",
lambda flags: (flags.Common.Project
is not Project.AthSimulation \
205 and not (flags.Common.ProductionStep
in [ProductionStep.Simulation, ProductionStep.FastChain]
or flags.Overlay.DataOverlay)))
206 mcf.addFlag(
"Muon.enableTrigIDtrackReuse",
False)
209 mcf.addFlag(
"Muon.DESDM_MCP.doAlignmentFormat",
False)
210 mcf.addFlag(
"Muon.DESDM_MCP.doExtendedAlignmentContent",
False)
213 mcf.addFlag(
"Muon.doWriteRpcRDO",
True)
215 mcf.addFlag(
"Muon.writeSDOs",
lambda prevFlags : prevFlags.Output.doWriteESD
and prevFlags.Input.isMC)
219 mcf.addFlag(
"Muon.MMClusterCalibRecoTool",
lambda prevFlags: MMClusterBuilderEnum.Centroid
if (prevFlags.Common.isOnline
or prevFlags.Input.DataYear == 2022
or prevFlags.Beam.Type
is not BeamType.Collisions)
else MMClusterBuilderEnum.ClusterTimeProjection, type=MMClusterBuilderEnum)
221 mcf.addFlag(
"Muon.writexAODPRD",
lambda prevFlags: prevFlags.Muon.usePhaseIIGeoSetup)
223 mcf.addFlag(
"Muon.useMdtDcsData",
lambda prevFlags :
not prevFlags.Common.isOnline
and prevFlags.Detector.GeometryMDT)