3 from AthenaConfiguration.AthConfigFlags 
import AthConfigFlags
 
    4 from AthenaConfiguration.Enums 
import FlagEnum
 
    8     Orthogonal = 
"Orthogonal" 
   11     GridTriplet = 
"GridTriplet" 
   15     Greedy = 
"GreedySolver" 
   16     ScoreBased = 
"ScoreBasedAmbiguitySolver" 
   60     KalmanFitter = 
'KalmanFitter'  
   61     GaussianSumFitter = 
'GaussianSumFitter'  
   62     GlobalChiSquareFitter = 
'GlobalChiSquareFitter'  
   71     Uncalibrated = 
"Uncalibrated" 
   72     AnalogueClustering = 
"AnalogueClustering" 
   73     AnalogueClusteringAfterSelection = 
"AnalogueClusteringAfterSelection" 
   81     Uncalibrated = 
"Uncalibrated" 
   82     DigitalCalibration = 
"DigitalCalibration" 
   83     DigitalCalibrationAfterSelection = 
"DigitalCalibrationAfterSelection" 
   86     actscf = AthConfigFlags()
 
   89     actscf.addFlag(
'Acts.EDM.PersistifyClusters', 
lambda pcf: pcf.Acts.EDM.PersistifySpacePoints)
 
   90     actscf.addFlag(
'Acts.EDM.PersistifySpacePoints', 
False)
 
   91     actscf.addFlag(
'Acts.EDM.PersistifyTracks', 
False)
 
   92     actscf.addFlag(
'Acts.useCache', 
False)
 
   95     actscf.addFlag(
'Acts.doITkConversion', 
False)
 
   96     actscf.addFlag(
'Acts.doLargeRadius', 
False)
 
   97     actscf.addFlag(
'Acts.doLowPt', 
False)
 
  105     actscf.addFlag(
'Acts.TrackingGeometry.MaterialSource', 
'Default')
 
  106     actscf.addFlag(
'Acts.TrackingGeometry.MaterialCalibrationFolder', 
'ACTS/MaterialMaps/ITk')
 
  107     actscf.addFlag(
'Acts.TrackingGeometry.MaterialFileExtension', 
'')
 
  108     actscf.addFlag(
'Acts.TrackingGeometry.UseBlueprint', 
False)
 
  109     actscf.addFlag(
'Acts.TrackingGeometry.ObjDebugOutput', 
False)
 
  112     actscf.addFlag(
'Acts.TrackingGeometry.InsertITkPassiveMaterialLayers', 
False)
 
  113     actscf.addFlag(
'Acts.TrackingGeometry.PassiveITkInnerPixelBarrelLayerRadii', [70.])
 
  114     actscf.addFlag(
'Acts.TrackingGeometry.PassiveITkInnerPixelBarrelLayerHalflengthZ', [240.])
 
  115     actscf.addFlag(
'Acts.TrackingGeometry.PassiveITkInnerPixelBarrelLayerThickness', [1.])
 
  116     actscf.addFlag(
'Acts.TrackingGeometry.PassiveITkOuterPixelBarrelLayerRadii', [195., 260.])
 
  117     actscf.addFlag(
'Acts.TrackingGeometry.PassiveITkOuterPixelBarrelLayerHalflengthZ', [370., 370.])
 
  118     actscf.addFlag(
'Acts.TrackingGeometry.PassiveITkOuterPixelBarrelLayerThickness', [1., 1.])
 
  119     actscf.addFlag(
'Acts.TrackingGeometry.PassiveITkStripBarrelLayerRadii', [480., 665., 880.])
 
  120     actscf.addFlag(
'Acts.TrackingGeometry.PassiveITkStripBarrelLayerHalflengthZ', [1370., 1370., 1370.])
 
  121     actscf.addFlag(
'Acts.TrackingGeometry.PassiveITkStripBarrelLayerThickness', [1., 1., 1.])
 
  124     actscf.addFlag(
'Acts.doMonitoring', 
False)
 
  125     actscf.addFlag(
'Acts.doAnalysis', 
False)
 
  126     actscf.addFlag(
'Acts.doAnalysisNtuples', 
lambda pcf: pcf.Acts.doAnalysis)
 
  127     actscf.addFlag(
'Acts.Clusters.doAnalysis', 
lambda pcf: pcf.Acts.doAnalysis)
 
  128     actscf.addFlag(
'Acts.SpacePoints.doAnalysis', 
lambda pcf: pcf.Acts.doAnalysis)
 
  129     actscf.addFlag(
'Acts.Seeds.doAnalysis', 
lambda pcf: pcf.Acts.doAnalysis)
 
  130     actscf.addFlag(
'Acts.Tracks.doAnalysis', 
lambda pcf: pcf.Acts.doAnalysis)
 
  131     actscf.addFlag(
'Acts.Particles.doAnalysis', 
lambda pcf: pcf.Acts.doAnalysis)
 
  132     actscf.addFlag(
'Acts.storeTrackStateInfo', 
False)
 
  135     actscf.addFlag(
"Acts.Clusters.UseWeightedPosition", 
False)
 
  136     actscf.addFlag(
"Acts.Clusters.RetrieveChargeInformation", 
lambda pcf: 
not pcf.Tracking.doPixelDigitalClustering)
 
  137     actscf.addFlag(
"Acts.Clusters.StripClusteringErrorMode", StripClusteringErrorMode.PITCH,type=StripClusteringErrorMode)
 
  138     actscf.addFlag(
"Acts.Clusters.UsePixelBroadErrors", 
False)
 
  141     actscf.addFlag(
"Acts.SpacePointStrategy", SpacePointStrategy.ActsTrk, type=SpacePointStrategy)  
 
  144     actscf.addFlag(
"Acts.SeedingStrategy", SeedingStrategy.GridTriplet, type=SeedingStrategy)  
 
  147     actscf.addFlag(
'Acts.PixelCalibrationStrategy', PixelCalibrationStrategy.Uncalibrated, type=PixelCalibrationStrategy)
 
  148     actscf.addFlag(
'Acts.StripCalibrationStrategy', StripCalibrationStrategy.Uncalibrated, type=StripCalibrationStrategy)
 
  149     actscf.addFlag(
'Acts.doRotCorrection', 
True)
 
  150     actscf.addFlag(
'Acts.doPrintTrackStates', 
False)
 
  151     actscf.addFlag(
'Acts.skipDuplicateSeeds', 
True)
 
  152     actscf.addFlag(
'Acts.doTwoWayCKF', 
True) 
 
  153     actscf.addFlag(
'Acts.useStripSeedsFirst', 
False) 
 
  154     actscf.addFlag(
'Acts.autoReverseSearchCKF', 
False) 
 
  155     actscf.addFlag(
'Acts.useHGTDClusterInTrackFinding', 
False) 
 
  156     actscf.addFlag(
'Acts.branchStopperMeasCutReduce', 2)
 
  157     actscf.addFlag(
'Acts.branchStopperAbsEtaMeasCut', 1.2)
 
  158     actscf.addFlag(
'Acts.forceTrackOnSeed', 
lambda pcf: not(pcf.Acts.SeedingStrategy 
is SeedingStrategy.Gbts2 
and 
  159                                                             pcf.Acts.PixelCalibrationStrategy 
is PixelCalibrationStrategy.AnalogueClusteringAfterSelection)) 
 
  162     actscf.addFlag(
'Acts.doAmbiguityResolution', 
True)
 
  163     actscf.addFlag(
'Acts.AmbiguitySolverStrategy', AmbiguitySolverStrategy.Greedy, type=AmbiguitySolverStrategy)  
 
  164     actscf.addFlag(
'Acts.AmbiguitySolverMode', 
lambda pcf: AmbiguitySolverMode.OUTSIDE_TF 
if pcf.Acts.doAmbiguityResolution 
else AmbiguitySolverMode.DURING_TF, type=AmbiguitySolverMode)
 
  167     actscf.addFlag(
'Acts.OnTrackCalibration.performCovarianceCalibration', 
True) 
 
  170     actscf.addFlag(
'Acts.writeTrackCollection', 
False) 
 
  171     actscf.addFlag(
'Acts.fitFromPRD', 
False) 
 
  172     actscf.addFlag(
'Acts.trackFitterType', TrackFitterType.KalmanFitter, type=TrackFitterType) 
 
  175     actscf.addFlag(
"Acts.GsfRefitLegacyTrk", 
False) 
 
  176     actscf.addFlag(
"Acts.GsfRefitActs", 
False) 
 
  177     actscf.addFlag(
"Acts.GsfMaxComponents", 12)
 
  178     actscf.addFlag(
"Acts.GsfComponentMergeMethod", 
'MaxWeight')
 
  179     actscf.addFlag(
"Acts.GsfDirectNavigation", 
False)
 
  180     actscf.addFlag(
"Acts.GsfOutlierChi2Cut", 1e4) 
 
  183     actscf.addFlag(
'Acts.decoratePRD.sdoSiHit', 
lambda pcf: pcf.Tracking.doTIDE_AmbiTrackMonitoring)