7 name: str =
"ActsProtoTrackCreationAndFitAlg",
8 **kwargs) -> ComponentAccumulator:
9 acc = ComponentAccumulator()
11 from PixelGeoModelXml.ITkPixelGeoModelConfig
import ITkPixelReadoutGeometryCfg
12 acc.merge(ITkPixelReadoutGeometryCfg(flags))
14 from StripGeoModelXml.ITkStripGeoModelConfig
import ITkStripReadoutGeometryCfg
15 acc.merge(ITkStripReadoutGeometryCfg(flags))
17 if 'ActsFitter' not in kwargs:
18 from ActsConfig.ActsTrackFittingConfig
import ActsFitterCfg
19 kwargs.setdefault(
"ActsFitter", acc.popToolsAndMerge(ActsFitterCfg(flags,
21 OutlierChi2Cut=float(
'inf'))))
23 acc.addEventAlgo(CompFactory.FPGATrackSim.FPGATrackSimPrototrackFitterAlg(name,**kwargs),
29 ACTSProtoTrackChainTrackKey =
"ACTSProtoTrackChainTestTracks"
30 FPGAPrototracks = f
"ActsProtoTracks{stage}FromFPGATrack"
31 acc = ComponentAccumulator()
35 ACTSTracksLocation=ACTSProtoTrackChainTrackKey,
36 FPGATrackSimActsProtoTracks=FPGAPrototracks,
43 from ActsConfig.ActsTruthConfig
import ActsTruthParticleHitCountAlgCfg, ActsPixelClusterToTruthAssociationAlgCfg,ActsStripClusterToTruthAssociationAlgCfg
45 ACTSProtoTrackChainTrackKey =
"ACTSProtoTrackChainTestTracks"
46 FinalProtoTrackChainxAODTracksKey=FinalProtoTrackChainxAODTracksKey
48 acc = ComponentAccumulator()
49 truthLinkVector=
"xAODFPGATruthLinks" if flags.Trigger.FPGATrackSim.useFPGATruthTrackMatching
else "xAODTruthLinks"
50 acc.merge(ActsPixelClusterToTruthAssociationAlgCfg(flags,
51 name=
"ActsFPGAPixelClusterToTruthAssociationAlg",
52 InputTruthParticleLinks=truthLinkVector,
53 AssociationMapOut=
"ITkFPGAPixelClustersToTruthParticles",
54 Measurements=
"xAODPixelClustersFromFPGACluster"))
56 acc.merge(ActsStripClusterToTruthAssociationAlgCfg(flags,
57 name=
"ActsFPGAStripClusterToTruthAssociationAlg",
58 InputTruthParticleLinks=truthLinkVector,
59 AssociationMapOut=
"ITkFPGAStripClustersToTruthParticles",
60 Measurements=
"xAODStripClustersFromFPGACluster"))
63 acc.merge(ActsTruthParticleHitCountAlgCfg(flags,
64 name=
"ActsFPGATruthParticleHitCountAlg",
65 PixelClustersToTruthAssociationMap=
"ITkFPGAPixelClustersToTruthParticles",
66 StripClustersToTruthAssociationMap=
"ITkFPGAStripClustersToTruthParticles",
67 TruthParticleHitCountsOut=
"FPGATruthParticleHitCounts"))
70 from ActsConfig.ActsTruthConfig
import ActsTrackToTruthAssociationAlgCfg, ActsTrackFindingValidationAlgCfg
71 acts_tracks=f
"{flags.Tracking.ActiveConfig.extension}Tracks" if not flags.Acts.doAmbiguityResolution
else f
"{flags.Tracking.ActiveConfig.extension}ResolvedTracks"
72 acc.merge(ActsTrackToTruthAssociationAlgCfg(flags,
73 name=f
"{acts_tracks}FPGATrackToTruthAssociationAlg",
74 PixelClustersToTruthAssociationMap=
"ITkFPGAPixelClustersToTruthParticles",
75 StripClustersToTruthAssociationMap=
"ITkFPGAStripClustersToTruthParticles",
76 ACTSTracksLocation=ACTSProtoTrackChainTrackKey,
77 AssociationMapOut=acts_tracks+
"FPGAToTruthParticleAssociation"))
80 acc.merge(ActsTrackFindingValidationAlgCfg(flags,
81 name=f
"{acts_tracks}FPGATrackFindingValidationAlg",
82 TrackToTruthAssociationMap=acts_tracks+
"FPGAToTruthParticleAssociation",
83 TruthParticleHitCounts=
"FPGATruthParticleHitCounts"
88 prefix = flags.Tracking.ActiveConfig.extension
89 from ActsConfig.ActsEventCnvConfig
import ActsTrackToTrackParticleCnvAlgCfg
90 acc.merge(ActsTrackToTrackParticleCnvAlgCfg(flags, f
"{prefix}ResolvedProtoTrackToAltTrackParticleCnvAlg",
91 ACTSTracksLocation=[ACTSProtoTrackChainTrackKey,],
92 TrackParticlesOutKey=f
"{FinalProtoTrackChainxAODTracksKey}TrackParticles"))
94 from ActsConfig.ActsTruthConfig
import ActsTrackParticleTruthDecorationAlgCfg
95 acc.merge(ActsTrackParticleTruthDecorationAlgCfg(flags,
96 f
"{prefix}ActsFPGATrackParticleTruthDecorationAlg",
97 TrackToTruthAssociationMaps=[acts_tracks+
"FPGAToTruthParticleAssociation"],
98 TrackParticleContainerName=f
"{FinalProtoTrackChainxAODTracksKey}TrackParticles",
99 TruthParticleHitCounts=
"FPGATruthParticleHitCounts",
100 ComputeTrackRecoEfficiency=
True))