3 from AthenaConfiguration.ComponentAccumulator
import ComponentAccumulator
4 from AthenaConfiguration.ComponentFactory
import CompFactory
7 name: str=
'ActsAnalogueClusteringTool',
8 **kwargs) -> ComponentAccumulator:
10 if not flags.Detector.GeometryITk:
11 raise Exception(
"Acts Analogue Clustering calibration only supports ITk!")
15 from PixelConditionsAlgorithms.ITkPixelConditionsConfig
import ITkPixelOfflineCalibCondAlgCfg
18 from ActsConfig.ActsConfigFlags
import PixelErrorStrategy
20 kwargs.setdefault(
'UseWeightedPosition', flags.Acts.Clusters.UseWeightedPosition)
21 kwargs.setdefault(
"PerformCovarianceCalibration", flags.Acts.OnTrackCalibration.performCovarianceCalibration)
22 kwargs.setdefault(
"DetEleCollKey",
"ITkPixelDetectorElementCollection")
23 kwargs.setdefault(
"PixelOfflineCalibData",
"ITkPixelOfflineCalibData")
24 kwargs.setdefault(
"errorStrategy", PixelErrorStrategy.PITCH.value
if flags.Acts.Clusters.UsePixelBroadErrors
25 else PixelErrorStrategy.CALIBRATED.value)
30 if not flags.Tracking.doITkFastTracking:
31 kwargs.setdefault(
"CalibratedCovarianceLowerBound", 0.75)
33 if 'PixelLorentzAngleTool' not in kwargs:
34 from SiLorentzAngleTool.ITkPixelLorentzAngleConfig
import ITkPixelLorentzAngleToolCfg
37 acc.setPrivateTools(CompFactory.ActsTrk.ITkAnalogueClusteringTool(name, **kwargs))
41 name: str=
'ActsStripCalibrationTool',
42 **kwargs) -> ComponentAccumulator:
44 if not flags.Detector.GeometryITk:
45 raise Exception(
"Acts Strip calibration only supports ITk!")
49 from ActsConfig.ActsConfigFlags
import StripClusteringErrorMode,StripErrorStrategy
52 kwargs.setdefault(
"DetEleCollKey",
"ITkStripDetectorElementCollection")
53 kwargs.setdefault(
"PerformCovarianceCalibration",
True)
54 kwargs.setdefault(
"errorStrategy", StripErrorStrategy.PITCH.value
if flags.Acts.Clusters.StripClusteringErrorMode == StripClusteringErrorMode.WIDTH
55 else StripErrorStrategy.CLUSTERING.value)
57 acc.setPrivateTools(CompFactory.ActsTrk.ITkStripCalibrationTool(name, **kwargs))