3 from AthenaConfiguration.ComponentAccumulator
import ComponentAccumulator
4 from AthenaConfiguration.ComponentFactory
import CompFactory
5 from AthenaConfiguration.AthConfigFlags
import AthConfigFlags
7 from TrigFastTrackFinder.TrigFastTrackFinderConfig
import ITkTrigL2LayerNumberToolCfg
13 if "layerNumberTool" not in kwargs:
14 ntargs = {
"UseNewLayerScheme" :
True}
17 kwargs.setdefault(
"DoPhiFiltering",
False)
18 kwargs.setdefault(
"UseBeamTilt",
False)
19 kwargs.setdefault(
"PixelSP_ContainerName",
"ITkPixelSpacePoints")
20 kwargs.setdefault(
"SCT_SP_ContainerName",
"ITkStripSpacePoints")
22 isLRT=flags.Tracking.ActiveConfig.extension ==
"LargeD0"
24 kwargs.setdefault(
"UsePixelSpacePoints", (
not isLRT))
25 kwargs.setdefault(
"UseSctSpacePoints", isLRT)
26 kwargs.setdefault(
"pTmin", flags.Tracking.ActiveConfig.minPT[0])
27 kwargs.setdefault(
"MaxGraphEdges", 2500000
if flags.Trigger.InDetTracking.doGPU
else 3000000)
28 kwargs.setdefault(
"ConnectionFileName",
"binTables_ITK_RUN4_LRT.txt" if isLRT
else "binTables_ITK_RUN4.txt")
30 kwargs.setdefault(
"UseGPU", flags.Trigger.InDetTracking.doGPU)
32 if flags.Trigger.InDetTracking.doGPU:
33 inDetAccelSvc = CompFactory.TrigInDetAccelerationSvc(
"TrigInDetAccelerationSvc")
34 inDetAccelSvc.useITkGeometry =
True
35 acc.addService(inDetAccelSvc)
37 kwargs.setdefault(
"TrigAccelerationSvc", acc.getService(
"TrigInDetAccelerationSvc")
if flags.Trigger.InDetTracking.doGPU
else None)
39 from RegionSelector.RegSelToolConfig
import (regSelTool_ITkStrip_Cfg, regSelTool_ITkPixel_Cfg)
45 acc.setPrivateTools(CompFactory.TrigInDetTrackSeedingTool(**kwargs))
52 from TrkConfig.TrkTrackSummaryToolConfig
import ITkTrackSummaryToolCfg
54 from InDetConfig.SiTrackMakerConfig
import ITkSiTrackMaker_xkCfg
57 ITkSiTrackMakerTool.CombinatorialTrackFinder.writeHolesFromPattern =
False
59 if flags.Tracking.ActiveConfig.useTrigTrackFollowing:
60 acc.addPublicTool( CompFactory.TrigInDetTrackFollowingTool( name =
"TrigTrackFollowingTool_FTF", LayerNumberTool = acc.popToolsAndMerge(
ITkTrigL2LayerNumberToolCfg(flags))))
62 ITkSiTrackMakerTool.useTrigTrackFollowingTool =
True
63 ITkSiTrackMakerTool.TrigTrackFollowingTool = acc.getPublicTool(
"TrigTrackFollowingTool_FTF")
65 if flags.Tracking.ActiveConfig.useTrigRoadPredictor:
66 acc.addPublicTool( CompFactory.TrigInDetRoadPredictorTool( name =
"TrigRoadPredictorTool_FTF", LayerNumberTool = acc.popToolsAndMerge(
ITkTrigL2LayerNumberToolCfg(flags))))
68 ITkSiTrackMakerTool.useTrigInDetRoadPredictorTool =
True
69 ITkSiTrackMakerTool.TrigInDetRoadPredictorTool = acc.getPublicTool(
"TrigRoadPredictorTool_FTF")
71 ITkSiTrackMakerTool.trackletPoints = flags.Trigger.InDetTracking.trackletPoints
73 acc.addPublicTool(ITkSiTrackMakerTool)
75 acc.addPublicTool( CompFactory.TrigInDetTrackFitter(
"TrigInDetTrackFitter" ) )
77 isLRT=flags.Tracking.ActiveConfig.extension ==
"LargeD0"
79 from TrigFastTrackFinder.TrigFastTrackFinderConfig
import TrigFastTrackFinderMonitoringArg
80 from TriggerJobOpts.TriggerHistSvcConfig
import TriggerHistSvcConfig
86 ftf = CompFactory.TrigFastTrackFinder( name =
"TrigFastTrackFinder"+flags.Tracking.ActiveConfig.extension,
88 TrigAccelerationTool =
None,
89 TrigAccelerationSvc =
None,
90 SpacePointProviderTool =
None,
93 initialTrackMaker = ITkSiTrackMakerTool,
94 trigInDetTrackFitter = CompFactory.TrigInDetTrackFitter(
"TrigInDetTrackFitter" ),
95 trigZFinder = CompFactory.TrigZFinder(),
98 TrackInitialD0Max = 300.
if isLRT
else 20.0,
99 TracksName = SiSPSeededTrackCollectionKey,
100 TrackZ0Max = 500.
if isLRT
else 300.,
101 Triplet_D0Max = 300.
if isLRT
else 4,
102 Triplet_MaxBufferLength = 3
if isLRT
else 1,
103 Triplet_MinPtFrac = 0.8,
106 doSeedRedundancyCheck =
True,
107 pTmin = flags.Tracking.ActiveConfig.minPT[0],
108 useNewLayerNumberScheme =
True,
112 StandaloneMode =
True,
113 UseTracklets = flags.Tracking.ActiveConfig.useTracklets,
114 doTrackRefit =
False,
117 DoubletDR_Max = 150.0,
119 doDisappearingTrk =
False,
122 acc.addEventAlgo( ftf, primary=
True )