3from AthenaConfiguration.ComponentAccumulator
import ComponentAccumulator
4from AthenaConfiguration.ComponentFactory
import CompFactory
5from AthDeviceComps.AthDeviceCompsConfig
import (
6 HostMemoryResourceToolCfg,
7 DeviceMemoryResourceToolCfg,
8 MemoryResourcesToolCfg,
12from AthenaConfiguration.Enums
import BeamType
13from AthCUDAServices.AthCUDAServicesConfig
import StreamToolCfg
20 name="RDOtoTracccCellConverterAlg",
21 **kwargs) -> ComponentAccumulator:
23 if not flags.Tracking.doPixelDigitalClustering:
24 raise ValueError(
"clusterization on device is not compatible "
25 "with analog clustering at the moment due to incorrent "
26 "ToT values for Pixel hits in the simulation data.")
28 if flags.ITk.selectStripIntimeHits
and 'timeBins' not in kwargs:
29 coll_25ns = flags.Beam.BunchSpacing<=25
and flags.Beam.Type
is BeamType.Collisions
30 kwargs.setdefault(
"timeBins",
"01X" if coll_25ns
else "X1X")
32 acc = ComponentAccumulator()
33 kwargs.setdefault(
"HostMR", acc.popToolsAndMerge(HostMemoryResourceToolCfg(flags)))
34 kwargs.setdefault(
"DeviceMR", acc.popToolsAndMerge(DeviceMemoryResourceToolCfg(flags)))
35 kwargs.setdefault(
"CopiesTool", acc.popToolsAndMerge(CopiesToolCfg(flags)))
36 kwargs.setdefault(
"PixelRDO",
"ITkPixelRDOs")
37 kwargs.setdefault(
"StripRDO",
"ITkStripRDOs")
38 kwargs.setdefault(
"TracccCells",
"TracccCells")
39 kwargs.setdefault(
"HostDigitizationObjectName",
"TracccHostDigitizationConfig")
40 kwargs.setdefault(
"GeoIdMappingObjectName",
"TracccGeometryIdMapping")
41 kwargs.setdefault(
"CPUCellSorting",
not flags.Acts.Device.doCellSorting)
42 kwargs.setdefault(
"UsePixelToTForCellActivation",
not flags.Tracking.doPixelDigitalClustering)
44 CompFactory.ActsTrk.RDOtoTracccCellConverterAlg(name, **kwargs))
48 name="PhaseIIRDOtoTracccCellConverterAlg",
49 **kwargs) -> ComponentAccumulator:
51 if not flags.Tracking.doPixelDigitalClustering:
52 raise ValueError(
"clusterization on device is not compatible "
53 "with analog clustering at the moment due to incorrent "
54 "ToT values for Pixel hits in the simulation data.")
56 if flags.ITk.selectStripIntimeHits
and 'timeBins' not in kwargs:
57 coll_25ns = flags.Beam.BunchSpacing<=25
and flags.Beam.Type
is BeamType.Collisions
58 kwargs.setdefault(
"timeBins",
"01X" if coll_25ns
else "X1X")
60 acc = ComponentAccumulator()
61 kwargs.setdefault(
"HostMR", acc.popToolsAndMerge(HostMemoryResourceToolCfg(flags)))
62 kwargs.setdefault(
"DeviceMR", acc.popToolsAndMerge(DeviceMemoryResourceToolCfg(flags)))
63 kwargs.setdefault(
"CopiesTool", acc.popToolsAndMerge(CopiesToolCfg(flags)))
64 kwargs.setdefault(
"PixelRDO",
"ITkPixelRDOs")
65 kwargs.setdefault(
"StripRDO",
"ITkStripRDOs")
66 kwargs.setdefault(
"TracccCells",
"TracccCellsFromPh2RDO")
67 kwargs.setdefault(
"HostDigitizationObjectName",
"TracccHostDigitizationConfig")
68 kwargs.setdefault(
"GeoIdMappingObjectName",
"TracccGeometryIdMapping")
69 kwargs.setdefault(
"CPUCellSorting",
not flags.Acts.Device.doCellSorting)
70 kwargs.setdefault(
"UsePixelToTForCellActivation",
not flags.Tracking.doPixelDigitalClustering)
72 CompFactory.ActsTrk.PhaseIIRDOtoTracccCellConverterAlg(name, **kwargs))
76 name="TracccCellValidationAlg",
77 **kwargs) -> ComponentAccumulator:
78 acc = ComponentAccumulator()
79 kwargs.setdefault(
"HostMR", acc.popToolsAndMerge(HostMemoryResourceToolCfg(flags)))
80 kwargs.setdefault(
"DeviceCopyTool", acc.popToolsAndMerge(CopyToolCfg(flags)))
81 kwargs.setdefault(
"ReferenceCells",
"TracccCellsLegacy")
82 kwargs.setdefault(
"Cells",
"TracccCells")
84 CompFactory.ActsTrk.TracccCellValidationAlg(name, **kwargs))
88 name="TracccMeasurementConverterAlg",
89 **kwargs) -> ComponentAccumulator:
90 acc = ComponentAccumulator()
91 kwargs.setdefault(
"HostMR", acc.popToolsAndMerge(HostMemoryResourceToolCfg(flags)))
92 kwargs.setdefault(
"CopyProviderTool", acc.popToolsAndMerge(CopyToolCfg(flags)))
93 kwargs.setdefault(
"InputMeasurements",
"TracccMeasurements")
94 kwargs.setdefault(
"InputClusters",
"TracccClusterCollection")
95 kwargs.setdefault(
"InputCells",
"TracccCells")
96 kwargs.setdefault(
"OutputPixelClusters",
"ITkTracccPixelClusters")
97 kwargs.setdefault(
"OutputStripClusters",
"ITkTracccStripClusters")
98 kwargs.setdefault(
"ConvertClustersWithCells",
False)
100 CompFactory.ActsTrk.TracccMeasurementConverterAlg(name, **kwargs))
104 name="TracccSeedConverterAlg",
105 **kwargs) -> ComponentAccumulator:
106 acc = ComponentAccumulator()
107 kwargs.setdefault(
"HostMR", acc.popToolsAndMerge(HostMemoryResourceToolCfg(flags)))
108 kwargs.setdefault(
"CopyProviderTool", acc.popToolsAndMerge(CopyToolCfg(flags)))
109 kwargs.setdefault(
"InputSpacepoints",
"TracccMeasurements")
110 kwargs.setdefault(
"InputSeeds",
"TracccClusterCollection")
111 kwargs.setdefault(
"OutputSeeds",
"ITkTracccSeeds")
113 CompFactory.ActsTrk.TracccSeedConverterAlg(name, **kwargs))
117 name="TracccTrackConverterAlg",
118 **kwargs) -> ComponentAccumulator:
119 acc = ComponentAccumulator()
120 kwargs.setdefault(
"HostMR", acc.popToolsAndMerge(HostMemoryResourceToolCfg(flags)))
121 kwargs.setdefault(
"CopyProviderTool", acc.popToolsAndMerge(CopyToolCfg(flags)))
122 kwargs.setdefault(
"InputTracks",
"TracccMeasurements")
123 kwargs.setdefault(
"OutputTracks",
"ITkTracccTracks")
124 kwargs.setdefault(
"HostDetectorName",
"TracccHostDetectorGeometry")
126 CompFactory.ActsTrk.TracccTrackConverterAlg(name, **kwargs))
130 name="xAODToTracccMeasurementConverterAlg",
131 **kwargs) -> ComponentAccumulator:
132 acc = ComponentAccumulator()
133 kwargs.setdefault(
"MemoryResourcesTool", acc.popToolsAndMerge(MemoryResourcesToolCfg(flags)))
134 kwargs.setdefault(
"CopiesTool", acc.popToolsAndMerge(CopiesToolCfg(flags)))
135 kwargs.setdefault(
"InputPixelClusters",
"ITkPixelClusters")
136 kwargs.setdefault(
"InputStripClusters",
"ITkStripClusters")
137 kwargs.setdefault(
"OutputTracccMeasurements",
"TracccMeasurementCollection")
138 kwargs.setdefault(
"OutputMeasToPixelCluster",
"TracccMeasToPixelCluster")
139 kwargs.setdefault(
"OutputMeasToStripCluster",
"TracccMeasToStripCluster")
140 kwargs.setdefault(
"GeoIdMappingObjectName",
"TracccGeometryIdMapping")
141 kwargs.setdefault(
"HostConditionsObjectName",
"TracccHostCondConfig")
142 kwargs.setdefault(
"HostDigitizationObjectName",
"TracccHostDigitizationConfig")
144 CompFactory.ActsTrk.xAODToTracccMeasurementConverterAlg(name, **kwargs))
148 name="xAODToTracccSpacePointConverterAlg",
149 **kwargs) -> ComponentAccumulator:
150 acc = ComponentAccumulator()
151 kwargs.setdefault(
"MemoryResourcesTool", acc.popToolsAndMerge(MemoryResourcesToolCfg(flags)))
152 kwargs.setdefault(
"CopiesTool", acc.popToolsAndMerge(CopiesToolCfg(flags)))
153 kwargs.setdefault(
"InputSpacePoints", [
"ITkPixelSpacePoints"])
154 kwargs.setdefault(
"InputMeasToCluster",
"TracccMeasToPixelCluster")
155 kwargs.setdefault(
"OutputTracccSpacepoints",
"TracccPixelSpacepointCollection")
156 kwargs.setdefault(
"OutputSPToHostContainer", f
"{kwargs['OutputTracccSpacepoints']}ToHostContainer")
157 kwargs.setdefault(
"OutputSPToHostIndex", f
"{kwargs['OutputTracccSpacepoints']}ToHostIndex")
159 CompFactory.ActsTrk.xAODToTracccSpacePointConverterAlg(name, **kwargs))
163 name="TracccMeasurementDeviceConverterAlg",
164 **kwargs) -> ComponentAccumulator:
166 if kwargs.get(
"ConvertClustersWithCells",
False) \
167 or flags.Tracking.doTruth:
168 raise ValueError(
"On-GPU conversion of GPU measurements does not, at the moment,"
169 " support conversion of associated RDOs and is therefore not compatible with"
170 " flags.Tracking.doTruth.")
172 acc = ComponentAccumulator()
173 kwargs.setdefault(
"InputMeasurements",
"TracccMeasurements")
174 kwargs.setdefault(
"OutputPixelClusters",
"ITkTracccPixelClusters")
175 kwargs.setdefault(
"OutputStripClusters",
"ITkTracccStripClusters")
176 kwargs.setdefault(
"CopiesProviderTool", acc.popToolsAndMerge(CopiesToolCfg(flags)))
177 kwargs.setdefault(
"MemoryResourcesTool", acc.popToolsAndMerge(MemoryResourcesToolCfg(flags)))
178 kwargs.setdefault(
"StreamTool", acc.popToolsAndMerge(StreamToolCfg(flags)))
179 kwargs.setdefault(
"DeviceConditionsObjectName",
"TracccDeviceCondConfig")
180 kwargs.setdefault(
"DeviceDetectorName",
"TracccDeviceDetectorGeometry")
182 CompFactory.ActsTrk.TracccMeasurementDeviceConverterAlg(name, **kwargs))
186 name="ClusterValidationAlgCfg",
187 **kwargs) -> ComponentAccumulator:
188 acc = ComponentAccumulator()
190 CompFactory.ActsTrk.ClusterValidationAlg(name, **kwargs))
ComponentAccumulator TracccCellValidationAlgCfg(flags, name="TracccCellValidationAlg", **kwargs)
ComponentAccumulator ClusterValidationAlgCfg(flags, name="ClusterValidationAlgCfg", **kwargs)
ComponentAccumulator TracccSeedConverterAlgCfg(flags, name="TracccSeedConverterAlg", **kwargs)
ComponentAccumulator TracccMeasurementConverterAlgCfg(flags, name="TracccMeasurementConverterAlg", **kwargs)
ComponentAccumulator RDOtoTracccCellConverterAlgCfg(flags, name="RDOtoTracccCellConverterAlg", **kwargs)
ComponentAccumulator TracccTrackConverterAlgCfg(flags, name="TracccTrackConverterAlg", **kwargs)
ComponentAccumulator xAODToTracccMeasurementConverterAlgCfg(flags, name="xAODToTracccMeasurementConverterAlg", **kwargs)
ComponentAccumulator TracccMeasurementDeviceConverterAlgCfg(flags, name="TracccMeasurementDeviceConverterAlg", **kwargs)
ComponentAccumulator PhaseIIRDOtoTracccCellConverterAlgCfg(flags, name="PhaseIIRDOtoTracccCellConverterAlg", **kwargs)
ComponentAccumulator xAODToTracccSpacePointConverterAlgCfg(flags, name="xAODToTracccSpacePointConverterAlg", **kwargs)