7 name: str=
'ActsAnalogueClusteringTool',
8 **kwargs) -> ComponentAccumulator:
10 if not flags.Detector.GeometryITk:
11 raise Exception(
"Acts Analogue Clustering calibration only supports ITk!")
13 acc = ComponentAccumulator()
15 from PixelConditionsAlgorithms.ITkPixelConditionsConfig
import ITkPixelOfflineCalibCondAlgCfg
16 acc.merge(ITkPixelOfflineCalibCondAlgCfg(flags))
18 from ActsConfig.ActsConfigFlags
import PixelErrorStrategy
20 kwargs.setdefault(
"PerformCovarianceCalibration", flags.Acts.OnTrackCalibration.performCovarianceCalibration)
21 kwargs.setdefault(
"PixelOfflineCalibData",
"ITkPixelOfflineCalibData")
22 kwargs.setdefault(
"errorStrategy", PixelErrorStrategy.PITCH.value
if flags.Acts.Clusters.UsePixelBroadErrors
23 else PixelErrorStrategy.CALIBRATED.value)
28 if not flags.Tracking.doITkFastTracking:
29 kwargs.setdefault(
"CalibratedCovarianceLowerBound", 0.75)
31 if 'PixelLorentzAngleTool' not in kwargs:
32 from SiLorentzAngleTool.ITkPixelLorentzAngleConfig
import ITkPixelLorentzAngleToolCfg
33 kwargs.setdefault(
"PixelLorentzAngleTool", acc.popToolsAndMerge(ITkPixelLorentzAngleToolCfg(flags)))
36 from ActsConfig.ActsConfigFlags
import PixelCalibrationStrategy
37 ClusteringToolType =
None
38 if flags.Acts.PixelCalibrationStrategy
is PixelCalibrationStrategy.NNClustering:
39 ClusteringToolType = CompFactory.ActsTrk.ITkNNClusterCalibratorTool
40 from InDetConfig.SiClusterizationToolConfig
import OnnxNNCondAlgCfg
41 acc.merge(OnnxNNCondAlgCfg(flags,
42 NumberNetworkPath=flags.Acts.PixelNNCalibrationModelsFolder+
'number.onnx',
43 PositionNetwork1Path=flags.Acts.PixelNNCalibrationModelsFolder+
'pos1.onnx',
44 PositionNetwork2Path=flags.Acts.PixelNNCalibrationModelsFolder+
'pos2.onnx',
45 PositionNetwork3Path=flags.Acts.PixelNNCalibrationModelsFolder+
'pos3.onnx'))
47 ClusteringToolType = CompFactory.ActsTrk.ITkAnalogueClusteringTool
50 acc.setPrivateTools(ClusteringToolType(name, **kwargs))
54 name: str=
'ActsStripCalibrationTool',
55 **kwargs) -> ComponentAccumulator:
57 if not flags.Detector.GeometryITk:
58 raise Exception(
"Acts Strip calibration only supports ITk!")
60 acc = ComponentAccumulator()
62 from ActsConfig.ActsConfigFlags
import StripClusteringErrorMode,StripErrorStrategy
64 kwargs.setdefault(
"PerformCovarianceCalibration",
True)
65 kwargs.setdefault(
"errorStrategy", StripErrorStrategy.PITCH.value
if flags.Acts.Clusters.StripClusteringErrorMode == StripClusteringErrorMode.WIDTH
66 else StripErrorStrategy.CLUSTERING.value)
68 acc.setPrivateTools(CompFactory.ActsTrk.ITkStripCalibrationTool(name, **kwargs))