3 from AthenaConfiguration.AthConfigFlags
import AthConfigFlags
4 from AthenaConfiguration.Enums
import BeamType, LHCPeriod, ProductionStep, Project, FlagEnum
25 """Flag values for Muon.MMClusterCalibRecoTool"""
27 ClusterTimeProjection =
"ClusterTimeProjection"
32 problematic_tags = [
'COMCOND-HLT[A-C]-00[01]-00',
'COMCOND-ES1C-00[01]-00',
'COMCOND-REPC-001',
'COMCOND-SIM-01-00']
33 if any(re.match(tag,flags.IOVDb.DatabaseInstance)
for tag
in problematic_tags):
35 elif flags.Input.isMC
or not flags.Muon.enableAlignment:
47 from AthenaConfiguration.AutoConfigFlags
import DetDescrInfo
49 mcf.addFlag(
"Muon.usePhaseIIGeoSetup",
lambda prevFlags :
DetDescrInfo(prevFlags.GeoModel.AtlasVersion,
50 prevFlags.GeoModel.SQLiteDB ,
51 prevFlags.GeoModel.SQLiteDBFullPath)[
"Muon"][
"useR4Plugin"] )
53 mcf.addFlag(
"Muon.doDigitization",
True)
54 mcf.addFlag(
"Muon.doFastMMDigitization",
True)
56 mcf.addFlag(
"Muon.doTGCClusterSegmentFinding",
False)
57 mcf.addFlag(
"Muon.doRPCClusterSegmentFinding",
False)
58 mcf.addFlag(
"Muon.prdToxAOD",
False)
59 mcf.addFlag(
"Muon.rpcRawToxAOD",
False)
60 mcf.addFlag(
"Muon.doMSVertex",
True)
61 mcf.addFlag(
"Muon.doSegmentT0Fit",
lambda prevFlags : prevFlags.Beam.Type
is not BeamType.Collisions)
62 mcf.addFlag(
"Muon.enableErrorTuning",
True)
63 mcf.addFlag(
"Muon.useLooseErrorTuning",
False)
64 mcf.addFlag(
"Muon.useTGCPriorNextBC",
False)
65 mcf.addFlag(
"Muon.useAlignmentCorrections",
True)
67 mcf.addFlag(
"Muon.makePRDs",
True)
69 mcf.addFlag(
"Muon.enableNRPC",
lambda prevFlags: prevFlags.Detector.GeometryRPC
and \
70 prevFlags.Muon.usePhaseIIGeoSetup )
72 mcf.addFlag(
"Muon.printSummary",
False)
73 mcf.addFlag(
"Muon.segmentOrigin",
"Muon")
75 mcf.addFlag(
"Muon.strategy", [])
76 mcf.addFlag(
"Muon.straightLineFitMomentum", 2000.0 )
78 mcf.addFlag(
"Muon.Chi2NDofCut", 20.0 )
79 mcf.addFlag(
"Muon.enableCurvedSegmentFinding",
False )
80 mcf.addFlag(
"Muon.updateSegmentSecondCoordinate",
lambda prevFlags : prevFlags.Beam.Type
is BeamType.Collisions)
82 mcf.addFlag(
"Muon.useSegmentMatching",
lambda prevFlags : prevFlags.Beam.Type
is BeamType.Collisions)
83 mcf.addFlag(
"Muon.useTrackSegmentMatching",
True )
84 mcf.addFlag(
"Muon.runCommissioningChain",
lambda prevFlags: (
False and (prevFlags.Detector.EnableMM
or prevFlags.Detector.EnablesTGC) \
85 and prevFlags.Beam.Type
is BeamType.Collisions) )
87 mcf.addFlag(
"Muon.applyMMPassivation",
lambda prevFlags: prevFlags.Detector.EnableMM
and not prevFlags.Common.isOnline
and (prevFlags.Common.Project
is not Project.AthSimulation \
88 and (prevFlags.Common.ProductionStep
not in [ProductionStep.Simulation, ProductionStep.FastChain]
or prevFlags.Overlay.DataOverlay)))
90 mcf.addFlag(
"Muon.Calib.readMDTCalibFromBlob",
True)
91 mcf.addFlag(
"Muon.Calib.correctMdtRtForBField",
lambda prevFlags : (prevFlags.Input.isMC
is False and prevFlags.Beam.Type
is BeamType.Collisions))
92 mcf.addFlag(
"Muon.Calib.correctMdtRtForTimeSlewing",
lambda prevFlags : prevFlags.Input.isMC
is False)
93 mcf.addFlag(
"Muon.Calib.useMLRt",
True)
94 mcf.addFlag(
"Muon.Calib.applyRtScaling",
False)
95 mcf.addFlag(
"Muon.Calib.mdtCalibrationSource",
"MDT")
96 mcf.addFlag(
"Muon.Calib.mdtPropagationSpeedBeta",
lambda prevFlags : 1.0
if prevFlags.Input.isMC
else 0.85)
98 mcf.addFlag(
"Muon.Calib.CscPedFromLocalFile",
False)
99 mcf.addFlag(
"Muon.Calib.CscNoiseFromLocalFile",
False)
100 mcf.addFlag(
"Muon.Calib.CscPSlopeFromLocalFile",
False)
101 mcf.addFlag(
"Muon.Calib.CscStatusFromLocalFile",
False)
102 mcf.addFlag(
"Muon.Calib.CscRmsFromLocalFile",
False)
103 mcf.addFlag(
"Muon.Calib.CscF001FromLocalFile",
False)
104 mcf.addFlag(
"Muon.Calib.CscT0BaseFromLocalFile",
False)
105 mcf.addFlag(
"Muon.Calib.CscT0PhaseFromLocalFile",
False)
107 mcf.addFlag(
"Muon.Calib.EventTag",
"MoMu")
117 mcf.addFlag(
"Muon.Calib.mdtMode",
"ntuple")
121 mcf.addFlag(
"Muon.Calib.applyMmT0Correction",
lambda prevFlags: prevFlags.GeoModel.Run<LHCPeriod.Run4
and not prevFlags.Common.isOnline
and not prevFlags.Input.isMC
and False)
122 mcf.addFlag(
"Muon.Calib.applysTgcT0Correction",
lambda prevFlags: prevFlags.GeoModel.Run<LHCPeriod.Run4
and not prevFlags.Common.isOnline
and not prevFlags.Input.isMC
and False)
123 mcf.addFlag(
"Muon.Calib.applyMmBFieldCalib",
True)
127 mcf.addFlag(
"Muon.Align.UseALines",
lambda prevFlags: (
_muonAlignMode(prevFlags)))
128 mcf.addFlag(
"Muon.Align.UseBLines",
lambda prevFlags: prevFlags.Muon.Align.UseALines)
129 mcf.addFlag(
"Muon.Align.UseILines",
lambda prevFlags: (
_muonAlignMode(prevFlags))
and \
130 prevFlags.Detector.GeometryCSC
and 'HLT' not in prevFlags.IOVDb.GlobalTag)
131 mcf.addFlag(
"Muon.Align.UseAsBuilt",
lambda prevFlags: (
_muonAlignMode(prevFlags))
and not \
132 (prevFlags.IOVDb.DatabaseInstance ==
'COMP200' or \
133 'HLT' in prevFlags.IOVDb.GlobalTag
or prevFlags.Common.isOnline) )
136 mcf.addFlag(
"Muon.MuonTrigger",
False)
137 mcf.addFlag(
"Muon.SAMuonTrigger",
False)
138 mcf.addFlag(
"Muon.disableNSWForL2SA",
False)
140 mcf.addFlag(
"Muon.enableAlignment",
lambda flags: (flags.Common.Project
is not Project.AthSimulation \
141 and (flags.Common.ProductionStep
not in [ProductionStep.Simulation, ProductionStep.FastChain]
or flags.Overlay.DataOverlay)))
142 mcf.addFlag(
"Muon.enableTrigIDtrackReuse",
False)
145 mcf.addFlag(
"Muon.DESDM_MCP.doAlignmentFormat",
False)
148 mcf.addFlag(
"Muon.doWriteRpcRDO",
True)
150 mcf.addFlag(
"Muon.writeSDOs",
lambda prevFlags : prevFlags.Output.doWriteESD
and prevFlags.Input.isMC)
153 mcf.addFlag(
"Muon.MMClusterCalibRecoTool",
lambda prevFlags : MMClusterBuilderEnum.ClusterTimeProjection
if prevFlags.Input.isMC
else MMClusterBuilderEnum.Centroid, type=MMClusterBuilderEnum)
155 mcf.addFlag(
"Muon.writexAODPRD",
False)
157 mcf.addFlag(
"Muon.useMdtDcsData",
lambda prevFlags :
not prevFlags.Common.isOnline)