ATLAS Offline Software
Loading...
Searching...
No Matches
InDetTruthAlgsConfig.py
Go to the documentation of this file.
1# Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
2# Configuration of InDetTruthAlgs package
3
4from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator
5from AthenaConfiguration.ComponentFactory import CompFactory
6from AthenaConfiguration.Enums import BeamType
7from AthenaConfiguration.Enums import ProductionStep
8
9def InDetPRD_MultiTruthMakerSiCfg(flags, name="InDetPRD_MultiTruthMakerSi",
10 **kwargs):
11 acc = ComponentAccumulator()
12
13 # For pixel + SCT DetectorElementCollection used
14 if flags.Detector.EnablePixel:
15 from PixelGeoModel.PixelGeoModelConfig import PixelReadoutGeometryCfg
16 acc.merge(PixelReadoutGeometryCfg(flags))
17 kwargs.setdefault("PixelClusterContainerName", 'PixelClusters')
18 if flags.Common.ProductionStep is ProductionStep.PileUpPretracking:
19 kwargs.setdefault("SimDataMapNamePixel", flags.Overlay.BkgPrefix + 'PixelSDO_Map')
20 else:
21 kwargs.setdefault("SimDataMapNamePixel", 'PixelSDO_Map')
22 kwargs.setdefault("TruthNamePixel", 'PRD_MultiTruthPixel')
23 else:
24 kwargs.setdefault("PixelClusterContainerName", "")
25 kwargs.setdefault("SimDataMapNamePixel", "")
26 kwargs.setdefault("TruthNamePixel", "")
27
28 if flags.Detector.EnableSCT:
29 from SCT_GeoModel.SCT_GeoModelConfig import SCT_ReadoutGeometryCfg
30 acc.merge(SCT_ReadoutGeometryCfg(flags))
31 kwargs.setdefault("SCTClusterContainerName", 'SCT_Clusters')
32 if flags.Common.ProductionStep is ProductionStep.PileUpPretracking:
33 kwargs.setdefault("SimDataMapNameSCT", flags.Overlay.BkgPrefix + 'SCT_SDO_Map')
34 else:
35 kwargs.setdefault("SimDataMapNameSCT", 'SCT_SDO_Map')
36 kwargs.setdefault("TruthNameSCT", 'PRD_MultiTruthSCT')
37 else:
38 kwargs.setdefault("SCTClusterContainerName", "")
39 kwargs.setdefault("SimDataMapNameSCT", "")
40 kwargs.setdefault("TruthNameSCT", "")
41
42 kwargs.setdefault("TRTDriftCircleContainerName", "")
43 kwargs.setdefault("SimDataMapNameTRT", "")
44 kwargs.setdefault("TruthNameTRT", "")
45
46 InDetPRD_MultiTruthMakerSi = CompFactory.InDet.PRD_MultiTruthMaker(name, **kwargs)
47 acc.addEventAlgo(InDetPRD_MultiTruthMakerSi)
48 return acc
49
50def InDetPRD_MultiTruthMakerSiPUCfg(flags, name="InDetPRD_MultiTruthMakerSiPU",
51 **kwargs):
52
53 if flags.Detector.EnablePixel:
54 kwargs.setdefault("PixelClusterContainerName", 'PixelPUClusters')
55 kwargs.setdefault("SimDataMapNamePixel", 'Pixel_PU_SDO_Map')
56 kwargs.setdefault("TruthNamePixel", 'PRD_PU_MultiTruthPixel')
57 if flags.Detector.EnableSCT:
58 kwargs.setdefault("SCTClusterContainerName", 'SCT_PU_Clusters')
59 kwargs.setdefault("SimDataMapNameSCT", 'SCT_PU_SDO_Map')
60 kwargs.setdefault("TruthNameSCT", 'PRD_PU_MultiTruthSCT')
61
62 return InDetPRD_MultiTruthMakerSiCfg(flags, name, **kwargs)
63
64def InDetPRD_MultiTruthMakerTRTCfg(flags, name="InDetTRT_PRD_MultiTruthMaker",
65 **kwargs):
66 acc = ComponentAccumulator()
67
68 kwargs.setdefault("PixelDetEleCollKey", "")
69 kwargs.setdefault("SCTDetEleCollKey", "")
70 kwargs.setdefault("PixelClusterContainerName", "")
71 kwargs.setdefault("SCTClusterContainerName", "")
72 kwargs.setdefault("SimDataMapNamePixel", "")
73 kwargs.setdefault("SimDataMapNameSCT", "")
74 kwargs.setdefault("TruthNamePixel", "")
75 kwargs.setdefault("TruthNameSCT", "")
76
77 kwargs.setdefault("TRTDriftCircleContainerName", 'TRT_DriftCircles')
78 if flags.Common.ProductionStep is ProductionStep.PileUpPretracking:
79 kwargs.setdefault("SimDataMapNameTRT", flags.Overlay.BkgPrefix + 'TRT_SDO_Map')
80 else:
81 kwargs.setdefault("SimDataMapNameTRT", 'TRT_SDO_Map')
82 kwargs.setdefault("TruthNameTRT", 'PRD_MultiTruthTRT')
83
84 acc.addEventAlgo(CompFactory.InDet.PRD_MultiTruthMaker(name, **kwargs))
85 return acc
86
87def InDetPRD_MultiTruthMakerTRTPUCfg(flags, name="InDetTRT_PRD_MultiTruthMakerPU",
88 **kwargs):
89 kwargs.setdefault("TRTDriftCircleContainerName", 'TRT_PU_DriftCircles')
90 kwargs.setdefault("SimDataMapNameTRT", 'TRT_PU_SDO_Map')
91 kwargs.setdefault("TruthNameTRT", 'PRD_PU_MultiTruthTRT')
92 return InDetPRD_MultiTruthMakerTRTCfg(flags, name, **kwargs)
93
94def ITkPRD_MultiTruthMakerSiCfg(flags, name="ITkPRD_MultiTruthMakerSi",
95 **kwargs):
96 acc = ComponentAccumulator()
97
98 if flags.Detector.EnableITkPixel:
99 from PixelGeoModelXml.ITkPixelGeoModelConfig import (
100 ITkPixelReadoutGeometryCfg)
101 acc.merge(ITkPixelReadoutGeometryCfg(flags))
102 kwargs.setdefault("PixelClusterContainerName", 'ITkPixelClusters')
103 if flags.Common.ProductionStep is ProductionStep.PileUpPretracking:
104 kwargs.setdefault("SimDataMapNamePixel", flags.Overlay.BkgPrefix + 'ITkPixelSDO_Map')
105 else:
106 kwargs.setdefault("SimDataMapNamePixel", 'ITkPixelSDO_Map')
107 kwargs.setdefault("TruthNamePixel", 'PRD_MultiTruthITkPixel')
108 else:
109 kwargs.setdefault("PixelClusterContainerName", "")
110 kwargs.setdefault("SimDataMapNamePixel", "")
111 kwargs.setdefault("TruthNamePixel", "")
112
113 if flags.Detector.EnableITkStrip:
114 from StripGeoModelXml.ITkStripGeoModelConfig import (
115 ITkStripReadoutGeometryCfg)
116 acc.merge(ITkStripReadoutGeometryCfg(flags))
117 kwargs.setdefault("SCTClusterContainerName", 'ITkStripClusters')
118 if flags.Common.ProductionStep is ProductionStep.PileUpPretracking:
119 kwargs.setdefault("SimDataMapNameSCT", flags.Overlay.BkgPrefix + 'ITkStripSDO_Map')
120 else:
121 kwargs.setdefault("SimDataMapNameSCT", 'ITkStripSDO_Map')
122 kwargs.setdefault("TruthNameSCT", 'PRD_MultiTruthITkStrip')
123 else:
124 kwargs.setdefault("SCTClusterContainerName", "")
125 kwargs.setdefault("SimDataMapNameSCT", "")
126 kwargs.setdefault("TruthNameSCT", "")
127
128 kwargs.setdefault("TRTDriftCircleContainerName", "")
129 kwargs.setdefault("SimDataMapNameTRT", "")
130 kwargs.setdefault("TruthNameTRT", "")
131
132 kwargs.setdefault("PixelDetEleCollKey", "ITkPixelDetectorElementCollection")
133 kwargs.setdefault("SCTDetEleCollKey", "ITkStripDetectorElementCollection")
134
135 InDetPRD_MultiTruthMakerSi = CompFactory.InDet.PRD_MultiTruthMaker(name, **kwargs)
136 acc.addEventAlgo(InDetPRD_MultiTruthMakerSi)
137 return acc
138
139def ITkPRD_MultiTruthMakerSiPUCfg(flags, name="ITkPRD_MultiTruthMakerSiPU",
140 **kwargs):
141
142 if flags.Detector.EnableITkPixel:
143 kwargs.setdefault("PixelClusterContainerName", 'ITkPixelPUClusters')
144 kwargs.setdefault("SimDataMapNamePixel", 'ITkPixel_PU_SDO_Map')
145 kwargs.setdefault("TruthNamePixel", 'PRD_PU_MultiTruthITkPixel')
146 if flags.Detector.EnableITkStrip:
147 kwargs.setdefault("SCTClusterContainerName", 'ITkStripPUClusters')
148 kwargs.setdefault("SimDataMapNameSCT", 'ITkStrip_PU_SDO_Map')
149 kwargs.setdefault("TruthNameSCT", 'PRD_PU_MultiTruthITkStrip')
150
151 return InDetPRD_MultiTruthMakerSiCfg(flags, name, **kwargs)
152
153def InDetDetailedTrackTruthMakerCfg(flags, name='Maker',**kwargs) :
154 acc = ComponentAccumulator()
155 kwargs.setdefault("TruthNamePixel", 'PRD_MultiTruthPixel' \
156 if flags.Detector.EnablePixel else "")
157 kwargs.setdefault("TruthNameSCT", 'PRD_MultiTruthSCT' \
158 if flags.Detector.EnableSCT else "")
159
160 # for cosmics, at the stage of SiPatternRecognition, the TRT truth information is not yet available
161 useTRT = flags.Detector.EnableTRT and \
162 not( flags.Beam.Type is BeamType.Cosmics and \
163 (kwargs["DetailedTrackTruthName"] == "SiSPSeededTracksDetailedTruth" or \
164 kwargs["DetailedTrackTruthName"] == "ResolvedTracksDetailedTruth") )
165 kwargs.setdefault("TruthNameTRT", 'PRD_MultiTruthTRT' if useTRT else "")
166
167 acc.addEventAlgo(CompFactory.InDet.InDetDetailedTrackTruthMaker(
168 name = kwargs["DetailedTrackTruthName"]+name, **kwargs))
169 return acc
170
171def ITkDetailedTrackTruthMakerCfg(flags, name='Maker',**kwargs) :
172 acc = ComponentAccumulator()
173 kwargs.setdefault("TruthNamePixel", 'PRD_MultiTruthITkPixel' \
174 if flags.Detector.EnableITkPixel else "")
175 kwargs.setdefault("TruthNameSCT", 'PRD_MultiTruthITkStrip' \
176 if flags.Detector.EnableITkStrip else "")
177 kwargs.setdefault("TruthNameTRT", "")
178
179 acc.addEventAlgo(CompFactory.InDet.InDetDetailedTrackTruthMaker(
180 name = kwargs["DetailedTrackTruthName"]+name, **kwargs))
181 return acc
ITkPRD_MultiTruthMakerSiCfg(flags, name="ITkPRD_MultiTruthMakerSi", **kwargs)
ITkDetailedTrackTruthMakerCfg(flags, name='Maker', **kwargs)
InDetPRD_MultiTruthMakerTRTPUCfg(flags, name="InDetTRT_PRD_MultiTruthMakerPU", **kwargs)
InDetPRD_MultiTruthMakerSiPUCfg(flags, name="InDetPRD_MultiTruthMakerSiPU", **kwargs)
InDetPRD_MultiTruthMakerSiCfg(flags, name="InDetPRD_MultiTruthMakerSi", **kwargs)
ITkPRD_MultiTruthMakerSiPUCfg(flags, name="ITkPRD_MultiTruthMakerSiPU", **kwargs)
InDetPRD_MultiTruthMakerTRTCfg(flags, name="InDetTRT_PRD_MultiTruthMaker", **kwargs)
InDetDetailedTrackTruthMakerCfg(flags, name='Maker', **kwargs)