ATLAS Offline Software
Classes | Functions
ActsConfigFlags Namespace Reference

Classes

class  AmbiguitySolverMode
 
class  AmbiguitySolverStrategy
 
class  PixelCalibrationStrategy
 
class  SeedingStrategy
 
class  SpacePointStrategy
 
class  TrackFitterType
 

Functions

def createActsConfigFlags ()
 

Function Documentation

◆ createActsConfigFlags()

def ActsConfigFlags.createActsConfigFlags ( )

Definition at line 50 of file ActsConfigFlags.py.

51  actscf = AthConfigFlags()
52 
53  # General Flags
54  actscf.addFlag('Acts.EDM.PersistifyClusters', lambda pcf: pcf.Acts.EDM.PersistifySpacePoints)
55  actscf.addFlag('Acts.EDM.PersistifySpacePoints', False)
56  actscf.addFlag('Acts.EDM.PersistifyTracks', False)
57  actscf.addFlag('Acts.useCache', False)
58 
59  # Scheduling
60  actscf.addFlag('Acts.doITkConversion', False)
61  actscf.addFlag('Acts.doLargeRadius', False)
62  actscf.addFlag('Acts.doLowPt', False)
63 
64  # Geometry Flags
65 
66  # MaterialSource can be:
67  # a path to a local JSON file
68  # 'Default' : material map source is evaluated from the geometry tag
69  # 'None' : no material map is provided
70  actscf.addFlag('Acts.TrackingGeometry.MaterialSource', 'Default')
71  actscf.addFlag('Acts.TrackingGeometry.MaterialCalibrationFolder', 'ACTS/MaterialMaps/ITk')
72  actscf.addFlag('Acts.TrackingGeometry.MaterialFileExtension', '')
73  actscf.addFlag('Acts.TrackingGeometry.UseBlueprint', False)
74 
75 
76  actscf.addFlag('Acts.TrackingGeometry.InsertITkPassiveMaterialLayers', False)
77  actscf.addFlag('Acts.TrackingGeometry.PassiveITkInnerPixelBarrelLayerRadii', [70.])
78  actscf.addFlag('Acts.TrackingGeometry.PassiveITkInnerPixelBarrelLayerHalflengthZ', [240.])
79  actscf.addFlag('Acts.TrackingGeometry.PassiveITkInnerPixelBarrelLayerThickness', [1.])
80  actscf.addFlag('Acts.TrackingGeometry.PassiveITkOuterPixelBarrelLayerRadii', [195., 260.])
81  actscf.addFlag('Acts.TrackingGeometry.PassiveITkOuterPixelBarrelLayerHalflengthZ', [370., 370.])
82  actscf.addFlag('Acts.TrackingGeometry.PassiveITkOuterPixelBarrelLayerThickness', [1., 1.])
83  actscf.addFlag('Acts.TrackingGeometry.PassiveITkStripBarrelLayerRadii', [480., 665., 880.])
84  actscf.addFlag('Acts.TrackingGeometry.PassiveITkStripBarrelLayerHalflengthZ', [1370., 1370., 1370.])
85  actscf.addFlag('Acts.TrackingGeometry.PassiveITkStripBarrelLayerThickness', [1., 1., 1.])
86 
87  # Monitoring
88  actscf.addFlag('Acts.doMonitoring', False)
89  actscf.addFlag('Acts.doAnalysis', False)
90  actscf.addFlag('Acts.doAnalysisNtuples', lambda pcf: pcf.Acts.doAnalysis)
91  actscf.addFlag('Acts.Clusters.doAnalysis', lambda pcf: pcf.Acts.doAnalysis)
92  actscf.addFlag('Acts.SpacePoints.doAnalysis', lambda pcf: pcf.Acts.doAnalysis)
93  actscf.addFlag('Acts.Seeds.doAnalysis', lambda pcf: pcf.Acts.doAnalysis)
94  actscf.addFlag('Acts.Tracks.doAnalysis', lambda pcf: pcf.Acts.doAnalysis)
95  actscf.addFlag('Acts.Particles.doAnalysis', lambda pcf: pcf.Acts.doAnalysis)
96  actscf.addFlag('Acts.storeTrackStateInfo', False)
97 
98  # Cluster
99  actscf.addFlag("Acts.Clusters.UseWeightedPosition", False)
100  actscf.addFlag("Acts.Clusters.RetrieveChargeInformation", lambda pcf: not pcf.Tracking.doPixelDigitalClustering)
101 
102  # SpacePoint
103  actscf.addFlag("Acts.SpacePointStrategy", SpacePointStrategy.ActsTrk, type=SpacePointStrategy) # Define SpacePoint Strategy
104 
105  # Seeding
106  actscf.addFlag("Acts.SeedingStrategy", SeedingStrategy.GridTriplet, type=SeedingStrategy) # Define Seeding Strategy
107 
108  # Track finding
109  actscf.addFlag('Acts.PixelCalibrationStrategy', PixelCalibrationStrategy.AnalogueClusteringAfterSelection, type=PixelCalibrationStrategy)
110  actscf.addFlag('Acts.doRotCorrection', True)
111  actscf.addFlag('Acts.doPrintTrackStates', False)
112  actscf.addFlag('Acts.skipDuplicateSeeds', True)
113  actscf.addFlag('Acts.doTwoWayCKF', True) # run CKF twice, first with forward propagation with smoothing, then with backward propagation
114  actscf.addFlag('Acts.useStripSeedsFirst', False) # switch order of seed collections
115  actscf.addFlag('Acts.autoReverseSearchCKF', False) # track finding starts going inward first if we are outside the defined RZ boundary
116  actscf.addFlag('Acts.useHGTDClusterInTrackFinding', False) # use HGTD cluster in track finding
117  actscf.addFlag('Acts.branchStopperMeasCutReduce', 2)
118  actscf.addFlag('Acts.branchStopperAbsEtaMeasCut', 1.2)
119  actscf.addFlag('Acts.forceTrackOnSeed', lambda pcf: pcf.Acts.SeedingStrategy!=SeedingStrategy.Gbts2 or pcf.Tracking.doPixelDigitalClustering) # GBTS forceTrackOnSeed only seems to work with digital clustering
120 
121  # Ambiguity resolution
122  actscf.addFlag('Acts.doAmbiguityResolution', True)
123  actscf.addFlag('Acts.AmbiguitySolverStrategy', AmbiguitySolverStrategy.Greedy, type=AmbiguitySolverStrategy) # Define Ambiguity Solver Strategy
124  actscf.addFlag('Acts.AmbiguitySolverMode', lambda pcf: AmbiguitySolverMode.OUTSIDE_TF if pcf.Acts.doAmbiguityResolution else AmbiguitySolverMode.DURING_TF, type=AmbiguitySolverMode)
125 
126  # Calibrations
127  actscf.addFlag('Acts.OnTrackCalibration.performCovarianceCalibration', True) # perform calibration of covariance during on track analogue cluster calibration
128 
129  # Track fitting
130  actscf.addFlag('Acts.writeTrackCollection', False) # save to file (ESD, AOD) the Resolved and Refitted track collections
131  actscf.addFlag('Acts.fitFromPRD', False) # Acts.writeTrackCollection needs to be True for either cases. If Acts.fitFromPRD is False, fit from ROT; else, fit from PRD
132  actscf.addFlag('Acts.trackFitterType', TrackFitterType.KalmanFitter, type=TrackFitterType) # Define Tracking algorithm for refitting
133 
134  # GSF specific flags
135  actscf.addFlag("Acts.GsfRefitLegacyTrk", False) # Refit Legacy tracks using ACTS GSF
136  actscf.addFlag("Acts.GsfRefitActs", False) # Refit ACTS tracks using ACTS GSF
137  actscf.addFlag("Acts.GsfMaxComponents", 12)
138  actscf.addFlag("Acts.GsfComponentMergeMethod", 'MaxWeight')
139  actscf.addFlag("Acts.GsfDirectNavigation", False)
140  actscf.addFlag("Acts.GsfOutlierChi2Cut", 1e4) # Effectively no cut. Compatible with legacy
141 
142  # Decorations
143  actscf.addFlag('Acts.decoratePRD.sdoSiHit', lambda pcf: pcf.Tracking.doTIDE_AmbiTrackMonitoring)
144 
145  return actscf
ActsConfigFlags.createActsConfigFlags
def createActsConfigFlags()
Definition: ActsConfigFlags.py:50