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  # Other specific flags
67  icf.minPTSeed = 0.4
68  # Deactivate CTIDE processor fit
69  icf.doAmbiguityProcessorTrackFit = False
70  return icf
71 
72 # Secondary ACTS Tracking pass for Large Radius Tracking
75  icf.extension = "ActsLargeRadius"
78  # Mark as secondary pass
79  icf.isSecondaryPass = True
80  # Store sepate container for LRT
81  # In Athena this is handled by the Tracking.storeSeparateLargeD0Container flag
82  icf.storeSeparateContainer = True
83  return icf
84 
85 # Secondary ACTS Tracking pass for Conversion tracking
88  icf.extension = "ActsConversion"
91  # Mark as secondary pass
92  icf.isSecondaryPass = True
93  # Conversion pass is usually merged with main pass
94  icf.storeSeparateContainer = False
95  return icf
96 
97 # Secondary ACTS Tracking pass for Low pT tracking
100  icf.extension = "ActsLowPt"
103  # Mark as secondary pass
104  icf.isSecondaryPass = True
105  # For the time being we do not store sepate containers for this pass (to be revised)
106  # In Athena this is handled by the Tracking.storeSeparateLargeD0Container flag
107  icf.storeSeparateContainer = False
108  return icf
109 
110 
111 # Validation chains
112 
115  icf.extension = "ActsValidateClusters"
117  icf.doActsCluster = True
118  icf.doActsToAthenaCluster = True
119  icf.doAthenaSpacePoint = True
120  icf.doAthenaSeed = True
121  icf.doAthenaTrack = True
122  icf.doAthenaAmbiguityResolution = True
123  return icf
124 
127  icf.extension = "ActsValidateSpacePoints"
129  icf.doAthenaCluster = True
130  icf.doAthenaToActsCluster = True
131  icf.doActsSpacePoint = True
132  # we should schedule here the Acts -> Athena SP converter, but that is not available yet
133  # so we go for the seeding convertion (i.e. ActsTrk::SiSpacePointSeedMaker)
134  icf.doActsToAthenaSeed = True
135  icf.doAthenaTrack = True
136  icf.doAthenaAmbiguityResolution = True
137  return icf
138 
141  icf.extension = "ActsValidateSeeds"
143  icf.doAthenaCluster = True
144  icf.doAthenaSpacePoint = True
145  icf.doAthenaToActsSpacePoint = True
146  icf.doActsToAthenaSeed = True
147  icf.doAthenaTrack = True
148  icf.doAthenaAmbiguityResolution = True
149  return icf
150 
153  icf.extension = "ActsValidateConversionSeeds"
155  icf.doAthenaCluster = True
156  icf.doAthenaSpacePoint = True
157  icf.doAthenaToActsSpacePoint = True
158  icf.doActsToAthenaSeed = True
159  icf.doAthenaTrack = True
160  icf.doAthenaAmbiguityResolution = True
161  icf.isSecondaryPass = False
162  return icf
163 
166  icf.extension = "ActsValidateLargeRadiusSeeds"
168  icf.doAthenaCluster = True
169  icf.doAthenaSpacePoint = True
170  icf.doAthenaToActsSpacePoint = True
171  icf.doActsToAthenaSeed = True
172  icf.doAthenaTrack = True
173  icf.doAthenaAmbiguityResolution = True
174  icf.isSecondaryPass = False
175  return icf
176 
179  icf.extension = lambda pcf : "ActsValidateTracks" if not pcf.Acts.doAmbiguityResolution else "ActsValidateResolvedTracks"
181  # sequence is still a work in progress
182  # Requires Athena cluster and cluster EDM converter
183  # for adding decoration to cluster objects
184  # It produces Athena TrackCollection EDM
185  icf.doAthenaCluster = True
186  icf.doAthenaToActsCluster = True
187  icf.doActsSpacePoint = True
188  icf.doActsSeed = True
189  icf.doActsTrack = True
190  # If we do not want acts ambi resolution, first do the track convertion
191  # and then the Athena ambi
192  icf.doActsToAthenaTrack = lambda pcf : not pcf.Acts.doAmbiguityResolution
193  icf.doAthenaAmbiguityResolution = lambda pcf : not pcf.Acts.doAmbiguityResolution
194  # If we want acts ambi, first do the ambi and then convert the tracks
195  # without Athena ambi
196  icf.doActsAmbiguityResolution = lambda pcf : pcf.Acts.doAmbiguityResolution
197  icf.doActsToAthenaResolvedTrack = lambda pcf : pcf.Acts.doAmbiguityResolution
198 
199  # Deactivate CTIDE processor fit
200  icf.doAmbiguityProcessorTrackFit = False
201  return icf
202 
205  icf.extension = "ActsValidateAmbiguityResolution"
207  # The sequence will schedule Athena algorithms from clustering to
208  # track reconstruction, but not the ambi. resolution
209  # We convert tracks, run the acts ambi. resolution and convert
210  # resolved tracks back to Athena EDM
211  icf.doAthenaCluster = True
212  icf.doAthenaSpacePoint = True
213  icf.doAthenaSeed = True
214  icf.doAthenaTrack = True
215  icf.doAthenaToActsTrack = True
216  icf.doActsAmbiguityResolution = True
217  icf.doActsToAthenaResolvedTrack = True
218  return icf
219 
222  icf.extension = "ActsValidateF100"
223  icf.doActsCluster = False
224  icf.doFPGACluster = True
225  icf.doFPGATrackSim = True
226  icf.doActsSpacePoint = True
227  icf.doActsSeed = True
228  icf.doActsTrack = True
229  return icf
230 
233  icf.extension = "ActsValidateF150"
234  icf.doActsCluster = False
235  icf.doFPGACluster = True
236  icf.doFPGASeed = True
237  icf.doFPGATrackSim = True
238  icf.doActsSpacePoint = False
239  icf.doActsSeed = False
240  icf.doActsTrack = True
241  return icf
ActsTrackingPassFlags.createActsValidateClustersTrackingPassFlags
def createActsValidateClustersTrackingPassFlags()
Definition: ActsTrackingPassFlags.py:113
ActsTrackingPassFlags.createActsValidateSeedsTrackingPassFlags
def createActsValidateSeedsTrackingPassFlags()
Definition: ActsTrackingPassFlags.py:139
ActsTrackingPassFlags.createActsLowPtTrackingPassFlags
def createActsLowPtTrackingPassFlags()
Definition: ActsTrackingPassFlags.py:98
ActsTrackingPassFlags.createActsLegacyTrackingPassFlags
def createActsLegacyTrackingPassFlags()
Definition: ActsTrackingPassFlags.py:29
ActsTrackingPassFlags.createEFValidateF150TrackingPassFlags
def createEFValidateF150TrackingPassFlags()
Definition: ActsTrackingPassFlags.py:231
ActsTrackingPassFlags.createActsValidateSpacePointsTrackingPassFlags
def createActsValidateSpacePointsTrackingPassFlags()
Definition: ActsTrackingPassFlags.py:125
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:164
ActsTrackingPassFlags.createActsValidateTracksTrackingPassFlags
def createActsValidateTracksTrackingPassFlags()
Definition: ActsTrackingPassFlags.py:177
ActsTrackingPassFlags.createActsValidateConversionSeedsTrackingPassFlags
def createActsValidateConversionSeedsTrackingPassFlags()
Definition: ActsTrackingPassFlags.py:151
python.TrackingPassFlags.createITkLowPtTrackingPassFlags
def createITkLowPtTrackingPassFlags()
ITk LowPt mode ####################.
Definition: TrackingPassFlags.py:389
ActsTrackingPassFlags.createActsLargeRadiusTrackingPassFlags
def createActsLargeRadiusTrackingPassFlags()
Definition: ActsTrackingPassFlags.py:73
ActsTrackingPassFlags.createActsTrackingPassFlags
def createActsTrackingPassFlags()
Definition: ActsTrackingPassFlags.py:37
ActsTrackingPassFlags.createActsValidateAmbiguityResolutionTrackingPassFlags
def createActsValidateAmbiguityResolutionTrackingPassFlags()
Definition: ActsTrackingPassFlags.py:203
ActsTrackingPassFlags.createActsHeavyIonTrackingPassFlags
def createActsHeavyIonTrackingPassFlags()
Definition: ActsTrackingPassFlags.py:48
ActsTrackingPassFlags.createEFValidateF100TrackingPassFlags
def createEFValidateF100TrackingPassFlags()
Definition: ActsTrackingPassFlags.py:220
python.TrackingPassFlags.createITkTrackingPassFlags
def createITkTrackingPassFlags()
ITk mode ####################.
Definition: TrackingPassFlags.py:120
ActsTrackingPassFlags.createActsConversionTrackingPassFlags
def createActsConversionTrackingPassFlags()
Definition: ActsTrackingPassFlags.py:86
python.TrackingPassFlags.createITkLargeD0TrackingPassFlags
def createITkLargeD0TrackingPassFlags()
ITk LRT mode ####################.
Definition: TrackingPassFlags.py:321