ATLAS Offline Software
ActsTrackingPassFlags.py
Go to the documentation of this file.
1 # Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
2 
3 from TrkConfig.TrackingPassFlags import createITkTrackingPassFlags, createITkFastTrackingPassFlags, createITkConversionTrackingPassFlags, createITkHeavyIonTrackingPassFlags, createITkLargeD0TrackingPassFlags, createITkLowPtTrackingPassFlags
4 
6  icf.doAthenaCluster = False
7  icf.doAthenaSpacePoint = False
8  icf.doAthenaSeed = False
9  icf.doAthenaTrack = False
10  icf.doAthenaAmbiguityResolution = False
11  icf.doActsCluster = False
12  icf.doActsSpacePoint = False
13  icf.doActsSeed = False
14  icf.doActsTrack = False
15  icf.doActsAmbiguityResolution = False
16 
18  icf.doActsCluster = True
19  icf.doActsSpacePoint = True
20  icf.doActsSeed = True
21  icf.doActsTrack = True
22  # Ambiguity resolution can follow if ActsTrack is
23  # enabled. Ambi. can be activated/deactivated with
24  # the flag: Acts.doAmbiguityResolution
25  icf.doActsAmbiguityResolution = lambda pcf: pcf.Acts.doAmbiguityResolution
26 
27 
28 # Main ACTS Tracking pass
31  icf.extension = "ActsLegacy"
34  return icf
35 
36 # Main ACTS Tracking pass with Fast Tracking configuration
39  icf.extension = "Acts"
42  return icf
43 
44 # Main ACTS Tracking pass with Heavy Ion configuration
45 # For the current time this is still an hybrid configuration
46 # We need to apply additional changes to the JO to support
47 # cases where the ambiguity solver is not scheduled
50  icf.extension = "ActsHeavyIon"
52  icf.doAthenaCluster = True
53  icf.doAthenaToActsCluster = True
54  icf.doActsSpacePoint = True
55  icf.doActsSeed = True
56  icf.doActsTrack = True
57  # If we do not want acts ambi resolution, first do the track convertion
58  # and then the Athena ambi
59  icf.doActsToAthenaTrack = lambda pcf : not pcf.Acts.doAmbiguityResolution
60  icf.doAthenaAmbiguityResolution = lambda pcf : not pcf.Acts.doAmbiguityResolution
61  # If we want acts ambi, first do the ambi and then convert the tracks
62  # without Athena ambi
63  icf.doActsAmbiguityResolution = lambda pcf : pcf.Acts.doAmbiguityResolution
64  icf.doActsToAthenaResolvedTrack = lambda pcf : pcf.Acts.doAmbiguityResolution
65 
66  # Deactivate CTIDE processor fit
67  icf.doAmbiguityProcessorTrackFit = False
68  return icf
69 
70 # Secondary ACTS Tracking pass for Large Radius Tracking
73  icf.extension = "ActsLargeRadius"
76  # Mark as secondary pass
77  icf.isSecondaryPass = True
78  # Store sepate container for LRT
79  # In Athena this is handled by the Tracking.storeSeparateLargeD0Container flag
80  icf.storeSeparateContainer = True
81  return icf
82 
83 # Secondary ACTS Tracking pass for Conversion tracking
86  icf.extension = "ActsConversion"
89  # Mark as secondary pass
90  icf.isSecondaryPass = True
91  # Conversion pass is usually merged with main pass
92  icf.storeSeparateContainer = False
93  return icf
94 
95 # Secondary ACTS Tracking pass for Low pT tracking
98  icf.extension = "ActsLowPt"
101  # Mark as secondary pass
102  icf.isSecondaryPass = True
103  # For the time being we do not store sepate containers for this pass (to be revised)
104  # In Athena this is handled by the Tracking.storeSeparateLargeD0Container flag
105  icf.storeSeparateContainer = False
106  return icf
107 
108 
109 # Validation chains
110 
113  icf.extension = "ActsValidateClusters"
115  icf.doActsCluster = True
116  icf.doActsToAthenaCluster = True
117  icf.doAthenaSpacePoint = True
118  icf.doAthenaSeed = True
119  icf.doAthenaTrack = True
120  icf.doAthenaAmbiguityResolution = True
121  return icf
122 
125  icf.extension = "ActsValidateSpacePoints"
127  icf.doAthenaCluster = True
128  icf.doAthenaToActsCluster = True
129  icf.doActsSpacePoint = True
130  # we should schedule here the Acts -> Athena SP converter, but that is not available yet
131  # so we go for the seeding convertion (i.e. ActsTrk::SiSpacePointSeedMaker)
132  icf.doActsToAthenaSeed = True
133  icf.doAthenaTrack = True
134  icf.doAthenaAmbiguityResolution = True
135  return icf
136 
139  icf.extension = "ActsValidateSeeds"
141  icf.doAthenaCluster = True
142  icf.doAthenaSpacePoint = True
143  icf.doAthenaToActsSpacePoint = True
144  icf.doActsToAthenaSeed = True
145  icf.doAthenaTrack = True
146  icf.doAthenaAmbiguityResolution = True
147  return icf
148 
151  icf.extension = "ActsValidateConversionSeeds"
153  icf.doAthenaCluster = True
154  icf.doAthenaSpacePoint = True
155  icf.doAthenaToActsSpacePoint = True
156  icf.doActsToAthenaSeed = True
157  icf.doAthenaTrack = True
158  icf.doAthenaAmbiguityResolution = True
159  icf.isSecondaryPass = False
160  return icf
161 
164  icf.extension = "ActsValidateLargeRadiusStandalone"
165  icf.isSecondaryPass = False
166  return icf
167 
170  icf.extension = "ActsValidateLargeRadiusSeeds"
172  icf.doAthenaCluster = True
173  icf.doAthenaSpacePoint = True
174  icf.doAthenaToActsSpacePoint = True
175  icf.doActsToAthenaSeed = True
176  icf.doAthenaTrack = True
177  icf.doAthenaAmbiguityResolution = True
178  icf.isSecondaryPass = False
179  return icf
180 
183  icf.extension = lambda pcf : "ActsValidateTracks" if not pcf.Acts.doAmbiguityResolution else "ActsValidateResolvedTracks"
185  # sequence is still a work in progress
186  # Requires Athena cluster and cluster EDM converter
187  # for adding decoration to cluster objects
188  # It produces Athena TrackCollection EDM
189  icf.doAthenaCluster = True
190  icf.doAthenaToActsCluster = True
191  icf.doActsSpacePoint = True
192  icf.doActsSeed = True
193  icf.doActsTrack = True
194  # If we do not want acts ambi resolution, first do the track convertion
195  # and then the Athena ambi
196  icf.doActsToAthenaTrack = lambda pcf : not pcf.Acts.doAmbiguityResolution
197  icf.doAthenaAmbiguityResolution = lambda pcf : not pcf.Acts.doAmbiguityResolution
198  # If we want acts ambi, first do the ambi and then convert the tracks
199  # without Athena ambi
200  icf.doActsAmbiguityResolution = lambda pcf : pcf.Acts.doAmbiguityResolution
201  icf.doActsToAthenaResolvedTrack = lambda pcf : pcf.Acts.doAmbiguityResolution
202 
203  # Deactivate CTIDE processor fit
204  icf.doAmbiguityProcessorTrackFit = False
205  return icf
206 
209  icf.extension = "ActsValidateAmbiguityResolution"
211  # The sequence will schedule Athena algorithms from clustering to
212  # track reconstruction, but not the ambi. resolution
213  # We convert tracks, run the acts ambi. resolution and convert
214  # resolved tracks back to Athena EDM
215  icf.doAthenaCluster = True
216  icf.doAthenaSpacePoint = True
217  icf.doAthenaSeed = True
218  icf.doAthenaTrack = True
219  icf.doAthenaToActsTrack = True
220  icf.doActsAmbiguityResolution = True
221  icf.doActsToAthenaResolvedTrack = True
222  return icf
223 
226  icf.extension = "ActsValidateF100"
227  icf.doActsCluster = False
228  icf.doFPGACluster = True
229  icf.doFPGATrackSim = True
230  icf.doActsSpacePoint = True
231  icf.doActsSeed = True
232  icf.doActsTrack = True
233  return icf
234 
237  icf.extension = "ActsValidateF150"
238  icf.doActsCluster = False
239  icf.doFPGACluster = True
240  icf.doFPGASeed = True
241  icf.doFPGATrackSim = True
242  icf.doActsSpacePoint = False
243  icf.doActsSeed = False
244  icf.doActsTrack = True
245  return icf
ActsTrackingPassFlags.createActsValidateClustersTrackingPassFlags
def createActsValidateClustersTrackingPassFlags()
Definition: ActsTrackingPassFlags.py:111
ActsTrackingPassFlags.createActsValidateSeedsTrackingPassFlags
def createActsValidateSeedsTrackingPassFlags()
Definition: ActsTrackingPassFlags.py:137
ActsTrackingPassFlags.createActsLowPtTrackingPassFlags
def createActsLowPtTrackingPassFlags()
Definition: ActsTrackingPassFlags.py:96
ActsTrackingPassFlags.createActsLegacyTrackingPassFlags
def createActsLegacyTrackingPassFlags()
Definition: ActsTrackingPassFlags.py:29
ActsTrackingPassFlags.createEFValidateF150TrackingPassFlags
def createEFValidateF150TrackingPassFlags()
Definition: ActsTrackingPassFlags.py:235
ActsTrackingPassFlags.createActsValidateSpacePointsTrackingPassFlags
def createActsValidateSpacePointsTrackingPassFlags()
Definition: ActsTrackingPassFlags.py:123
python.TrackingPassFlags.createITkHeavyIonTrackingPassFlags
def createITkHeavyIonTrackingPassFlags()
Heavyion mode #######################.
Definition: TrackingPassFlags.py:242
ActsTrackingPassFlags.deactivateAthenaComponents
def deactivateAthenaComponents(icf)
Definition: ActsTrackingPassFlags.py:5
python.TrackingPassFlags.createITkFastTrackingPassFlags
def createITkFastTrackingPassFlags()
Definition: TrackingPassFlags.py:261
python.TrackingPassFlags.createITkConversionTrackingPassFlags
def createITkConversionTrackingPassFlags()
ITkConversion mode ########################.
Definition: TrackingPassFlags.py:583
ActsTrackingPassFlags.activateActsComponents
def activateActsComponents(icf)
Definition: ActsTrackingPassFlags.py:17
ActsTrackingPassFlags.createActsValidateLargeRadiusSeedsTrackingPassFlags
def createActsValidateLargeRadiusSeedsTrackingPassFlags()
Definition: ActsTrackingPassFlags.py:168
ActsTrackingPassFlags.createActsValidateTracksTrackingPassFlags
def createActsValidateTracksTrackingPassFlags()
Definition: ActsTrackingPassFlags.py:181
ActsTrackingPassFlags.createActsValidateLargeRadiusStandaloneTrackingPassFlags
def createActsValidateLargeRadiusStandaloneTrackingPassFlags()
Definition: ActsTrackingPassFlags.py:162
ActsTrackingPassFlags.createActsValidateConversionSeedsTrackingPassFlags
def createActsValidateConversionSeedsTrackingPassFlags()
Definition: ActsTrackingPassFlags.py:149
python.TrackingPassFlags.createITkLowPtTrackingPassFlags
def createITkLowPtTrackingPassFlags()
ITk LowPt mode ####################.
Definition: TrackingPassFlags.py:389
ActsTrackingPassFlags.createActsLargeRadiusTrackingPassFlags
def createActsLargeRadiusTrackingPassFlags()
Definition: ActsTrackingPassFlags.py:71
ActsTrackingPassFlags.createActsTrackingPassFlags
def createActsTrackingPassFlags()
Definition: ActsTrackingPassFlags.py:37
ActsTrackingPassFlags.createActsValidateAmbiguityResolutionTrackingPassFlags
def createActsValidateAmbiguityResolutionTrackingPassFlags()
Definition: ActsTrackingPassFlags.py:207
ActsTrackingPassFlags.createActsHeavyIonTrackingPassFlags
def createActsHeavyIonTrackingPassFlags()
Definition: ActsTrackingPassFlags.py:48
ActsTrackingPassFlags.createEFValidateF100TrackingPassFlags
def createEFValidateF100TrackingPassFlags()
Definition: ActsTrackingPassFlags.py:224
python.TrackingPassFlags.createITkTrackingPassFlags
def createITkTrackingPassFlags()
ITk mode ####################.
Definition: TrackingPassFlags.py:120
ActsTrackingPassFlags.createActsConversionTrackingPassFlags
def createActsConversionTrackingPassFlags()
Definition: ActsTrackingPassFlags.py:84
python.TrackingPassFlags.createITkLargeD0TrackingPassFlags
def createITkLargeD0TrackingPassFlags()
ITk LRT mode ####################.
Definition: TrackingPassFlags.py:321