48 name: str =
"ActsTrackFindingAlg",
49 **kwargs) -> ComponentAccumulator:
51 return c
if isinstance(c, list)
else [c]
56 kwargs.setdefault(
"SeedLabels",
isdet(flags, pixel=[
"PPP"], strip=[
"SSS"]))
57 kwargs.setdefault(
"EstimatedTrackParametersKeys",
isdet(flags, pixel=[
"ActsPixelEstimatedTrackParams"], strip=[
"ActsStripEstimatedTrackParams"]))
58 kwargs.setdefault(
"SeedContainerKeys",
isdet(flags, pixel=[
"ActsPixelSeeds"], strip=[
"ActsStripSeeds"]))
60 kwargs.setdefault(
"UncalibratedMeasurementContainerKeys",
isdet(flags, pixel=[
"ITkPixelClusters_Cached" if flags.Acts.useCache
else "ITkPixelClusters"], strip=[
"ITkStripClusters_Cached" if flags.Acts.useCache
else "ITkStripClusters"]))
61 kwargs.setdefault(
"DetectorElementCollectionKeys",
isdet(flags, pixel=[
"ITkPixelDetectorElementCollection"], strip=[
"ITkStripDetectorElementCollection"]))
63 kwargs.setdefault(
'ACTSTracksLocation',
'ActsTracks')
65 kwargs.setdefault(
"maxPropagationStep", 10000)
66 kwargs.setdefault(
"skipDuplicateSeeds", flags.Acts.skipDuplicateSeeds)
67 kwargs.setdefault(
"doTwoWay", flags.Acts.doTwoWayCKF)
69 if flags.Detector.GeometryITk:
70 kwargs.setdefault(
"etaBins", flags.Tracking.ActiveConfig.etaBins)
71 kwargs.setdefault(
"chi2CutOff", tolist(flags.Tracking.ActiveConfig.Xi2maxNoAdd))
81 kwargs.setdefault(
"numMeasurementsCutOff", [1])
85 kwargs.setdefault(
"StatisticEtaBins", [eta/10.
for eta
in range(5, 40, 5)])
87 if flags.Acts.doTrackFindingTrackSelector:
90 kwargs.setdefault(
"absEtaMax", flags.Tracking.ActiveConfig.maxEta)
91 kwargs.setdefault(
"ptMin",
92 [p / Units.GeV * UnitConstants.GeV
for p
in tolist(flags.Tracking.ActiveConfig.minPT)])
93 kwargs.setdefault(
"minMeasurements",
94 tolist(flags.Tracking.ActiveConfig.minClusters))
95 if flags.Acts.doTrackFindingTrackSelector == 2:
97 kwargs[
"ptMin"] = [
min(kwargs[
"ptMin"])]
98 kwargs[
"minMeasurements"] = [
min(kwargs[
"minMeasurements"])]
99 elif flags.Acts.doTrackFindingTrackSelector != 3:
101 kwargs.setdefault(
"maxHoles", tolist(flags.Tracking.ActiveConfig.maxHoles))
102 if flags.Acts.doTrackFindingTrackSelector != 5:
104 kwargs.setdefault(
"maxOutliers", tolist(flags.Tracking.ActiveConfig.maxHoles))
105 kwargs.setdefault(
"maxSharedHits", tolist(flags.Tracking.ActiveConfig.maxShared))
106 if flags.Acts.doTrackFindingTrackSelector == 4:
108 kwargs.setdefault(
"doBranchStopper",
False)
109 if flags.Acts.doTrackFindingTrackSelector == 1:
110 kwargs.setdefault(
"ptMinMeasurements",
isdet(flags, pixel=[3], strip=[6]))
111 kwargs.setdefault(
"absEtaMaxMeasurements",
isdet(flags, pixel=[3], strip=[999999]))
113 if 'TrackingGeometryTool' not in kwargs:
114 from ActsConfig.ActsGeometryConfig
import ActsTrackingGeometryToolCfg
116 "TrackingGeometryTool",
120 if 'ExtrapolationTool' not in kwargs:
121 from ActsConfig.ActsGeometryConfig
import ActsExtrapolationToolCfg
127 if 'ATLASConverterTool' not in kwargs:
128 from ActsConfig.ActsEventCnvConfig
import ActsToTrkConverterToolCfg
130 "ATLASConverterTool",
134 if flags.Acts.doPrintTrackStates
and 'TrackStatePrinter' not in kwargs:
140 if 'FitterTool' not in kwargs:
141 from ActsConfig.ActsTrackFittingConfig
import ActsFitterCfg
145 ReverseFilteringPt=0,
149 if 'PixelCalibrator' not in kwargs:
150 from AthenaConfiguration.Enums
import BeamType
151 from ActsConfig.ActsConfigFlags
import PixelCalibrationStrategy
152 from ActsConfig.ActsMeasurementCalibrationConfig
import ActsAnalogueClusteringToolCfg
154 if not (flags.Tracking.doPixelDigitalClustering
or flags.Beam.Type
is BeamType.Cosmics):
155 if flags.Acts.PixelCalibrationStrategy
in (PixelCalibrationStrategy.AnalogueClustering,
156 PixelCalibrationStrategy.AnalogueClusteringAfterSelection) :
160 CalibrateAfterMeasurementSelection = flags.Acts.PixelCalibrationStrategy
is PixelCalibrationStrategy.AnalogueClusteringAfterSelection))
163 if flags.Acts.doMonitoring
and 'MonTool' not in kwargs:
164 from ActsConfig.ActsMonitoringConfig
import ActsTrackFindingMonitoringToolCfg
165 kwargs.setdefault(
'MonTool', acc.popToolsAndMerge(
168 kwargs.setdefault(
"UseDefaultActsMeasurementSelector",flags.Acts.useDefaultActsMeasurementSelector)
170 acc.addEventAlgo(CompFactory.ActsTrk.TrackFindingAlg(name, **kwargs))