79def createActsConfigFlags():
80 actscf = AthConfigFlags()
81
82
83 actscf.addFlag('Acts.EDM.PersistifyClusters', lambda pcf: pcf.Acts.EDM.PersistifySpacePoints and not pcf.Tracking.StoreSlimmedDataPreparation)
84 actscf.addFlag('Acts.EDM.PersistifySpacePoints', lambda pcf: pcf.Tracking.StoreSlimmedDataPreparation)
85 actscf.addFlag('Acts.EDM.PersistifyTracks', False)
86
87 actscf.addFlag('Acts.EDM.PhaseII', False)
88 actscf.addFlag('Acts.useCache', False)
89
90 actscf.addFlag('Acts.EDM.SlimContent', lambda pcf: pcf.Tracking.StoreSlimmedDataPreparation)
91
92
93 from InDetConfig.ITkActsHelpers import primaryPassUsesActs
94 actscf.addFlag('Acts.doITkConversion', lambda pcf: (
95 pcf.Detector.EnableCalo and primaryPassUsesActs(pcf)))
96 actscf.addFlag('Acts.doLargeRadius', True)
97 actscf.addFlag('Acts.doLowPt', False)
98
99
100
101
102
103
104
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)
110 actscf.addFlag('Acts.TrackingGeometry.KeepGoingOnMaterialMergeFailure', False)
111
112
113 actscf.addFlag('Acts.TrackingGeometry.InsertITkPassiveMaterialLayers', False)
114 actscf.addFlag('Acts.TrackingGeometry.PassiveITkInnerPixelBarrelLayerRadii', [70.])
115 actscf.addFlag('Acts.TrackingGeometry.PassiveITkInnerPixelBarrelLayerHalflengthZ', [240.])
116 actscf.addFlag('Acts.TrackingGeometry.PassiveITkInnerPixelBarrelLayerThickness', [1.])
117 actscf.addFlag('Acts.TrackingGeometry.PassiveITkOuterPixelBarrelLayerRadii', [195., 260.])
118 actscf.addFlag('Acts.TrackingGeometry.PassiveITkOuterPixelBarrelLayerHalflengthZ', [370., 370.])
119 actscf.addFlag('Acts.TrackingGeometry.PassiveITkOuterPixelBarrelLayerThickness', [1., 1.])
120 actscf.addFlag('Acts.TrackingGeometry.PassiveITkStripBarrelLayerRadii', [480., 665., 880.])
121 actscf.addFlag('Acts.TrackingGeometry.PassiveITkStripBarrelLayerHalflengthZ', [1370., 1370., 1370.])
122 actscf.addFlag('Acts.TrackingGeometry.PassiveITkStripBarrelLayerThickness', [1., 1., 1.])
123
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)
133 actscf.addFlag('Acts.doTruthInspection', False)
134 actscf.addFlag('Acts.doxAODToTrkConversion', False)
135
136
137 actscf.addFlag("Acts.Clusters.UseWeightedPosition", False)
138 actscf.addFlag("Acts.Clusters.RetrieveChargeInformation", lambda pcf: not pcf.Tracking.doPixelDigitalClustering)
139 actscf.addFlag("Acts.Clusters.StripClusteringErrorMode", StripClusteringErrorMode.PITCH,type=StripClusteringErrorMode)
140 actscf.addFlag("Acts.Clusters.UsePixelBroadErrors", False)
141
142
143 actscf.addFlag('Acts.SpacePoints.useBeamSpotConstraintStrips', True)
144
145
146 actscf.addFlag("Acts.SeedingStrategy", SeedingStrategy.GridTriplet, type=SeedingStrategy)
147
148
149 actscf.addFlag('Acts.PixelCalibrationStrategy', PixelCalibrationStrategy.Uncalibrated, type=PixelCalibrationStrategy)
150 actscf.addFlag('Acts.StripCalibrationStrategy', StripCalibrationStrategy.Uncalibrated, type=StripCalibrationStrategy)
151 actscf.addFlag('Acts.doRotCorrection', True)
152 actscf.addFlag('Acts.doPrintTrackStates', False)
153 actscf.addFlag('Acts.skipDuplicateSeeds', True)
154 actscf.addFlag('Acts.doTwoWayCKF', True)
155 actscf.addFlag('Acts.useStripSeedsFirst', False)
156 actscf.addFlag('Acts.useHGTDClusterInTrackFinding', False)
157 actscf.addFlag('Acts.branchStopperMeasCutReduce', 2)
158 actscf.addFlag('Acts.branchStopperAbsEtaMeasCut', 1.2)
159 actscf.addFlag('Acts.SeedRefitOutlierChi2Cut', float('inf'))
160 actscf.addFlag('Acts.LrtStripSeedRefit', True)
161 actscf.addFlag('Acts.stripCalibrationIterations', 1)
162 actscf.addFlag('Acts.forceTrackOnSeed', lambda pcf: not(pcf.Acts.SeedingStrategy is SeedingStrategy.GbtsFtf and
163 pcf.Acts.PixelCalibrationStrategy is PixelCalibrationStrategy.AnalogueClusteringAfterSelection))
164 actscf.addFlag('Acts.PixelNNCalibrationModelsFolder', 'ITkPixelClusterization/nn-01-01-01/')
165
166
167
168
169 actscf.addFlag('Acts.doAmbiguityResolution', True)
170 actscf.addFlag('Acts.AmbiguitySolverStrategy', AmbiguitySolverStrategy.Greedy, type=AmbiguitySolverStrategy)
171 actscf.addFlag('Acts.AmbiguitySolverMode', lambda pcf: AmbiguitySolverMode.OUTSIDE_TF if pcf.Acts.doAmbiguityResolution else AmbiguitySolverMode.DURING_TF, type=AmbiguitySolverMode)
172
173
174 actscf.addFlag('Acts.OnTrackCalibration.performCovarianceCalibration', True)
175
176
177 actscf.addFlag('Acts.writeTrackCollection', False)
178 actscf.addFlag('Acts.fitFromPRD', False)
179 actscf.addFlag('Acts.trackFitterType', TrackFitterType.KalmanFitter, type=TrackFitterType)
180
181
182 actscf.addFlag("Acts.GsfRefitLegacyTrk", False)
183 actscf.addFlag("Acts.GsfRefitActs", False)
184 actscf.addFlag("Acts.GsfMaxComponents", 12)
185 actscf.addFlag("Acts.GsfComponentMergeMethod", 'MaxWeight')
186 actscf.addFlag("Acts.GsfDirectNavigation", False)
187 actscf.addFlag("Acts.GsfOutlierChi2Cut", 1e4)
188 actscf.addFlag("Acts.extrapolateElectronsLegacy", False)
189
190
191 actscf.addFlag('Acts.decoratePRD.sdoSiHit', lambda pcf: pcf.Tracking.doTIDE_AmbiTrackMonitoring)
192
193
194 actscf.addFlag("Acts.Device.doCellSorting", True)
195 actscf.addFlag("Acts.Device.doClusterization", False)
196 actscf.addFlag("Acts.Device.doSpacePointFormation", False)
197 actscf.addFlag("Acts.Device.doSeeding", False)
198 actscf.addFlag("Acts.Device.seedingStrategy", SeedingStrategy.GridTriplet, type=SeedingStrategy)
199 actscf.addFlag("Acts.Device.doTrackReconstruction", False)
200
201
202 actscf.addFlag("Acts.GNN.Enable", False)
203 actscf.addFlag("Acts.GNN.ModuleMapPath", "<default>")
204 actscf.addFlag("Acts.GNN.ModelPath", "<default>")
205 actscf.addFlag("Acts.GNN.NumTrtContexts", 1)
206 actscf.addFlag("Acts.GNN.MaxGpuInstances", 1)
207 actscf.addFlag("Acts.GNN.VarianceInflation", 1.0)
208 actscf.addFlag("Acts.GNN.TightSeeds", False)
209 actscf.addFlag("Acts.GNN.MinCandidateMeasurements", 7)
210 actscf.addFlag("Acts.GNN.MinDeltaR", 15.0)
211 actscf.addFlag("Acts.GNN.EdgeCut", 0.5)
212 actscf.addFlag("Acts.GNN.RelaxCentralHoleSel", False)
213 actscf.addFlag("Acts.GNN.RelaxMeasurementSel", True)
214 actscf.addFlag("Acts.GNN.OfflineZ0Sel", False)
215
216 return actscf