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

Functions

ComponentAccumulator ITkActsTrackReconstructionCfg (flags, *, str previousExtension=None)

Function Documentation

◆ ITkActsTrackReconstructionCfg()

ComponentAccumulator python.ITkActsPatternRecognitionConfig.ITkActsTrackReconstructionCfg ( flags,
* ,
str previousExtension = None )

Definition at line 5 of file ITkActsPatternRecognitionConfig.py.

7 previousExtension: str = None) -> ComponentAccumulator:
8 acc = ComponentAccumulator()
9
10 # GNN replaces the seeding+CKF+ambiguity chain only for the primary pass.
11 # Secondary passes (LargeD0, conversion, ...) fall back to the standard chain.
12 if flags.Acts.GNN.Enable and isPrimaryPass(flags):
13 from ActsConfig.ActsTrackFindingConfig import ActsTrackFindingGNNCfg
14 acc.merge(ActsTrackFindingGNNCfg(flags))
15 else:
16 # Seeding
17 from ActsConfig.ActsSeedingConfig import ActsSeedingCfg
18 acc.merge(ActsSeedingCfg(flags))
19
20 # CKF
21 from ActsConfig.ActsTrackFindingConfig import ActsTrackFindingCfg
22 acc.merge(ActsTrackFindingCfg(flags))
23
24 # Ambiguity Resolution
25 if flags.Acts.doAmbiguityResolution:
26 from ActsConfig.ActsTrackFindingConfig import ActsAmbiguityResolutionCfg
27 acc.merge(ActsAmbiguityResolutionCfg(flags))
28
29 # PRD association
30 from ActsConfig.ActsPrdAssociationConfig import ActsPrdAssociationAlgCfg
31 acc.merge(ActsPrdAssociationAlgCfg(flags,
32 name = f'{flags.Tracking.ActiveConfig.extension}PrdAssociationAlg',
33 previousActsExtension = previousExtension))
34
35 # Truth
36 if flags.Tracking.doTruth:
37 # Run truth on CKF tracks
38 # This is only necessary if we are asking for these tracks to be persistified with the
39 # - flag: Tracking.ActiveConfig.storeSiSPSeededTracks set to True OR
40 # - flag: flags.Acts.doAmbiguityResolution set to False
41 if flags.Tracking.ActiveConfig.storeSiSPSeededTracks or not flags.Acts.doAmbiguityResolution or (flags.Acts.GNN.Enable and isPrimaryPass(flags)):
42 from ActsConfig.ActsTruthConfig import ActsTrackToTruthAssociationAlgCfg, ActsTrackFindingValidationAlgCfg
43 acts_tracks = f"{flags.Tracking.ActiveConfig.extension}Tracks"
44 acc.merge(ActsTrackToTruthAssociationAlgCfg(flags,
45 name = f"{acts_tracks}TrackToTruthAssociationAlg",
46 ACTSTracksLocation = acts_tracks,
47 AssociationMapOut = f"{acts_tracks}ToTruthParticleAssociation"))
48
49 acc.merge(ActsTrackFindingValidationAlgCfg(flags,
50 name = f"{acts_tracks}TrackFindingValidationAlg",
51 TrackToTruthAssociationMap = f"{acts_tracks}ToTruthParticleAssociation"))
52
53 # Run truth on the tracks from ambiguity resolution. This is only necessary if
54 # - flag: flags.Acts.doAmbiguityResolution set to True
55 if flags.Acts.doAmbiguityResolution:
56 acts_tracks = f"{flags.Tracking.ActiveConfig.extension}ResolvedTracks"
57 from ActsConfig.ActsTruthConfig import ActsTrackToTruthAssociationAlgCfg, ActsTrackFindingValidationAlgCfg
58 acc.merge(ActsTrackToTruthAssociationAlgCfg(flags,
59 name = f"{acts_tracks}TrackToTruthAssociationAlg",
60 ACTSTracksLocation = acts_tracks,
61 AssociationMapOut = f"{acts_tracks}ToTruthParticleAssociation"))
62
63 acc.merge(ActsTrackFindingValidationAlgCfg(flags,
64 name = f"{acts_tracks}TrackFindingValidationAlg",
65 TrackToTruthAssociationMap = f"{acts_tracks}ToTruthParticleAssociation"))
66
67 return acc
68