12 acc = ComponentAccumulator()
14 if "layerNumberTool" not in kwargs:
15 from TrigFastTrackFinder.TrigFastTrackFinderConfig
import (
16 ITkTrigL2LayerNumberToolCfg)
17 kwargs.setdefault(
"layerNumberTool", acc.popToolsAndMerge(
18 ITkTrigL2LayerNumberToolCfg(
19 flags, UseNewLayerScheme=
True,
20 dumpGbtsGeometry=flags.Acts.Gbts.dumpGbtsGeometry,
21 geometryDump=flags.Acts.Gbts.geometryDump)))
23 kwargs.setdefault(
"DoPhiFiltering",
False)
24 kwargs.setdefault(
"UseBeamTilt",
False)
25 kwargs.setdefault(
"pTmin", flags.Tracking.ActiveConfig.minPTSeed)
26 kwargs.setdefault(
"MaxGraphEdges", 3000000)
28 isLargeD0 = flags.Tracking.ActiveConfig.isLargeD0
29 kwargs.setdefault(
"ConnectionFileName",
30 "binTables_ITK_RUN4_LRT.txt" if isLargeD0
else
31 "binTables_ITK_RUN4.txt")
33 acc.setPrivateTools(CompFactory.GbtsFtfActsSeedingTool(name, **kwargs))
39 flags, name: str =
"ActsPixelGridTripletSeedingTool",
40 **kwargs) -> ComponentAccumulator:
41 acc = ComponentAccumulator()
44 kwargs.setdefault(
"numSeedIncrement" , float(
"inf"))
45 kwargs.setdefault(
"deltaZMax" , float(
"inf"))
46 kwargs.setdefault(
"maxPtScattering", float(
"inf"))
47 kwargs.setdefault(
"useVariableMiddleSPRange",
False)
48 kwargs.setdefault(
"rMax", 320. * ActsUnits.mm)
49 kwargs.setdefault(
"minPt", flags.Tracking.ActiveConfig.minPTSeed *
50 ActsUnits.GeV / GaudiUnits.GeV)
51 kwargs.setdefault(
"impactMax", flags.Tracking.ActiveConfig.maxPrimaryImpactSeed *
52 ActsUnits.mm / GaudiUnits.mm)
53 kwargs.setdefault(
"rBinEdges", [0, kwargs[
'rMax']])
54 kwargs.setdefault(
"rRangeMiddleSP", [
69 kwargs.setdefault(
"useHVCollisionRegion",
70 flags.Tracking.ActiveConfig.useHoughVertexFilter)
71 kwargs.setdefault(
"hvCollisionRegionTolerance", 10. * ActsUnits.mm)
72 kwargs.setdefault(
"inputHoughVtx",
73 "HoughVertices" if flags.Tracking.ActiveConfig.useHoughVertexFilter
else "")
75 acc.setPrivateTools(CompFactory.ActsTrk.GridTripletSeedingTool(name, **kwargs))
79 name: str =
"ActsFastPixelSeedingTool",
80 **kwargs) -> ComponentAccumulator:
82 kwargs.setdefault(
"sigmaScattering", 2.)
83 kwargs.setdefault(
"maxSeedsPerSpM", 3)
84 kwargs.setdefault(
"collisionRegionMin", -flags.Tracking.ActiveConfig.maxZImpactSeed *
85 ActsUnits.mm / GaudiUnits.mm)
86 kwargs.setdefault(
"collisionRegionMax", flags.Tracking.ActiveConfig.maxZImpactSeed *
87 ActsUnits.mm / GaudiUnits.mm)
88 kwargs.setdefault(
"maxPhiBins", 200)
89 kwargs.setdefault(
"gridRMax", 250 * ActsUnits.mm)
90 kwargs.setdefault(
"deltaRMax", 200 * ActsUnits.mm)
91 kwargs.setdefault(
"zBinsCustomLooping" , [2, 10, 3, 9, 6, 4, 8, 5, 7])
92 kwargs.setdefault(
"rRangeMiddleSP", [
105 kwargs.setdefault(
"zBinNeighborsTop", [
118 kwargs.setdefault(
"zBinNeighborsBottom", [
132 kwargs.setdefault(
"zBinEdges", [-3000., -2000, -1400., -910., -500., -250., 250., 500., 910., 1400., 2000, 3000.])
133 kwargs.setdefault(
"useExperimentCuts",
True)
135 kwargs.setdefault(
"deltaRMaxTopSP", 220 * ActsUnits.mm)
136 kwargs.setdefault(
"deltaRMaxBottomSP", 135 * ActsUnits.mm)
141 name: str =
"ActsStripSeedingTool",
142 **kwargs) -> ComponentAccumulator:
143 acc = ComponentAccumulator()
146 kwargs.setdefault(
"doSeedQualitySelection",
False)
148 kwargs.setdefault(
"gridRMax", 1000. * ActsUnits.mm)
149 kwargs.setdefault(
"deltaRMax", 600. * ActsUnits.mm)
150 kwargs.setdefault(
"impactMax", flags.Tracking.ActiveConfig.maxPrimaryImpactSeed *
151 ActsUnits.mm / GaudiUnits.mm)
152 kwargs.setdefault(
"minPt", flags.Tracking.ActiveConfig.minPTSeed *
153 ActsUnits.GeV / GaudiUnits.GeV)
155 kwargs.setdefault(
"rMax", flags.Tracking.ActiveConfig.radMax)
156 kwargs.setdefault(
"deltaRMinTopSP", 20. * ActsUnits.mm)
157 kwargs.setdefault(
"deltaRMaxTopSP", 300. * ActsUnits.mm)
158 kwargs.setdefault(
"deltaRMinBottomSP", 20. * ActsUnits.mm)
159 kwargs.setdefault(
"deltaRMaxBottomSP", 300. * ActsUnits.mm)
160 kwargs.setdefault(
"deltaZMax", 900. * ActsUnits.mm)
161 kwargs.setdefault(
"interactionPointCut",
False)
162 kwargs.setdefault(
"zBinsCustomLooping", [7, 8, 6, 9, 5, 10, 4, 11, 3, 12, 2])
163 kwargs.setdefault(
"deltaRMiddleMinSPRange", 30 * ActsUnits.mm)
164 kwargs.setdefault(
"deltaRMiddleMaxSPRange", 150 * ActsUnits.mm)
165 kwargs.setdefault(
"useDetailedDoubleMeasurementInfo",
True)
166 kwargs.setdefault(
"maxPtScattering", float(
"inf"))
168 kwargs.setdefault(
"useDeltaRorTopRadius",
False)
169 kwargs.setdefault(
"seedConfirmationInFilter",
False)
170 kwargs.setdefault(
"impactWeightFactor", 1.)
171 kwargs.setdefault(
"compatSeedLimit", 4)
172 kwargs.setdefault(
"numSeedIncrement", 1.)
173 kwargs.setdefault(
"seedWeightIncrement", 10100.)
174 kwargs.setdefault(
"maxSeedsPerSpMConf", 100)
175 kwargs.setdefault(
"maxQualitySeedsPerSpMConf", 100)
177 kwargs.setdefault(
"zBinNeighborsBottom", [
178 (0,0),(0,1),(0,1),(0,1),(0,2),(0,1),(0,0),
179 (-1,0),(-2,0),(-1,0),(-1,0),(-1,0),(0,0)] )
181 kwargs.setdefault(
"rBinEdges", [0, kwargs[
'rMax']])
182 kwargs.setdefault(
"collisionRegionMin", -flags.Tracking.ActiveConfig.maxZImpactSeed *
183 ActsUnits.mm / GaudiUnits.mm)
184 kwargs.setdefault(
"collisionRegionMax", flags.Tracking.ActiveConfig.maxZImpactSeed *
185 ActsUnits.mm / GaudiUnits.mm)
186 kwargs.setdefault(
"useHVCollisionRegion",
187 flags.Tracking.ActiveConfig.useHoughVertexFilter)
188 kwargs.setdefault(
"hvCollisionRegionTolerance", 10. * ActsUnits.mm)
189 kwargs.setdefault(
"inputHoughVtx",
190 "HoughVertices" if flags.Tracking.ActiveConfig.useHoughVertexFilter
else "")
192 acc.setPrivateTools(CompFactory.ActsTrk.GridTripletSeedingTool(name, **kwargs))
196 name: str =
"ActsLargeRadiusStripSeedingTool",
197 **kwargs) -> ComponentAccumulator:
199 kwargs.setdefault(
"interactionPointCut",
True)
200 kwargs.setdefault(
"impactMax", flags.Tracking.ActiveConfig.maxPrimaryImpactSeed *
201 ActsUnits.mm / GaudiUnits.mm)
204 kwargs.setdefault(
"doubletDPhiCut",
True)
205 kwargs.setdefault(
"doubletDPhiCap", 0.10)
210 kwargs.setdefault(
"deltaRMax", 400. * ActsUnits.mm)
211 kwargs.setdefault(
"collisionRegionMin", -flags.Tracking.ActiveConfig.maxZImpactSeed *
212 ActsUnits.mm / GaudiUnits.mm)
213 kwargs.setdefault(
"collisionRegionMax", flags.Tracking.ActiveConfig.maxZImpactSeed *
214 ActsUnits.mm / GaudiUnits.mm)
215 kwargs.setdefault(
"deltaRMiddleMaxSPRange", 75 * ActsUnits.mm)
216 kwargs.setdefault(
"deltaRMinTopSP", 50. * ActsUnits.mm)
217 kwargs.setdefault(
"deltaRMaxTopSP", 250. * ActsUnits.mm)
218 kwargs.setdefault(
"deltaRMinBottomSP", 50. * ActsUnits.mm)
219 kwargs.setdefault(
"deltaRMaxBottomSP", 250. * ActsUnits.mm)
220 kwargs.setdefault(
"deltaZMax", 850. * ActsUnits.mm)
221 kwargs.setdefault(
"cotThetaMax", 5.0)
222 kwargs.setdefault(
"maxSeedsPerSpM", 1)
223 kwargs.setdefault(
"maxStripDeltaCotTheta", 0.3)
224 kwargs.setdefault(
"absDeltaEtaWeightFactor", 10.)
225 kwargs.setdefault(
"absDeltaEtaMinImpact", 2.)
226 kwargs.setdefault(
"zBinEdges", [-3000., -2500, -1400., -910., -500., -250.,
227 250., 500., 910., 1400., 2500, 3000.])
228 kwargs.setdefault(
"zBinsCustomLooping" , [2, 10, 3, 9, 6, 4, 8, 5, 7])
229 kwargs.setdefault(
"useVariableMiddleSPRange",
False)
230 kwargs.setdefault(
"zBinNeighborsTop", [
243 kwargs.setdefault(
"zBinNeighborsBottom", [
256 kwargs.setdefault(
"rRangeMiddleSP", [
270 kwargs.setdefault(
"seedConfirmation",
True)
271 kwargs.setdefault(
"seedConfirmationInFilter",
True)
272 kwargs.setdefault(
"zOriginWeightFactor", 1.)
273 kwargs.setdefault(
"maxSeedsPerSpMConf", 1)
274 kwargs.setdefault(
"maxQualitySeedsPerSpMConf", 1)
275 kwargs.setdefault(
"seedConfCentralZMin", -1400. * ActsUnits.mm)
276 kwargs.setdefault(
"seedConfCentralZMax", 1400. * ActsUnits.mm)
277 kwargs.setdefault(
"seedConfCentralRMax", 140. * ActsUnits.mm)
278 kwargs.setdefault(
"seedConfCentralNTopLargeR", 1)
279 kwargs.setdefault(
"seedConfCentralNTopSmallR", 0)
280 kwargs.setdefault(
"seedConfCentralMinBottomRadius", 0. * ActsUnits.mm)
281 kwargs.setdefault(
"seedConfCentralMaxZOrigin", 1500. * ActsUnits.mm)
282 kwargs.setdefault(
"seedConfCentralMinImpact", 200. * ActsUnits.mm)
283 kwargs.setdefault(
"seedConfForwardZMin", -3000. * ActsUnits.mm)
284 kwargs.setdefault(
"seedConfForwardZMax", 3000. * ActsUnits.mm)
285 kwargs.setdefault(
"seedConfForwardRMax", 140. * ActsUnits.mm)
286 kwargs.setdefault(
"seedConfForwardNTopLargeR", 1)
287 kwargs.setdefault(
"seedConfForwardNTopSmallR", 0)
288 kwargs.setdefault(
"seedConfForwardMinBottomRadius", 350. * ActsUnits.mm)
289 kwargs.setdefault(
"seedConfForwardMaxZOrigin", 1500. * ActsUnits.mm)
290 kwargs.setdefault(
"seedConfForwardMinImpact", 200. * ActsUnits.mm)
295 name: str =
"ActsGbtsLayerTool",
296 **kwargs) -> ComponentAccumulator:
297 """The GBTS layer geometry, built from the ITk readout geometry.
299 One instance is shared by every GBTS seeding tool: the layer indices it
300 hands out have to agree with the connection table they all read.
302 acc = ComponentAccumulator()
303 kwargs.setdefault(
"dumpGbtsGeometry", flags.Acts.Gbts.dumpGbtsGeometry)
304 kwargs.setdefault(
"geometryDump", flags.Acts.Gbts.geometryDump)
305 acc.setPrivateTools(CompFactory.ActsTrk.GbtsLayerTool(name, **kwargs))
310 name: str =
"ActsPixelGbtsSeedingTool",
311 **kwargs) -> ComponentAccumulator:
312 acc = ComponentAccumulator()
313 if "layerTool" not in kwargs:
320 kwargs.setdefault(
"connectorInputFile" , find_datafile(flags.Acts.Gbts.connectionTable))
321 kwargs.setdefault(
"lutInputFile" , find_datafile(
"gbts_ml_pixel_barrel_loose.lut"))
322 kwargs.setdefault(
"minPt" , flags.Tracking.ActiveConfig.minPTSeed *
323 ActsUnits.GeV / GaudiUnits.GeV)
324 kwargs.setdefault(
"d0Max", flags.Tracking.ActiveConfig.maxPrimaryImpactSeed *
325 ActsUnits.mm / GaudiUnits.mm)
327 acc.setPrivateTools(CompFactory.ActsTrk.GbtsSeedingTool(name, **kwargs))
331 name: str =
"ActsStripGbtsSeedingTool",
332 **kwargs) -> ComponentAccumulator:
333 acc = ComponentAccumulator()
334 if "layerTool" not in kwargs:
341 kwargs.setdefault(
"LRTmode",
True)
342 kwargs.setdefault(
"usePixelConnections",
False)
343 kwargs.setdefault(
"useStripConnections",
True)
344 kwargs.setdefault(
"useML",
False)
345 kwargs.setdefault(
"connectorInputFile", find_datafile(flags.Acts.Gbts.connectionTableLrt))
347 kwargs.setdefault(
"minPt", flags.Tracking.ActiveConfig.minPTSeed *
348 ActsUnits.GeV / GaudiUnits.GeV)
349 kwargs.setdefault(
"d0Max", flags.Tracking.ActiveConfig.maxPrimaryImpactSeed *
350 ActsUnits.mm / GaudiUnits.mm)
351 kwargs.setdefault(
"filterMaxZ0", 500. * ActsUnits.mm)
352 kwargs.setdefault(
"cutDPhiMax", 0.07)
353 kwargs.setdefault(
"cutDCurvMax", 0.015)
354 kwargs.setdefault(
"tauRatioCut", 0.015)
355 kwargs.setdefault(
"minZ0", -flags.Tracking.ActiveConfig.maxZImpactSeed *
356 ActsUnits.mm / GaudiUnits.mm)
357 kwargs.setdefault(
"maxZ0", flags.Tracking.ActiveConfig.maxZImpactSeed *
358 ActsUnits.mm / GaudiUnits.mm)
359 kwargs.setdefault(
"minDeltaPhi", 0.01)
360 kwargs.setdefault(
"maxOuterRadius", 1050.0)
361 acc.setPrivateTools(CompFactory.ActsTrk.GbtsSeedingTool(name, **kwargs))
367 name: str =
'PixelSeedingAlg',
368 **kwargs) -> ComponentAccumulator:
369 acc = ComponentAccumulator()
372 from BeamSpotConditions.BeamSpotConditionsConfig
import BeamSpotCondAlgCfg
373 acc.merge(BeamSpotCondAlgCfg(flags))
375 from MagFieldServices.MagFieldServicesConfig
import AtlasFieldCacheCondAlgCfg
376 acc.merge(AtlasFieldCacheCondAlgCfg(flags))
378 from PixelGeoModelXml.ITkPixelGeoModelConfig
import ITkPixelReadoutGeometryCfg
379 acc.merge(ITkPixelReadoutGeometryCfg(flags))
381 from InDetConfig.ITkActsHelpers
import isFastPrimaryPass
382 useFastTracking = kwargs.get(
"useFastTracking", isFastPrimaryPass(flags))
384 if "SeedTool" not in kwargs:
385 if flags.Tracking.ActiveConfig.SeedingStrategy
is SeedingStrategy.Gbts:
386 kwargs.setdefault(
'SeedTool', acc.popToolsAndMerge(
388 elif flags.Tracking.ActiveConfig.SeedingStrategy
is SeedingStrategy.GbtsFtf:
389 kwargs.setdefault(
'SeedTool', acc.popToolsAndMerge(
391 elif flags.Tracking.ActiveConfig.SeedingStrategy
is SeedingStrategy.GridTriplet:
393 kwargs.setdefault(
'SeedTool', acc.popToolsAndMerge(
396 kwargs.setdefault(
'SeedTool', acc.popToolsAndMerge(
399 kwargs.setdefault(
"useFastTracking", useFastTracking)
401 suffix =
'_Cached' if flags.Acts.useCache
else ''
402 pixelSpacePoints = [
'ITkPixelSpacePoints' + suffix]
403 if flags.Tracking.ActiveConfig.isSecondaryPass:
405 'ITk' + flags.Tracking.ActiveConfig.extension.replace(
"Acts",
"") +
406 'PixelSpacePoints' + suffix]
407 kwargs.setdefault(
'InputSpacePoints', pixelSpacePoints)
409 kwargs.setdefault(
'OutputSeeds',
410 f
'{flags.Tracking.ActiveConfig.extension}PixelSeeds')
411 kwargs.setdefault(
'UsePixel',
True)
413 if flags.Acts.doMonitoring
and 'MonTool' not in kwargs:
414 from ActsConfig.ActsMonitoringConfig
import ActsITkPixelSeedingMonitoringToolCfg
415 kwargs.setdefault(
'MonTool', acc.popToolsAndMerge(
416 ActsITkPixelSeedingMonitoringToolCfg(flags)))
418 acc.addEventAlgo(CompFactory.ActsTrk.GenericSeedingAlg(
419 flags.Tracking.ActiveConfig.extension + name, **kwargs))
424 name: str =
'StripSeedingAlg',
425 **kwargs) -> ComponentAccumulator:
426 acc = ComponentAccumulator()
429 from BeamSpotConditions.BeamSpotConditionsConfig
import BeamSpotCondAlgCfg
430 acc.merge(BeamSpotCondAlgCfg(flags))
432 from MagFieldServices.MagFieldServicesConfig
import AtlasFieldCacheCondAlgCfg
433 acc.merge(AtlasFieldCacheCondAlgCfg(flags))
435 from StripGeoModelXml.ITkStripGeoModelConfig
import ITkStripReadoutGeometryCfg
436 acc.merge(ITkStripReadoutGeometryCfg(flags))
438 if "SeedTool" not in kwargs:
439 if flags.Tracking.ActiveConfig.SeedingStrategy
in [
440 SeedingStrategy.Gbts, SeedingStrategy.GbtsFtf]:
442 elif flags.Tracking.ActiveConfig.SeedingStrategy
is SeedingStrategy.GridTriplet:
443 if flags.Tracking.ActiveConfig.isLargeD0:
444 kwargs.setdefault(
'SeedTool', acc.popToolsAndMerge(
447 kwargs.setdefault(
'SeedTool', acc.popToolsAndMerge(
450 suffix =
"_Cached" if flags.Acts.useCache
else ""
451 stripSpacePoints = [
'ITkStripSpacePoints' + suffix,
452 'ITkStripOverlapSpacePoints' + suffix]
453 if flags.Tracking.ActiveConfig.isSecondaryPass:
454 prefix =
'ITk' + flags.Tracking.ActiveConfig.extension.replace(
"Acts",
"")
455 stripSpacePoints = [prefix +
'StripSpacePoints' + suffix,
456 prefix +
'StripOverlapSpacePoints' + suffix]
458 if flags.Tracking.ActiveConfig.extension ==
'ActsConversion':
459 stripSpacePoints = [prefix +
'StripSpacePoints' + suffix]
460 kwargs.setdefault(
'InputSpacePoints', stripSpacePoints)
462 kwargs.setdefault(
'OutputSeeds',
463 f
'{flags.Tracking.ActiveConfig.extension}StripSeeds')
464 kwargs.setdefault(
'UsePixel',
False)
466 if flags.Acts.doMonitoring
and 'MonTool' not in kwargs:
467 from ActsConfig.ActsMonitoringConfig
import ActsITkStripSeedingMonitoringToolCfg
468 kwargs.setdefault(
'MonTool', acc.popToolsAndMerge(
469 ActsITkStripSeedingMonitoringToolCfg(flags)))
471 acc.addEventAlgo(CompFactory.ActsTrk.GenericSeedingAlg(
472 flags.Tracking.ActiveConfig.extension + name, **kwargs))
490 acc = ComponentAccumulator()
492 processPixels = flags.Tracking.ActiveConfig.useITkPixelSeeding
493 processStrips = flags.Tracking.ActiveConfig.useITkStripSeeding
500 prefix = flags.Tracking.ActiveConfig.extension
501 if (flags.Tracking.ActiveConfig.storeTrackSeeds
or flags.Acts.Seeds.doAnalysis):
503 from ActsConfig.ActsAnalysisConfig
import ActsPixelSeedsToTrackParamsAlgCfg
504 acc.merge(ActsPixelSeedsToTrackParamsAlgCfg(
505 flags, name = prefix +
'PixelSeedsToTrackParamsAlg',
506 InputSeedContainerKey = prefix +
'PixelSeeds',
507 OutputTrackParamsCollectionKey = prefix +
'PixelEstimatedTrackParams'))
510 from ActsConfig.ActsAnalysisConfig
import ActsStripSeedsToTrackParamsAlgCfg
511 acc.merge(ActsStripSeedsToTrackParamsAlgCfg(
512 flags, name = prefix +
'StripSeedsToTrackParamsAlg',
513 InputSeedContainerKey = prefix +
'StripSeeds',
514 OutputTrackParamsCollectionKey = prefix +
'StripEstimatedTrackParams'))
516 if flags.Acts.Seeds.doAnalysis:
518 from ActsConfig.ActsAnalysisConfig
import (
519 ActsPixelSeedAnalysisAlgCfg, ActsPixelEstimatedTrackParamsAnalysisAlgCfg)
520 acc.merge(ActsPixelSeedAnalysisAlgCfg(
521 flags, name = prefix +
'PixelSeedAnalysisAlg',
522 extension = prefix, InputSeedCollection = prefix +
'PixelSeeds'))
524 acc.merge(ActsPixelEstimatedTrackParamsAnalysisAlgCfg(
525 flags, name = prefix +
'PixelEstimatedTrackParamsAnalysisAlg',
527 InputTrackParamsCollection = prefix +
'PixelEstimatedTrackParams'))
530 from ActsConfig.ActsAnalysisConfig
import (
531 ActsStripSeedAnalysisAlgCfg, ActsStripEstimatedTrackParamsAnalysisAlgCfg)
532 acc.merge(ActsStripSeedAnalysisAlgCfg(
533 flags, name = prefix +
'StripSeedAnalysisAlg',
534 extension = prefix, InputSeedCollection = prefix +
'StripSeeds'))
536 acc.merge(ActsStripEstimatedTrackParamsAnalysisAlgCfg(
537 flags, name = prefix +
'StripEstimatedTrackParamsAnalysisAlg',
539 InputTrackParamsCollection = prefix +
'StripEstimatedTrackParams'))
541 if flags.Tracking.ActiveConfig.storeTrackSeeds:
544 flags, processPixels=
True, processStrips=
False))
547 flags, processPixels=
False, processStrips=
True))
548 if processPixels
and processStrips:
550 flags, processPixels=
True, processStrips=
True))
557 processStrips: bool) -> ComponentAccumulator:
559 acc = ComponentAccumulator()
561 prefix = flags.Tracking.ActiveConfig.extension
562 if processPixels
and not processStrips:
563 prefix = prefix +
'Pixel'
564 if processStrips
and not processPixels:
565 prefix = prefix +
'Strip'
566 processBoth = processPixels
and processStrips
567 tracks =
'SiSPTracksSeedSegments' + prefix +
'Tracks'
571 flags, name = prefix +
'PixelSeedToTrackCnvAlg',
572 EstimatedTrackParametersKey = (
573 [prefix +
'PixelEstimatedTrackParams', prefix +
'StripEstimatedTrackParams']
574 if processBoth
else [prefix +
'EstimatedTrackParams']),
576 [prefix +
'PixelSeeds', prefix +
'StripSeeds']
577 if processBoth
else [prefix +
'Seeds']),
578 ACTSTracksLocation = tracks))
581 if flags.Tracking.doTruth:
582 from ActsConfig.ActsTruthConfig
import (
583 ActsTrackToTruthAssociationAlgCfg, ActsTrackFindingValidationAlgCfg)
584 acc.merge(ActsTrackToTruthAssociationAlgCfg(
585 flags, name = prefix +
'SeedTrackToTruthAssociationAlg',
586 ACTSTracksLocation = tracks,
587 AssociationMapOut = tracks +
'ToTruthParticleAssociation'))
589 acc.merge(ActsTrackFindingValidationAlgCfg(
590 flags, name = prefix +
'SeedTrackFindingValidationAlg',
591 TrackToTruthAssociationMap = tracks +
'ToTruthParticleAssociation'))
594 from InDetConfig.ITkActsParticleCreationConfig
import (
595 ITkActsTrackParticleCreationCfg)
596 acc.merge(ITkActsTrackParticleCreationCfg(
598 TrackContainers = [tracks],
599 TrackParticleContainer =
'SiSPSeedSegments' + prefix +
'TrackParticles'))