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",
False)
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)
119 mcf.addFlag(
"Muon.useTGCPriorNextBC",
False)
120 mcf.addFlag(
"Muon.useAlignmentCorrections",
True)
122 mcf.addFlag(
"Muon.makePRDs",
True)
124 mcf.addFlag(
"Muon.enableNRPC",
lambda prevFlags: prevFlags.Detector.GeometryRPC
and \
125 prevFlags.Muon.usePhaseIIGeoSetup )
127 mcf.addFlag(
"Muon.printSummary",
False)
128 mcf.addFlag(
"Muon.segmentOrigin",
"Muon")
130 mcf.addFlag(
"Muon.strategy", [])
131 mcf.addFlag(
"Muon.straightLineFitMomentum", 2000.0 )
133 mcf.addFlag(
"Muon.Chi2NDofCut", 20.0 )
134 mcf.addFlag(
"Muon.enableCurvedSegmentFinding",
False )
135 mcf.addFlag(
"Muon.updateSegmentSecondCoordinate",
lambda prevFlags : prevFlags.Beam.Type
is BeamType.Collisions)
137 mcf.addFlag(
"Muon.useSegmentMatching",
lambda prevFlags : prevFlags.Beam.Type
is BeamType.Collisions)
138 mcf.addFlag(
"Muon.useTrackSegmentMatching",
True )
139 mcf.addFlag(
"Muon.runCommissioningChain",
lambda prevFlags: (
False and (prevFlags.Detector.EnableMM
or prevFlags.Detector.EnablesTGC) \
140 and prevFlags.Beam.Type
is BeamType.Collisions) )
142 mcf.addFlag(
"Muon.applyMMPassivation",
lambda prevFlags: prevFlags.Detector.EnableMM
and not prevFlags.Common.isOnline
and (prevFlags.Common.Project
is not Project.AthSimulation \
143 and (prevFlags.Common.ProductionStep
not in [ProductionStep.Simulation, ProductionStep.FastChain]
or prevFlags.Overlay.DataOverlay)))
145 mcf.addFlag(
"Muon.Calib.readMdtJSON",
lambda prevFlags: prevFlags.GeoModel.Run > LHCPeriod.Run3
and prevFlags.Muon.usePhaseIIGeoSetup)
146 mcf.addFlag(
"Muon.Calib.fitAnalyticRt",
False)
148 mcf.addFlag(
"Muon.Calib.readMDTCalibFromBlob",
True)
149 mcf.addFlag(
"Muon.Calib.correctMdtRtForBField",
lambda prevFlags : (prevFlags.Input.isMC
is False and prevFlags.Beam.Type
is BeamType.Collisions))
150 mcf.addFlag(
"Muon.Calib.correctMdtRtForTimeSlewing",
lambda prevFlags : prevFlags.Input.isMC
is False)
152 mcf.addFlag(
"Muon.Calib.applySigPropUncert",
lambda prevFlags: prevFlags.Muon.usePhaseIIGeoSetup )
153 mcf.addFlag(
"Muon.Calib.useMLRt",
True)
154 mcf.addFlag(
"Muon.Calib.applyRtScaling",
False)
155 mcf.addFlag(
"Muon.Calib.mdtCalibrationSource",
"MDT")
156 mcf.addFlag(
"Muon.Calib.mdtPropagationSpeedBeta",
lambda prevFlags : 1.0
if prevFlags.Input.isMC
else 0.85)
158 mcf.addFlag(
"Muon.Calib.CscPedFromLocalFile",
False)
159 mcf.addFlag(
"Muon.Calib.CscNoiseFromLocalFile",
False)
160 mcf.addFlag(
"Muon.Calib.CscPSlopeFromLocalFile",
False)
161 mcf.addFlag(
"Muon.Calib.CscStatusFromLocalFile",
False)
162 mcf.addFlag(
"Muon.Calib.CscRmsFromLocalFile",
False)
163 mcf.addFlag(
"Muon.Calib.CscF001FromLocalFile",
False)
164 mcf.addFlag(
"Muon.Calib.CscT0BaseFromLocalFile",
False)
165 mcf.addFlag(
"Muon.Calib.CscT0PhaseFromLocalFile",
False)
167 mcf.addFlag(
"Muon.Calib.EventTag",
"MoMu")
177 mcf.addFlag(
"Muon.Calib.mdtMode",
"ntuple")
182 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 )
183 mcf.addFlag(
"Muon.Calib.applysTgcT0Correction",
lambda prevFlags: prevFlags.GeoModel.Run<LHCPeriod.Run4
and not prevFlags.Common.isOnline
and not prevFlags.Input.isMC
and False)
184 mcf.addFlag(
"Muon.Calib.applyMmBFieldCalib",
True)
188 mcf.addFlag(
"Muon.Align.UseALines",
lambda prevFlags: (
_muonAlignMode(prevFlags)))
189 mcf.addFlag(
"Muon.Align.UseBLines",
lambda prevFlags: prevFlags.Muon.Align.UseALines)
190 mcf.addFlag(
"Muon.Align.UseILines",
lambda prevFlags: (
_muonAlignMode(prevFlags))
and \
191 prevFlags.Detector.GeometryCSC
and 'HLT' not in prevFlags.IOVDb.GlobalTag)
192 mcf.addFlag(
"Muon.Align.UseAsBuilt",
lambda prevFlags: (
_muonAlignMode(prevFlags))
and not \
193 (prevFlags.IOVDb.DatabaseInstance ==
'COMP200' or \
194 'HLT' in prevFlags.IOVDb.GlobalTag
or prevFlags.Common.isOnline) )
195 mcf.addFlag(
"Muon.Align.UsesTGCAsBuild",
lambda prevFlags: (
_muonAlignMode(prevFlags))
and not prevFlags.Common.isOnline
and prevFlags.GeoModel.Run == LHCPeriod.Run3)
198 mcf.addFlag(
"Muon.MuonTrigger",
False)
199 mcf.addFlag(
"Muon.SAMuonTrigger",
False)
200 mcf.addFlag(
"Muon.disableNSWForL2SA",
True)
202 mcf.addFlag(
"Muon.enableAlignment",
lambda flags: (flags.Common.Project
is not Project.AthSimulation \
203 and not (flags.Common.ProductionStep
in [ProductionStep.Simulation, ProductionStep.FastChain]
or flags.Overlay.DataOverlay)))
204 mcf.addFlag(
"Muon.enableTrigIDtrackReuse",
False)
207 mcf.addFlag(
"Muon.DESDM_MCP.doAlignmentFormat",
False)
208 mcf.addFlag(
"Muon.DESDM_MCP.doExtendedAlignmentContent",
False)
211 mcf.addFlag(
"Muon.doWriteRpcRDO",
True)
213 mcf.addFlag(
"Muon.writeSDOs",
lambda prevFlags : prevFlags.Output.doWriteESD
and prevFlags.Input.isMC)
217 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)
219 mcf.addFlag(
"Muon.writexAODPRD",
lambda prevFlags: prevFlags.Muon.usePhaseIIGeoSetup)
221 mcf.addFlag(
"Muon.useMdtDcsData",
lambda prevFlags :
not prevFlags.Common.isOnline
and prevFlags.Detector.GeometryMDT)