ATLAS Offline Software
Loading...
Searching...
No Matches
python.TrackingPassFlags Namespace Reference

Classes

class  RoIStrategy

Functions

 createTrackingPassFlags ()
 createITkTrackingPassFlags ()
 ITk mode ####################.
 createITkHeavyIonTrackingPassFlags ()
 Heavyion mode #######################.
 createITkFastTrackingPassFlags ()
 createITkFTFPassFlags ()
 ITk with FTF standalone mode ####.
 createITkFTFLargeD0PassFlags ()
 createITkLargeD0TrackingPassFlags ()
 ITk LRT mode ####################.
 createITkLargeD0FastTrackingPassFlags ()
 createITkLowPtTrackingPassFlags ()
 ITk LowPt mode ####################.
 createHighPileupTrackingPassFlags ()
 HighPileUP mode ####################.
 createMinBiasTrackingPassFlags ()
 MinBias mode ########################.
 createUPCTrackingPassFlags ()
 UPC mode ########################.
 createHIPTrackingPassFlags ()
 HIP mode ########################.
 createLowPtRoITrackingPassFlags ()
 LowPtRoI mode ########################.
 createR3LargeD0TrackingPassFlags ()
 R3LargeD0 mode ########################.
 createLowPtLargeD0TrackingPassFlags ()
 LowPtLargeD0 mode ########################.
 createLowPtTrackingPassFlags ()
 LowPt mode ########################.
 createITkConversionTrackingPassFlags ()
 ITkConversion mode ########################.
 createVeryLowPtTrackingPassFlags ()
 VeryLowPt mode ########################.
 createForwardTracksTrackingPassFlags ()
 ForwardTracks mode ########################.
 createBeamGasTrackingPassFlags ()
 BeamGas mode ########################.
 createVtxLumiTrackingPassFlags ()
 VtxLumi mode ########################.
 createVtxLumiHeavyIonTrackingPassFlags ()
 VtxLumiHeavyIon mode ################.
 createVtxBeamSpotTrackingPassFlags ()
 VtxBeamSpot mode ########################.
 createCosmicsTrackingPassFlags ()
 Cosmics mode ########################.
 createHeavyIonTrackingPassFlags ()
 Heavyion mode #######################.
 createPixelTrackingPassFlags ()
 Pixel mode ###############################################.
 createDisappearingTrackingPassFlags ()
 Disappearing mode ######################.
 createSCTTrackingPassFlags ()
 SCT mode ######################.
 createTRTTrackingPassFlags ()
 TRT subdetector tracklet cuts ##########.
 createTRTStandaloneTrackingPassFlags ()
 TRT standalone tracklet cuts ##########.
 printPrimaryConfig (flags)
 printActiveConfig (flags)

Variables

 flags = initConfigFlags()
 Files
 l = logging.getLogger('TrackingPassFlags')
 doBLS
 configuredSolenoidFieldScale

Function Documentation

◆ createBeamGasTrackingPassFlags()

python.TrackingPassFlags.createBeamGasTrackingPassFlags ( )

BeamGas mode ########################.

Definition at line 671 of file TrackingPassFlags.py.

671def createBeamGasTrackingPassFlags():
672 icf = createTrackingPassFlags()
673 icf.extension = "BeamGas"
674 icf.usePrdAssociationTool = True
675 icf.minPT = lambda pcf: (
676 0.5 * Units.GeV * pcf.BField.configuredSolenoidFieldScale)
677 icf.maxPrimaryImpact = 300. * Units.mm
678 icf.maxZImpact = 2000. * Units.mm
679 icf.minClusters = 6
680 icf.maxHoles = 3
681 icf.maxPixelHoles = 3
682 icf.maxSctHoles = 3
683 icf.maxDoubleHoles = 1
684 icf.nHolesMax = 3
685 icf.nHolesGapMax = 3 # not as tight as 2*maxDoubleHoles
686 icf.doBremRecoverySi = False
687
688 return icf
689

◆ createCosmicsTrackingPassFlags()

python.TrackingPassFlags.createCosmicsTrackingPassFlags ( )

Cosmics mode ########################.

Definition at line 742 of file TrackingPassFlags.py.

742def createCosmicsTrackingPassFlags():
743 icf = createTrackingPassFlags()
744 icf.extension = "Cosmics"
745 icf.minPT = lambda pcf: (
746 0.5 * Units.GeV * pcf.BField.configuredSolenoidFieldScale)
747 icf.maxPrimaryImpact = 1000. * Units.mm
748 icf.maxZImpact = 10000. * Units.mm
749 icf.minClusters = 4
750 icf.minSiNotShared = 4
751 icf.maxHoles = 3
752 icf.maxPixelHoles = 3
753 icf.maxSctHoles = 3
754 icf.maxDoubleHoles = 1
755 icf.minTRTonTrk = 15
756 icf.roadWidth = 60.
757 icf.Xi2max = 60.
758 icf.Xi2maxNoAdd = 100.
759 icf.nWeightedClustersMin = 8
760 icf.nHolesMax = 3
761 icf.nHolesGapMax = 3 # not as tight as 2*maxDoubleHoles
762 icf.maxdImpactSSSSeeds = 20. * Units.mm
763 icf.doBremRecoverySi = False
764 icf.doZBoundary = False
765 icf.maxSeedsPerSP_Pixels = 5
766 icf.keepAllConfirmedPixelSeeds = False
767
768 return icf
769

◆ createDisappearingTrackingPassFlags()

python.TrackingPassFlags.createDisappearingTrackingPassFlags ( )

Disappearing mode ######################.

Definition at line 874 of file TrackingPassFlags.py.

874def createDisappearingTrackingPassFlags():
875 icf = createTrackingPassFlags()
876 icf.extension = "Disappearing"
877 icf.usePrdAssociationTool = True
878 icf.storeSeparateContainer = True
879 icf.minPT = lambda pcf: (
880 5 * Units.GeV * pcf.BField.configuredSolenoidFieldScale)
881 icf.minClusters = 4
882 icf.maxHoles = 0
883 icf.maxPixelHoles = 0
884 icf.maxSctHoles = 0
885 icf.maxDoubleHoles = 0
886 icf.minSiNotShared = 3
887 icf.maxShared = 0
888 icf.nHolesMax = 0
889 icf.nHolesGapMax = 0
890 icf.useSCT = True
891 icf.useSCTSeeding = False
892 icf.maxEta = 2.2
893 icf.doBremRecoverySi = False
894 def MainPassFlags(pcf):
895 return pcf.Tracking.__getattr__(pcf.Tracking.PrimaryPassConfig.value+'Pass')
896 icf.maxPrimaryImpact = lambda pcf: MainPassFlags(pcf).maxPrimaryImpact
897 icf.maxZImpact = lambda pcf: MainPassFlags(pcf).maxZImpact
898 icf.roadWidth = lambda pcf: MainPassFlags(pcf).roadWidth
899 return icf
900

◆ createForwardTracksTrackingPassFlags()

python.TrackingPassFlags.createForwardTracksTrackingPassFlags ( )

ForwardTracks mode ########################.

Definition at line 640 of file TrackingPassFlags.py.

640def createForwardTracksTrackingPassFlags():
641 icf = createTrackingPassFlags()
642 icf.extension = "Forward"
643 icf.usePrdAssociationTool = True
644 icf.useTIDE_Ambi = False
645 icf.useTRTExtension = False
646 icf.storeSeparateContainer = True
647 icf.minEta = 2.4 # restrict to minimal eta
648 icf.maxEta = 2.7
649 icf.minPT = lambda pcf: (
650 2 * Units.GeV * pcf.BField.configuredSolenoidFieldScale)
651 icf.minClusters = 3
652 icf.minSiNotShared = 3
653 icf.maxShared = 1
654 icf.minPixel = 3
655 icf.maxHoles = 1
656 icf.maxPixelHoles = 1
657 icf.maxSctHoles = 1
658 icf.maxDoubleHoles = 0
659 icf.nHolesMax = icf.maxHoles
660 icf.nHolesGapMax = icf.maxHoles
661 icf.radMax = 600. * Units.mm
662 icf.doBremRecoverySi = False
663 icf.doZBoundary = False
664
665 icf.RunPixelPID = False
666 icf.RunTRTPID = False
667
668 return icf
669

◆ createHeavyIonTrackingPassFlags()

python.TrackingPassFlags.createHeavyIonTrackingPassFlags ( )

Heavyion mode #######################.

Definition at line 771 of file TrackingPassFlags.py.

771def createHeavyIonTrackingPassFlags():
772 icf = createTrackingPassFlags()
773 icf.extension = "HeavyIon"
774 icf.maxPrimaryImpact = 10. * Units.mm
775 icf.maxZImpact = 200. * Units.mm
776 icf.minClusters = 9
777 icf.minSiNotShared = 7
778 icf.maxShared = 2 # was 1, cut is now on number of shared modules
779
780 icf.nHolesMax = 0
781 icf.nHolesGapMax = 0
782 icf.Xi2max = 6.
783 icf.Xi2maxNoAdd = 10.
784
785 icf.minPT = lambda pcf: (
786 0.5 * Units.GeV * pcf.BField.configuredSolenoidFieldScale)
787
788 icf.maxdImpactSSSSeeds = 20. * Units.mm
789 icf.maxdImpactPPSSeeds = 1.7
790
791 icf.maxHoles = 2
792 icf.maxPixelHoles = 1
793 icf.maxSctHoles = 1
794 icf.maxDoubleHoles = 0
795 icf.Xi2max = 9.
796 icf.Xi2maxNoAdd = 25.
797 icf.radMax = 600. * Units.mm # restrict to pixels + first SCT layer
798 icf.roadWidth = 20.
799 icf.doBremRecoverySi = False
800 icf.doZBoundary = False
801 icf.maxSeedsPerSP_Pixels = 5
802 icf.keepAllConfirmedPixelSeeds = False
803
804 return icf
805

◆ createHighPileupTrackingPassFlags()

python.TrackingPassFlags.createHighPileupTrackingPassFlags ( )

HighPileUP mode ####################.

Definition at line 398 of file TrackingPassFlags.py.

398def createHighPileupTrackingPassFlags():
399 icf = createTrackingPassFlags()
400 icf.extension = "HighPileup"
401 icf.minPT = lambda pcf : (
402 0.900 * Units.GeV * pcf.BField.configuredSolenoidFieldScale)
403 icf.minClusters = 9
404 icf.maxPixelHoles = 0
405 icf.doBremRecoverySi = False
406
407 return icf
408

◆ createHIPTrackingPassFlags()

python.TrackingPassFlags.createHIPTrackingPassFlags ( )

HIP mode ########################.

Definition at line 438 of file TrackingPassFlags.py.

438def createHIPTrackingPassFlags():
439 icf = createMinBiasTrackingPassFlags()
440 icf.extension = "HIP"
441 return icf
442
443

◆ createITkConversionTrackingPassFlags()

python.TrackingPassFlags.createITkConversionTrackingPassFlags ( )

ITkConversion mode ########################.

Definition at line 579 of file TrackingPassFlags.py.

579def createITkConversionTrackingPassFlags():
580 icf = createITkTrackingPassFlags()
581 icf.extension = "Conversion"
582 icf.usePrdAssociationTool = True
583
584 icf.etaBins = [-1.0,4.0]
585 icf.minPT = lambda pcf: (
586 [0.9 * Units.GeV * pcf.BField.configuredSolenoidFieldScale])
587 icf.maxPrimaryImpact = [10.0 * Units.mm]
588 icf.maxZImpact = [150.0 * Units.mm]
589 icf.minClusters = [6]
590 icf.minSiNotShared = [6]
591 icf.maxShared = [0]
592 icf.minPixel = [0]
593 icf.maxHoles = [0]
594 icf.maxPixelHoles = [1]
595 icf.maxSctHoles = [2]
596 icf.maxDoubleHoles = [1]
597
598 icf.nHolesMax = icf.maxHoles
599 icf.nHolesGapMax = icf.maxHoles
600 icf.nWeightedClustersMin = [6]
601 icf.maxdImpactSSSSeeds = [20.0 * Units.mm]
602 icf.radMax = 1100. * Units.mm
603 icf.doZBoundary = False
604
605 icf.Xi2max = [9.0]
606 icf.Xi2maxNoAdd = [25.0]
607 icf.doBremRecoverySi = True
608
609 return icf
610

◆ createITkFastTrackingPassFlags()

python.TrackingPassFlags.createITkFastTrackingPassFlags ( )

Definition at line 257 of file TrackingPassFlags.py.

257def createITkFastTrackingPassFlags():
258
259 icf = createITkTrackingPassFlags()
260
261 icf.minPT = lambda pcf : (
262 [0.9 * Units.GeV * pcf.BField.configuredSolenoidFieldScale,
263 0.4 * Units.GeV * pcf.BField.configuredSolenoidFieldScale,
264 0.4 * Units.GeV * pcf.BField.configuredSolenoidFieldScale])
265 icf.maxZImpact = [150.0 * Units.mm]
266 icf.minPixel = [3]
267 icf.maxHoles = [1]
268 icf.nHolesMax = icf.maxHoles
269 icf.nHolesGapMax = [1]
270 icf.minPTSeed = lambda pcf: (
271 0.9 * Units.GeV * pcf.BField.configuredSolenoidFieldScale)
272 icf.maxZImpactSeed = 150.0 * Units.mm
273 icf.useITkStripSeeding = False
274
275 return icf
276

◆ createITkFTFLargeD0PassFlags()

python.TrackingPassFlags.createITkFTFLargeD0PassFlags ( )

Definition at line 297 of file TrackingPassFlags.py.

297def createITkFTFLargeD0PassFlags():
298 icf = createITkLargeD0FastTrackingPassFlags()
299 icf.addFlag("doHitDV" , False)
300 icf.addFlag("doDisappearingTrk" , False)
301 icf.addFlag("useTrigTrackFollowing", False)
302 icf.addFlag("useTrigRoadPredictor", False)
303 icf.addFlag("useTracklets", False)
304 icf.useSeedFilter = False
305 icf.minPT = lambda pcf : (
306 [1.0 * Units.GeV * pcf.BField.configuredSolenoidFieldScale])
307
308 icf.maxPrimaryImpact = [400.0 * Units.mm]
309 icf.maxPrimaryImpactSeed = 400.0 * Units.mm
310 icf.maxdImpactSSSSeeds = [400.0 * Units.mm]
311
312
313 return icf
314
315

◆ createITkFTFPassFlags()

python.TrackingPassFlags.createITkFTFPassFlags ( )

ITk with FTF standalone mode ####.

Definition at line 278 of file TrackingPassFlags.py.

278def createITkFTFPassFlags():
279
280 icf = createITkFastTrackingPassFlags()
281
282 icf.addFlag("doHitDV" , False)
283 icf.addFlag("doDisappearingTrk" , False)
284 icf.addFlag("useTrigTrackFollowing", False)
285 icf.addFlag("useTrigRoadPredictor", False)
286 icf.addFlag("useTracklets", False)
287 icf.useSeedFilter = False
288 icf.minPT = lambda pcf : (
289 [0.9 * Units.GeV * pcf.BField.configuredSolenoidFieldScale,
290 0.4 * Units.GeV * pcf.BField.configuredSolenoidFieldScale,
291 0.4 * Units.GeV * pcf.BField.configuredSolenoidFieldScale])
292 icf.minPTSeed = lambda pcf : (
293 0.9 * Units.GeV * pcf.BField.configuredSolenoidFieldScale)
294
295 return icf
296

◆ createITkHeavyIonTrackingPassFlags()

python.TrackingPassFlags.createITkHeavyIonTrackingPassFlags ( )

Heavyion mode #######################.

Definition at line 238 of file TrackingPassFlags.py.

238def createITkHeavyIonTrackingPassFlags():
239 icf = createITkTrackingPassFlags()
240 icf.extension = "HeavyIon"
241 icf.maxPrimaryImpact = [5.0 * Units.mm]
242 icf.minPT = lambda pcf : (
243 [0.4 *Units.GeV * pcf.BField.configuredSolenoidFieldScale])
244 icf.minPTSeed = lambda pcf : (
245 0.4 * Units.GeV * pcf.BField.configuredSolenoidFieldScale)
246 icf.minClusters = [6]
247 icf.minSiNotShared = [6]
248 icf.Xi2max = [6.]
249 icf.Xi2maxNoAdd = [9.]
250 icf.maxPixelHoles = [1]
251 icf.maxSctHoles = [1]
252 icf.maxDoubleHoles = [0]
253 icf.doBremRecoverySi = False
254 return icf
255
256

◆ createITkLargeD0FastTrackingPassFlags()

python.TrackingPassFlags.createITkLargeD0FastTrackingPassFlags ( )

Definition at line 361 of file TrackingPassFlags.py.

361def createITkLargeD0FastTrackingPassFlags():
362
363 icf = createITkLargeD0TrackingPassFlags()
364
365 icf.useITkPixelSeeding = False
366 icf.useITkStripSeeding = True
367
368 icf.maxEta = 2.4
369 icf.etaBins = [-1.0, 2.4]
370 icf.minPT = lambda pcf : (
371 [5.0 * Units.GeV * pcf.BField.configuredSolenoidFieldScale])
372 icf.minPTSeed = lambda pcf : (
373 5.0 * Units.GeV * pcf.BField.configuredSolenoidFieldScale)
374 icf.nWeightedClustersMin = [8]
375 icf.maxPrimaryImpact = [150 * Units.mm]
376 icf.maxPrimaryImpactSeed = 150. * Units.mm
377 icf.maxdImpactSSSSeeds = [150.0 * Units.mm]
378 icf.maxZImpact = [200 * Units.mm]
379 icf.maxZImpactSeed = 200. * Units.mm
380 icf.radMax = 400. * Units.mm
381
382 return icf
383

◆ createITkLargeD0TrackingPassFlags()

python.TrackingPassFlags.createITkLargeD0TrackingPassFlags ( )

ITk LRT mode ####################.

Definition at line 317 of file TrackingPassFlags.py.

317def createITkLargeD0TrackingPassFlags():
318
319 icf = createITkTrackingPassFlags()
320 icf.extension = "LargeD0"
321 icf.usePrdAssociationTool = True
322 icf.storeSeparateContainer = lambda pcf : pcf.Tracking.storeSeparateLargeD0Container
323
324 icf.minPT = lambda pcf : (
325 [1000 * Units.MeV * pcf.BField.configuredSolenoidFieldScale])
326 icf.maxEta = 4.0
327 icf.etaBins = [-1.0, 4.0]
328 icf.maxPrimaryImpact = [300 * Units.mm]
329 icf.maxZImpact = [500 * Units.mm]
330 icf.minClusters = [8]
331 icf.minSiNotShared = [6]
332 icf.maxShared = [2]
333 icf.minPixel = [0]
334 icf.maxHoles = [1]
335 icf.maxPixelHoles = [1]
336 icf.maxSctHoles = [1]
337 icf.maxDoubleHoles = [0]
338
339 icf.maxZImpactSeed = 500.0 * Units.mm
340 icf.maxPrimaryImpactSeed = 300.0 * Units.mm
341 icf.minPTSeed = lambda pcf : (
342 1000 * Units.MeV * pcf.BField.configuredSolenoidFieldScale)
343
344 icf.radMax = 1100. * Units.mm
345 icf.nHolesMax = icf.maxHoles
346 icf.nHolesGapMax = icf.maxHoles
347 icf.roadWidth = 5
348
349 # --- seeding
350 icf.useITkPixelSeeding = False
351 icf.maxdImpactSSSSeeds = [300.0 * Units.mm]
352
353 icf.doBremRecoverySi = False
354
355 icf.Xi2max = [9.0]
356 icf.Xi2maxNoAdd = [25.0]
357 icf.nWeightedClustersMin = [6]
358
359 return icf
360

◆ createITkLowPtTrackingPassFlags()

python.TrackingPassFlags.createITkLowPtTrackingPassFlags ( )

ITk LowPt mode ####################.

Definition at line 385 of file TrackingPassFlags.py.

385def createITkLowPtTrackingPassFlags():
386
387 icf = createITkTrackingPassFlags()
388 icf.extension = "LowPt"
389 icf.minPT = lambda pcf : (
390 [0.4 * Units.GeV * pcf.BField.configuredSolenoidFieldScale])
391 icf.minPTSeed = lambda pcf : (
392 0.4 * Units.GeV * pcf.BField.configuredSolenoidFieldScale)
393 icf.doBremRecoverySi = False
394
395 return icf
396

◆ createITkTrackingPassFlags()

python.TrackingPassFlags.createITkTrackingPassFlags ( )

ITk mode ####################.

Definition at line 119 of file TrackingPassFlags.py.

119def createITkTrackingPassFlags():
120
121 # Set ITk flags from scratch to avoid relying on InDet flags through lambda functions
122 from AthenaConfiguration.AthConfigFlags import AthConfigFlags
123 icf = AthConfigFlags()
124
125 icf.addFlag("extension", "" )
126
127 icf.addFlag("useITkPixel" , lambda pcf : pcf.Detector.EnableITkPixel )
128 icf.addFlag("useITkStrip" , lambda pcf : pcf.Detector.EnableITkStrip )
129 icf.addFlag("useITkPixelSeeding" , True )
130 icf.addFlag("useITkStripSeeding" , True )
131
132 icf.addFlag("usePrdAssociationTool" , False)
133 icf.addFlag("storeSeparateContainer" , False)
134 icf.addFlag("doZBoundary" , True)
135 icf.addFlag("doAmbiguityProcessorTrackFit", True)
136
137 icf.addFlag("useTIDE_Ambi", lambda pcf: pcf.Tracking.doTIDE_Ambi)
138
139 # Maximum bin set to 9999 instead of four to prevent out of bounds lookups
140 icf.addFlag("etaBins" , [-1.0, 2.0, 2.6, 9999.0])
141 icf.addFlag("maxEta" , 4.0)
142 icf.addFlag("minPT" , lambda pcf :
143 [0.2 * Units.GeV * pcf.BField.configuredSolenoidFieldScale]
144 if pcf.Tracking.doLowMu else
145 [0.9 * Units.GeV * pcf.BField.configuredSolenoidFieldScale,
146 0.4 * Units.GeV * pcf.BField.configuredSolenoidFieldScale,
147 0.4 * Units.GeV * pcf.BField.configuredSolenoidFieldScale])
148
149 icf.addFlag("minPTSeed" , lambda pcf : (
150 pcf.BField.configuredSolenoidFieldScale *
151 (0.2 * Units.GeV if pcf.Tracking.doLowMu
152 else 0.9 * Units.GeV)))
153 icf.addFlag("maxPrimaryImpactSeed" , 5.0 * Units.mm)
154 icf.addFlag("maxZImpactSeed" , 200.0 * Units.mm)
155 icf.addFlag("useSeedFilter" , True)
156 icf.addFlag("useHoughVertexFilter" , False) # experimental, keep False
157
158 # --- cluster cuts
159 icf.addFlag("minClusters" , lambda pcf :
160 [6, 5, 4] if pcf.Tracking.doLowMu else [9, 8, 7])
161 icf.addFlag("minSiNotShared" , lambda pcf :
162 [6, 5, 4] if pcf.Tracking.doLowMu else [7, 6, 5])
163 icf.addFlag("maxShared" , [2])
164 icf.addFlag("minPixel" , [1])
165 icf.addFlag("maxHoles" , [2])
166 icf.addFlag("maxPixelHoles" , [2])
167 icf.addFlag("maxSctHoles" , [2])
168 icf.addFlag("maxDoubleHoles" , [1])
169 icf.addFlag("maxPrimaryImpact" , [5.0 * Units.mm, 5.0 * Units.mm, 10.0 * Units.mm])
170 icf.addFlag("maxEMImpact" , [50.0 * Units.mm])
171 icf.addFlag("maxZImpact" , [200.0 * Units.mm])
172
173 # --- general pattern cuts for NewTracking
174 icf.addFlag("roadWidth" , 20.)
175 icf.addFlag("nHolesMax" , icf.maxHoles)
176 icf.addFlag("nHolesGapMax" , icf.maxHoles)
177
178 icf.addFlag("Xi2max" , [9.0])
179 icf.addFlag("Xi2maxNoAdd" , [25.0])
180 icf.addFlag("nWeightedClustersMin" , [6])
181
182 # --- seeding
183 icf.addFlag("maxdImpactSSSSeeds" , [20.0 * Units.mm])
184 icf.addFlag("radMax" , 1100. * Units.mm)
185
186 # --- min pt cut for brem
187 icf.addFlag("doBremRecoverySi", lambda pcf: pcf.Tracking.doBremRecovery)
188 icf.addFlag("minPTBrem", lambda pcf: (
189 [1. * Units.GeV * pcf.BField.configuredSolenoidFieldScale]))
190
191 # -- use of calo information
192 icf.addFlag("doCaloSeededBremSi", lambda pcf: pcf.Tracking.doCaloSeededBrem)
193 icf.addFlag("doCaloSeededAmbiSi", lambda pcf: pcf.Tracking.doCaloSeededAmbi)
194
195 # --- handle ACTS workflow coexistence
196 # Athena components
197 icf.addFlag("doAthenaCluster", True)
198 icf.addFlag("doAthenaSpacePoint", True)
199 icf.addFlag("doAthenaSeed", True)
200 icf.addFlag("doAthenaTrack", True)
201 icf.addFlag("doAthenaAmbiguityResolution", True)
202 # Acts components
203 icf.addFlag("doActsCluster", False)
204 icf.addFlag("doActsSpacePoint", False)
205 icf.addFlag("doActsSeed", False)
206 icf.addFlag("doActsTrack", False)
207 icf.addFlag("doActsAmbiguityResolution", False)
208 # Athena -> Acts EDM converters
209 icf.addFlag("doAthenaToActsCluster", False)
210 icf.addFlag("doAthenaToActsSpacePoint", False)
211 icf.addFlag("doAthenaToActsTrack", False)
212 # Acts -> Athena EDM converters
213 icf.addFlag("doActsToAthenaCluster", False)
214 icf.addFlag("doActsToAthenaSpacePoint", False)
215 icf.addFlag("doActsToAthenaTrack", False)
216 icf.addFlag("doActsToAthenaResolvedTrack", False)
217
218 # --- flags for GNN tracking
219 icf.addFlag("doGNNTrack", False)
220
221 # ---flag for FPGA tracking
222 icf.addFlag("doFPGASpacePoint", False)
223 icf.addFlag("doFPGACluster", False)
224 icf.addFlag("doFPGASeed", False)
225 icf.addFlag("doFPGATrackSim", False)
226
227 # --- Flags for detailed information.
228 # Ignored for Primary Pass (always active);
229 # Enable for other passes with dedicated output container, if desired.
230 icf.addFlag("storeTrackSeeds", False)
231 icf.addFlag("storeSiSPSeededTracks", False)
232
233 return icf
234
235
236

◆ createLowPtLargeD0TrackingPassFlags()

python.TrackingPassFlags.createLowPtLargeD0TrackingPassFlags ( )

LowPtLargeD0 mode ########################.

Definition at line 518 of file TrackingPassFlags.py.

518def createLowPtLargeD0TrackingPassFlags():
519 icf = createTrackingPassFlags()
520 icf.extension = "LowPtLargeD0"
521 icf.usePrdAssociationTool = True
522 icf.storeSeparateContainer = lambda pcf : pcf.Tracking.storeSeparateLargeD0Container
523 icf.maxPT = lambda pcf: (
524 1.0 * Units.TeV * pcf.BField.configuredSolenoidFieldScale)
525 icf.minPT = lambda pcf: (
526 100 * Units.MeV * pcf.BField.configuredSolenoidFieldScale)
527 icf.maxEta = 5
528 icf.maxPrimaryImpact = 300.0 * Units.mm
529 icf.maxZImpact = 1500.0 * Units.mm
530 icf.minClusters = 5
531 icf.minSiNotShared = 5
532 icf.maxShared = 2 # cut is now on number of shared modules
533 icf.minPixel = 0
534 icf.maxHoles = 2
535 icf.maxPixelHoles = 1
536 icf.maxSctHoles = 2
537 icf.maxDoubleHoles = 1
538 icf.radMax = 600. * Units.mm
539 icf.nHolesMax = icf.maxHoles
540 icf.nHolesGapMax = icf.maxHoles
541 icf.maxTracksPerSharedPRD = 2
542 icf.doBremRecoverySi = False
543
544 icf.RunPixelPID = False
545 icf.RunTRTPID = False
546
547 return icf
548

◆ createLowPtRoITrackingPassFlags()

python.TrackingPassFlags.createLowPtRoITrackingPassFlags ( )

LowPtRoI mode ########################.

Definition at line 445 of file TrackingPassFlags.py.

445def createLowPtRoITrackingPassFlags():
446 icf = createTrackingPassFlags()
447 icf.extension = "LowPtRoI"
448 icf.usePrdAssociationTool = True
449 icf.storeSeparateContainer = True
450 icf.maxPT = lambda pcf: (
451 0.850 * Units.GeV * pcf.BField.configuredSolenoidFieldScale)
452 icf.minPT = lambda pcf: (
453 0.050 * Units.GeV * pcf.BField.configuredSolenoidFieldScale)
454 icf.minClusters = 5
455 icf.minSiNotShared = 4
456 icf.maxShared = 1 # cut is now on number of shared modules
457 icf.minPixel = 2
458 icf.maxHoles = 2
459 icf.maxPixelHoles = 1
460 icf.maxSctHoles = 2
461 icf.maxDoubleHoles = 1
462 icf.radMax = 600. * Units.mm
463 icf.nHolesMax = icf.maxHoles
464 icf.nHolesGapMax = icf.maxHoles # not as tight as 2*maxDoubleHoles
465 icf.doBremRecoverySi = False
466 # Add custom flags valid for this pass only
467 icf.addFlag("z0WindowRoI", 30.0) # mm
468 icf.addFlag("doRandomSpot", False)
469 icf.addFlag("RoIStrategy", RoIStrategy.LeadTracks)
470 icf.addFlag("inputLowPtRoIfile","")
471
472 return icf
473
474

◆ createLowPtTrackingPassFlags()

python.TrackingPassFlags.createLowPtTrackingPassFlags ( )

LowPt mode ########################.

Definition at line 550 of file TrackingPassFlags.py.

550def createLowPtTrackingPassFlags():
551 icf = createTrackingPassFlags()
552 icf.extension = "LowPt"
553 icf.usePrdAssociationTool = True
554 icf.isLowPt = True
555 icf.maxPT = lambda pcf: (
556 pcf.BField.configuredSolenoidFieldScale *
557 (1e6 if pcf.Tracking.doMinBias else
558 pcf.Tracking.MainPass.minPT + 0.3) * Units.GeV)
559 icf.minPT = lambda pcf: (
560 0.05 * Units.GeV * pcf.BField.configuredSolenoidFieldScale)
561 icf.minClusters = 5
562 icf.minSiNotShared = 4
563 icf.maxShared = 1 # cut is now on number of shared modules
564 icf.minPixel = 2 # At least one pixel hit for low-pt (assoc. seeded on pixels!)
565 icf.maxHoles = 2
566 icf.maxPixelHoles = 1
567 icf.maxSctHoles = 2
568 icf.maxDoubleHoles = 1
569 icf.radMax = 600. * Units.mm
570 icf.nHolesMax = icf.maxHoles
571 icf.nHolesGapMax = icf.maxHoles # not as tight as 2*maxDoubleHoles
572 icf.maxPrimaryImpact = lambda pcf: (
573 100. * Units.mm if pcf.Tracking.doMinBias else 10. * Units.mm)
574 icf.doBremRecoverySi = False
575
576 return icf
577

◆ createMinBiasTrackingPassFlags()

python.TrackingPassFlags.createMinBiasTrackingPassFlags ( )

MinBias mode ########################.

Definition at line 410 of file TrackingPassFlags.py.

410def createMinBiasTrackingPassFlags():
411 icf = createTrackingPassFlags()
412 icf.extension = "MinBias"
413 icf.minPT = lambda pcf: (
414 0.1 * Units.GeV * pcf.BField.configuredSolenoidFieldScale)
415 icf.maxPrimaryImpact = 10. * Units.mm
416 icf.maxZImpact = 250. * Units.mm
417 icf.minClusters = 5
418 icf.maxdImpactSSSSeeds = 20.0 * Units.mm # apply cut on SSS seeds
419 icf.roadWidth = 20.
420 icf.doBremRecoverySi = False
421 icf.maxSeedsPerSP_Pixels = 5
422 icf.keepAllConfirmedPixelSeeds = False
423
424 return icf
425

◆ createPixelTrackingPassFlags()

python.TrackingPassFlags.createPixelTrackingPassFlags ( )

Pixel mode ###############################################.

Definition at line 807 of file TrackingPassFlags.py.

807def createPixelTrackingPassFlags():
808 icf = createTrackingPassFlags()
809 icf.extension = "Pixel"
810 icf.isLowPt = lambda pcf : pcf.Tracking.doMinBias
811
812 def _minPt( pcf ):
813 if pcf.Beam.Type is BeamType.Cosmics:
814 return 0.5 * Units.GeV * pcf.BField.configuredSolenoidFieldScale
815 if pcf.Tracking.PrimaryPassConfig is PrimaryPassConfig.UPC:
816 return 0.05 * Units.GeV * pcf.BField.configuredSolenoidFieldScale
817 if pcf.Tracking.PrimaryPassConfig is PrimaryPassConfig.HIP:
818 return 0.05 * Units.GeV * pcf.BField.configuredSolenoidFieldScale
819 if pcf.Tracking.doMinBias:
820 return 0.05 * Units.GeV * pcf.BField.configuredSolenoidFieldScale
821 return 0.1 * Units.GeV * pcf.BField.configuredSolenoidFieldScale
822
823 icf.minPT = _minPt
824 icf.minClusters = 3
825
826 def _pick( default, hion, cosmics):
827 def _internal( pcf ):
828 if pcf.Tracking.PrimaryPassConfig is PrimaryPassConfig.HeavyIon:
829 return hion
830 if pcf.Beam.Type is BeamType.Cosmics:
831 return cosmics
832 return default
833 return _internal
834
835 icf.maxHoles = _pick( default = 1, hion = 0, cosmics = 3 )
836 icf.maxPixelHoles = _pick( default = 1, hion = 0, cosmics = 3 )
837 icf.maxSctHoles = 0
838 icf.maxDoubleHoles = 0
839 icf.minSiNotShared = 3
840 icf.maxShared = 0
841 icf.nHolesMax = _pick( default = 1, hion = 0, cosmics = 3 )
842 icf.nHolesGapMax = _pick( default = 1, hion = 0, cosmics = 3 )
843 icf.useSCT = False
844 icf.useSCTSeeding = False
845 icf.maxPrimaryImpact = lambda pcf: (
846 1000. * Units.mm if pcf.Beam.Type is BeamType.Cosmics else
847 10. * Units.mm if pcf.Tracking.doUPC else
848 5. * Units.mm)
849 icf.roadWidth = lambda pcf: (
850 60.0 if pcf.Beam.Type is BeamType.Cosmics else
851 12.0)
852 icf.maxZImpact = lambda pcf: (
853 10000. * Units.mm if pcf.Beam.Type is BeamType.Cosmics else
854 320. * Units.mm if pcf.Tracking.doLowMu else
855 250. * Units.mm if pcf.Tracking.doMinBias else
856 200. * Units.mm)
857 icf.Xi2max = lambda pcf: (
858 60. if pcf.Beam.Type is BeamType.Cosmics else
859 15. if pcf.Tracking.doLowMu else
860 9.)
861 icf.Xi2maxNoAdd = lambda pcf: (
862 100.0 if pcf.Beam.Type is BeamType.Cosmics else
863 35. if pcf.Tracking.doLowMu else
864 25.)
865 icf.nWeightedClustersMin = 6
866 icf.doBremRecoverySi = False
867
868 icf.RunPixelPID = lambda pcf: (
869 pcf.Tracking.PrimaryPassConfig is PrimaryPassConfig.UPC)
870 icf.RunTRTPID = False
871 return icf
872

◆ createR3LargeD0TrackingPassFlags()

python.TrackingPassFlags.createR3LargeD0TrackingPassFlags ( )

R3LargeD0 mode ########################.

Definition at line 476 of file TrackingPassFlags.py.

476def createR3LargeD0TrackingPassFlags():
477 icf = createTrackingPassFlags()
478 icf.extension = "R3LargeD0"
479 icf.usePrdAssociationTool = True
480 icf.usePixelSeeding = False
481 icf.storeSeparateContainer = lambda pcf : pcf.Tracking.storeSeparateLargeD0Container
482 icf.maxPT = lambda pcf : (
483 1.0 * Units.TeV * pcf.BField.configuredSolenoidFieldScale)
484 icf.minPT = lambda pcf : (
485 1.0 * Units.GeV * pcf.BField.configuredSolenoidFieldScale)
486 icf.maxEta = 3
487 icf.maxPrimaryImpact = 300.0 * Units.mm
488 icf.maxEMImpact = 300 * Units.mm
489 icf.maxZImpact = 500 * Units.mm
490 icf.minClusters = 8
491 icf.minSiNotShared = 6
492 icf.maxShared = 2 # cut is now on number of shared modules
493 icf.minPixel = 0
494 icf.maxHoles = 2
495 icf.maxPixelHoles = 1
496 icf.maxSctHoles = 1
497 icf.maxDoubleHoles = 0
498 icf.radMax = 600. * Units.mm
499 icf.nHolesMax = icf.maxHoles
500 icf.nHolesGapMax = 1
501 icf.maxTracksPerSharedPRD = 2
502 icf.Xi2max = 9.0
503 icf.Xi2maxNoAdd = 25.0
504 icf.roadWidth = 5.
505 icf.nWeightedClustersMin = 8
506 icf.maxdImpactSSSSeeds = 300.0
507 icf.doZBoundary = True
508 icf.keepAllConfirmedStripSeeds = True
509 icf.maxSeedsPerSP_Strips = 1
510 icf.doBremRecoverySi = False
511
512 icf.RunPixelPID = False
513 icf.RunTRTPID = False
514
515 return icf
516

◆ createSCTTrackingPassFlags()

python.TrackingPassFlags.createSCTTrackingPassFlags ( )

SCT mode ######################.

Definition at line 902 of file TrackingPassFlags.py.

902def createSCTTrackingPassFlags():
903 icf = createTrackingPassFlags()
904 icf.extension = "SCT"
905 icf.minClusters = 7
906 icf.maxDoubleHoles = 1
907 icf.minSiNotShared = 5
908 icf.usePixel = False
909 icf.usePixelSeeding = False
910
911 def _minpt( pcf ):
912 if pcf.Beam.Type is BeamType.Cosmics:
913 return 0.5 * Units.GeV * pcf.BField.configuredSolenoidFieldScale
914 if pcf.Tracking.doMinBias:
915 return 0.1 * Units.GeV * pcf.BField.configuredSolenoidFieldScale
916 return 0.1 * Units.GeV * pcf.BField.configuredSolenoidFieldScale
917
918 icf.minPT = _minpt
919
920 icf.maxPrimaryImpact = lambda pcf: (
921 1000. * Units.mm if pcf.Beam.Type is BeamType.Cosmics else
922 10. * Units.mm if pcf.Tracking.doLowMu else
923 5. * Units.mm)
924 icf.maxZImpact = lambda pcf: (
925 10000. * Units.mm if pcf.Beam.Type is BeamType.Cosmics else
926 320. * Units.mm if pcf.Tracking.doLowMu else
927 200.0 * Units.mm)
928
929 icf.maxHoles = lambda pcf: 3 if pcf.Beam.Type is BeamType.Cosmics else 2
930 icf.nHolesMax = lambda pcf: 3 if pcf.Beam.Type is BeamType.Cosmics else 2
931 icf.nHolesGapMax = lambda pcf: 3 if pcf.Beam.Type is BeamType.Cosmics else 2
932 icf.maxPixelHoles = lambda pcf: 0 if pcf.Beam.Type is BeamType.Cosmics else 0
933 icf.maxSctHoles = lambda pcf: 3 if pcf.Beam.Type is BeamType.Cosmics else 2
934 icf.maxShared = 0
935 icf.roadWidth = lambda pcf: (
936 60. if pcf.Beam.Type is BeamType.Cosmics else
937 20. if pcf.Tracking.doLowMu else
938 12.)
939 icf.Xi2max = lambda pcf: (
940 60. if pcf.Beam.Type is BeamType.Cosmics else
941 15. if pcf.Tracking.doLowMu else
942 9.)
943 icf.Xi2maxNoAdd = lambda pcf: (
944 100.0 if pcf.Beam.Type is BeamType.Cosmics else
945 35. if pcf.Tracking.doLowMu else
946 25.)
947 icf.nWeightedClustersMin = lambda pcf: 4 if pcf.Beam.Type is BeamType.Cosmics else 6
948 icf.minClusters = lambda pcf: (
949 4 if pcf.Beam.Type is BeamType.Cosmics else
950 7 if pcf.Tracking.doLowMu else
951 8)
952 icf.minSiNotShared = lambda pcf: 4 if pcf.Beam.Type is BeamType.Cosmics else 5
953 icf.doBremRecoverySi = False
954
955 icf.RunPixelPID = False
956 icf.RunTRTPID = False
957 return icf
958

◆ createTrackingPassFlags()

python.TrackingPassFlags.createTrackingPassFlags ( )

Definition at line 17 of file TrackingPassFlags.py.

17def createTrackingPassFlags():
18 from AthenaConfiguration.AthConfigFlags import AthConfigFlags
19 icf = AthConfigFlags()
20
21 icf.addFlag("extension", "" )
22
23 icf.addFlag("usePrdAssociationTool", False)
24 icf.addFlag("isLowPt", False)
25 icf.addFlag("useTIDE_Ambi", lambda pcf: pcf.Tracking.doTIDE_Ambi)
26 icf.addFlag("useTRTExtension", lambda pcf: pcf.Tracking.doTRTExtension)
27 icf.addFlag("storeSeparateContainer", False)
28 icf.addFlag("doAmbiguityProcessorTrackFit", True)
29
30 # --- first set kinematic defaults
31 icf.addFlag("minPT", lambda pcf: (pcf.BField.configuredSolenoidFieldScale *
32 (0.4 * Units.GeV if pcf.Tracking.doLowMu else
33 0.5 * Units.GeV)))
34 icf.addFlag("maxPT", 1000.0 * Units.TeV) # off!
35 icf.addFlag("minEta", -1) # off!
36 icf.addFlag("maxEta", 2.7)
37
38
39 # --- cluster cuts
40 icf.addFlag("minClusters", lambda pcf:
41 3 if (pcf.Detector.EnablePixel and not pcf.Detector.EnableSCT) else
42 6 if (pcf.Detector.EnableSCT and not pcf.Detector.EnablePixel) else
43 7 if pcf.Tracking.doLowMu else
44 8 )
45
46 icf.addFlag("minSiNotShared", 6)
47
48 icf.addFlag("maxShared", 1) # cut is now on number of shared modules
49 icf.addFlag("minPixel", 0)
50 icf.addFlag("maxHoles", lambda pcf: 3 if pcf.Tracking.doLowMu else 2)
51 icf.addFlag("maxPixelHoles", lambda pcf: 2 if pcf.Tracking.doLowMu else 1)
52 icf.addFlag("maxSctHoles", 2)
53 icf.addFlag("maxDoubleHoles", 1)
54
55 icf.addFlag("maxPrimaryImpact", lambda pcf:
56 10.0 * Units.mm if (pcf.Tracking.doBLS or pcf.Tracking.doLowMu) else
57 5.0 * Units.mm)
58 icf.addFlag("maxEMImpact", 50.0 * Units.mm)
59 icf.addFlag("maxZImpact", lambda pcf:
60 320.0 * Units.mm if pcf.Tracking.doLowMu else
61 200.0 * Units.mm)
62
63 # --- this is for the TRT-extension
64 icf.addFlag("minTRTonTrk", 9)
65 icf.addFlag("minTRTPrecFrac", 0.3)
66
67 # --- general pattern cuts for NewTracking
68
69 # default R cut for SP in SiSpacePointsSeedMaker
70 icf.addFlag("radMax", 600.0 * Units.mm)
71 icf.addFlag("roadWidth", lambda pcf: 20. if pcf.Tracking.doLowMu else 12.)
72 icf.addFlag("nHolesMax", lambda pcf: 3 if pcf.Tracking.doLowMu else 2)
73 icf.addFlag("nHolesGapMax", lambda pcf: 3 if pcf.Tracking.doLowMu else 2)
74 icf.addFlag("Xi2max", lambda pcf: 15. if pcf.Tracking.doLowMu else 9.)
75 icf.addFlag("Xi2maxNoAdd", lambda pcf: 35. if pcf.Tracking.doLowMu else 25.)
76 icf.addFlag("nWeightedClustersMin", 6)
77
78 # --- seeding
79 icf.addFlag("useSeedFilter", True)
80 icf.addFlag("maxTracksPerSharedPRD", 0)
81 icf.addFlag("maxdImpactPPSSeeds", lambda pcf: 1.7 if pcf.Tracking.doLowMu else 2.)
82 icf.addFlag("maxdImpactSSSSeeds", lambda pcf:
83 1000. * Units.mm if pcf.Tracking.doLowMu else
84 10. * Units.mm if pcf.Tracking.doBLS else
85 5. * Units.mm)
86 icf.addFlag("maxSeedsPerSP_Pixels", lambda pcf: 5 if pcf.Tracking.doLowMu else 1)
87 icf.addFlag("maxSeedsPerSP_Strips", 5)
88 icf.addFlag("keepAllConfirmedPixelSeeds", lambda pcf: not pcf.Tracking.doLowMu)
89 icf.addFlag("keepAllConfirmedStripSeeds", False)
90
91 # --- min pt cut for brem
92 icf.addFlag("doBremRecoverySi", lambda pcf: pcf.Tracking.doBremRecovery)
93 icf.addFlag("minPTBrem", lambda pcf: (
94 1. * Units.GeV * pcf.BField.configuredSolenoidFieldScale))
95
96 # --- Z Boundary Seeding
97 icf.addFlag("doZBoundary", lambda pcf:
98 not (pcf.Beam.Type is BeamType.Cosmics or pcf.Tracking.doLowMu))
99
100 icf.addFlag("usePixel" , lambda pcf : pcf.Detector.EnablePixel )
101 icf.addFlag("useSCT" , lambda pcf : pcf.Detector.EnableSCT )
102 icf.addFlag("usePixelSeeding" , lambda pcf : pcf.Detector.EnablePixel )
103 icf.addFlag("useSCTSeeding" , lambda pcf : pcf.Detector.EnableSCT )
104
105 # --- Pixel and TRT particle ID during particle creation
106 icf.addFlag("RunPixelPID", True)
107 icf.addFlag("RunTRTPID", True)
108
109 # --- Flags for detailed information.
110 # Ignored for Primary Pass (always active);
111 # Enable for other passes with dedicated output container, if desired.
112 icf.addFlag("storeTrackSeeds", False)
113 icf.addFlag("storeSiSPSeededTracks", False)
114
115 return icf
116
117

◆ createTRTStandaloneTrackingPassFlags()

python.TrackingPassFlags.createTRTStandaloneTrackingPassFlags ( )

TRT standalone tracklet cuts ##########.

Definition at line 975 of file TrackingPassFlags.py.

975def createTRTStandaloneTrackingPassFlags():
976 icf = createTrackingPassFlags()
977 icf.extension = "TRTStandalone"
978 icf.useTIDE_Ambi = False
979 icf.usePrdAssociationTool = True
980 icf.doBremRecoverySi = False
981
982 return icf
983
984

◆ createTRTTrackingPassFlags()

python.TrackingPassFlags.createTRTTrackingPassFlags ( )

TRT subdetector tracklet cuts ##########.

Definition at line 960 of file TrackingPassFlags.py.

960def createTRTTrackingPassFlags():
961 icf = createTrackingPassFlags()
962 icf.extension = "TRT"
963 icf.useTIDE_Ambi = False
964 icf.usePrdAssociationTool = True
965 icf.minPT = lambda pcf: (
966 0.4 * Units.GeV * pcf.BField.configuredSolenoidFieldScale)
967 icf.doBremRecoverySi = False
968
969 icf.RunPixelPID = False
970 icf.RunTRTPID = False
971 return icf
972
973

◆ createUPCTrackingPassFlags()

python.TrackingPassFlags.createUPCTrackingPassFlags ( )

UPC mode ########################.

Definition at line 427 of file TrackingPassFlags.py.

427def createUPCTrackingPassFlags():
428 icf = createMinBiasTrackingPassFlags()
429 icf.extension = "UPC"
430 # --- min pt cut for brem
431 icf.minPTBrem = lambda pcf: (
432 0.75 * Units.GeV * pcf.BField.configuredSolenoidFieldScale)
433 # MinBias turns off Brem Recovery, turn it on here
434 icf.doBremRecoverySi = lambda pcf: pcf.Tracking.doBremRecovery
435 return icf
436

◆ createVeryLowPtTrackingPassFlags()

python.TrackingPassFlags.createVeryLowPtTrackingPassFlags ( )

VeryLowPt mode ########################.

Definition at line 612 of file TrackingPassFlags.py.

612def createVeryLowPtTrackingPassFlags():
613 icf = createTrackingPassFlags() #TODO consider using createLowPtTrackingPassFlags as a base here
614 icf.extension = "VeryLowPt"
615 icf.usePrdAssociationTool = True
616 icf.isLowPt = True
617 icf.useTRTExtension = False
618 icf.maxPT = lambda pcf : (
619 pcf.BField.configuredSolenoidFieldScale *
620 (1e6 if pcf.Tracking.doMinBias else
621 pcf.Tracking.MainPass.minPT + 0.3) * Units.GeV)
622 icf.minPT = lambda pcf : (
623 0.050 * Units.GeV * pcf.BField.configuredSolenoidFieldScale)
624 icf.minClusters = 3
625 icf.minSiNotShared = 3
626 icf.maxShared = 1 # cut is now on number of shared modules
627 icf.minPixel = 3 # At least one pixel hit for low-pt (assoc. seeded on pixels!)
628 icf.maxHoles = 1
629 icf.maxPixelHoles = 1
630 icf.maxSctHoles = 1
631 icf.maxDoubleHoles = 0
632 icf.nHolesMax = 1
633 icf.nHolesGapMax = 1 # not as tight as 2*maxDoubleHoles
634 icf.radMax = 600. * Units.mm # restrivt to pixels
635 icf.doBremRecoverySi = False
636
637 return icf
638

◆ createVtxBeamSpotTrackingPassFlags()

python.TrackingPassFlags.createVtxBeamSpotTrackingPassFlags ( )

VtxBeamSpot mode ########################.

Definition at line 727 of file TrackingPassFlags.py.

727def createVtxBeamSpotTrackingPassFlags():
728 icf = createTrackingPassFlags()
729 icf.extension = "VtxBeamSpot"
730 icf.minPT = lambda pcf: (
731 0.9 * Units.GeV * pcf.BField.configuredSolenoidFieldScale)
732 icf.minClusters = 9
733 icf.maxPixelHoles = 0
734 icf.radMax = 320. * Units.mm
735 icf.nHolesMax = 2
736 icf.nHolesGapMax = 1
737 icf.doBremRecoverySi = False
738
739 return icf
740

◆ createVtxLumiHeavyIonTrackingPassFlags()

python.TrackingPassFlags.createVtxLumiHeavyIonTrackingPassFlags ( )

VtxLumiHeavyIon mode ################.

Definition at line 706 of file TrackingPassFlags.py.

706def createVtxLumiHeavyIonTrackingPassFlags():
707 icf = createTrackingPassFlags()
708 icf.extension = "VtxLumiHeavyIon"
709 icf.minPT = lambda pcf: (
710 0.4 * Units.GeV * pcf.BField.configuredSolenoidFieldScale)
711 icf.maxPrimaryImpact = 10. * Units.mm
712 icf.maxZImpact = 250.0 * Units.mm
713 icf.minClusters = 7
714 icf.maxPixelHoles = 1
715 icf.radMax = 600. * Units.mm
716 icf.nHolesMax = 2
717 icf.nHolesGapMax = 1
718 icf.maxdImpactSSSSeeds = 20.
719 icf.roadWidth = 20.
720 icf.keepAllConfirmedPixelSeeds = False
721 icf.maxSeedsPerSP_Pixels = 5
722 icf.doBremRecoverySi = False
723
724 return icf
725

◆ createVtxLumiTrackingPassFlags()

python.TrackingPassFlags.createVtxLumiTrackingPassFlags ( )

VtxLumi mode ########################.

Definition at line 691 of file TrackingPassFlags.py.

691def createVtxLumiTrackingPassFlags():
692 icf = createTrackingPassFlags()
693 icf.extension = "VtxLumi"
694 icf.minPT = lambda pcf: (
695 0.9 * Units.GeV * pcf.BField.configuredSolenoidFieldScale)
696 icf.minClusters = 7
697 icf.maxPixelHoles = 1
698 icf.radMax = 600. * Units.mm
699 icf.nHolesMax = 2
700 icf.nHolesGapMax = 1
701 icf.doBremRecoverySi = False
702
703 return icf
704

◆ printActiveConfig()

python.TrackingPassFlags.printActiveConfig ( flags)

Definition at line 998 of file TrackingPassFlags.py.

998def printActiveConfig(flags):
999 print()
1000 print("************************************************************************")
1001
1002 print("******************** Tracking reconstruction Config ********************")
1003 print(" Active Config is",flags.Tracking.ActiveConfig.extension)
1004 flags.dump(pattern="Tracking.ActiveConfig.*", evaluate=True)
1005 print("************************************************************************")
1006 return
1007
1008
void print(char *figname, TCanvas *c1)

◆ printPrimaryConfig()

python.TrackingPassFlags.printPrimaryConfig ( flags)

Definition at line 987 of file TrackingPassFlags.py.

987def printPrimaryConfig(flags):
988 print()
989 print("************************************************************************")
990
991 print("******************** Tracking reconstruction Config ********************")
992 print(" Primary Config is",flags.Tracking[flags.Tracking.PrimaryPassConfig.value+"Pass"].extension)
993 flags.dump(pattern="Tracking."+flags.Tracking.PrimaryPassConfig.value+"Pass.*", evaluate=True)
994 print("************************************************************************")
995 return
996
997

Variable Documentation

◆ configuredSolenoidFieldScale

python.TrackingPassFlags.configuredSolenoidFieldScale

Definition at line 1033 of file TrackingPassFlags.py.

◆ doBLS

python.TrackingPassFlags.doBLS

Definition at line 1029 of file TrackingPassFlags.py.

◆ Files

python.TrackingPassFlags.Files

Definition at line 1018 of file TrackingPassFlags.py.

◆ flags

python.TrackingPassFlags.flags = initConfigFlags()

Definition at line 1015 of file TrackingPassFlags.py.

◆ l

python.TrackingPassFlags.l = logging.getLogger('TrackingPassFlags')

Definition at line 1021 of file TrackingPassFlags.py.