ATLAS Offline Software
Loading...
Searching...
No Matches
TrackingSiPatternConfig.py
Go to the documentation of this file.
1# Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
2from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator
3
4# ------------------------------------------------------------
5#
6# ----------- Setup Si Pattern for New tracking
7#
8# ------------------------------------------------------------
10 InputCollections = None,
11 ResolvedTrackCollectionKey = None,
12 SiSPSeededTrackCollectionKey = None ,
13 ClusterSplitProbContainer=''):
14 acc = ComponentAccumulator()
15 #
16 # --- get list of already associated hits (always do this, even if no other tracking ran before)
17 #
18 if flags.Tracking.ActiveConfig.usePrdAssociationTool:
19 from InDetConfig.InDetTrackPRD_AssociationConfig import (
20 InDetTrackPRD_AssociationCfg)
21 acc.merge(InDetTrackPRD_AssociationCfg(
22 flags,
23 name = ('InDetTrackPRD_Association' +
24 flags.Tracking.ActiveConfig.extension),
25 TracksName = list(InputCollections)))
26
27 # ------------------------------------------------------------
28 #
29 # ----------- SiSPSeededTrackFinder
30 #
31 # ------------------------------------------------------------
32
33 from InDetConfig.SiSPSeededTrackFinderConfig import (
34 SiSPSeededTrackFinderCfg, SiSPSeededTrackFinderRoICfg)
35 if flags.Tracking.ActiveConfig.extension == "LowPtRoI":
36 # Dedicated track finding algorithm supporting z-window RoI
37 acc.merge(SiSPSeededTrackFinderRoICfg(
38 flags,
39 TracksLocation = SiSPSeededTrackCollectionKey))
40 else:
41 acc.merge(SiSPSeededTrackFinderCfg(
42 flags,
43 TracksLocation = SiSPSeededTrackCollectionKey))
44
45 from InDetConfig.TrackTruthConfig import InDetTrackTruthCfg
46 if flags.Tracking.doTruth:
47 acc.merge(InDetTrackTruthCfg(
48 flags,
49 Tracks = SiSPSeededTrackCollectionKey,
50 DetailedTruth = SiSPSeededTrackCollectionKey+"DetailedTruth",
51 TracksTruth = SiSPSeededTrackCollectionKey+"TruthCollection"))
52
53 # ------------------------------------------------------------
54 #
55 # ---------- Ambiguity solving
56 #
57 # ------------------------------------------------------------
58
59 from TrkConfig.TrkAmbiguitySolverConfig import (
60 TrkAmbiguityScoreCfg, TrkAmbiguitySolverCfg)
61 acc.merge(TrkAmbiguityScoreCfg(
62 flags,
63 SiSPSeededTrackCollectionKey = SiSPSeededTrackCollectionKey,
64 ClusterSplitProbContainer = ClusterSplitProbContainer))
65
66 acc.merge(TrkAmbiguitySolverCfg(
67 flags,
68 ResolvedTrackCollectionKey = ResolvedTrackCollectionKey,
69 ClusterSplitProbContainer = ClusterSplitProbContainer))
70
71 if flags.Tracking.doTruth:
72 acc.merge(InDetTrackTruthCfg(
73 flags,
74 Tracks = ResolvedTrackCollectionKey,
75 DetailedTruth = ResolvedTrackCollectionKey+"DetailedTruth",
76 TracksTruth = ResolvedTrackCollectionKey+"TruthCollection"))
77
78 return acc
79
80
TrackingSiPatternCfg(flags, InputCollections=None, ResolvedTrackCollectionKey=None, SiSPSeededTrackCollectionKey=None, ClusterSplitProbContainer='')