ATLAS Offline Software
Loading...
Searching...
No Matches
ActsMeasurementCalibrationConfig.py
Go to the documentation of this file.
1# Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
2
3from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator
4from AthenaConfiguration.ComponentFactory import CompFactory
5
7 name: str='ActsAnalogueClusteringTool',
8 **kwargs) -> ComponentAccumulator:
9
10 if not flags.Detector.GeometryITk:
11 raise Exception("Acts Analogue Clustering calibration only supports ITk!")
12
13 acc = ComponentAccumulator()
14
15 from PixelConditionsAlgorithms.ITkPixelConditionsConfig import ITkPixelOfflineCalibCondAlgCfg
16 acc.merge(ITkPixelOfflineCalibCondAlgCfg(flags))
17
18 from ActsConfig.ActsConfigFlags import PixelErrorStrategy
19
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)
26
27 # For default configuration we set a lower cap on the calibrated covariance
28 # For FT we have inflated chi2 instead
29 # This applies to all tracking passes, main and secondaries alike
30 if not flags.Tracking.doITkFastTracking:
31 kwargs.setdefault("CalibratedCovarianceLowerBound", 0.75)
32
33 if 'PixelLorentzAngleTool' not in kwargs:
34 from SiLorentzAngleTool.ITkPixelLorentzAngleConfig import ITkPixelLorentzAngleToolCfg
35 kwargs.setdefault("PixelLorentzAngleTool", acc.popToolsAndMerge(ITkPixelLorentzAngleToolCfg(flags)))
36
37 acc.setPrivateTools(CompFactory.ActsTrk.ITkAnalogueClusteringTool(name, **kwargs))
38 return acc
39
41 name: str='ActsStripCalibrationTool',
42 **kwargs) -> ComponentAccumulator:
43
44 if not flags.Detector.GeometryITk:
45 raise Exception("Acts Strip calibration only supports ITk!")
46
47 acc = ComponentAccumulator()
48
49 from ActsConfig.ActsConfigFlags import StripClusteringErrorMode,StripErrorStrategy
50
51
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)
56
57 acc.setPrivateTools(CompFactory.ActsTrk.ITkStripCalibrationTool(name, **kwargs))
58 return acc
ComponentAccumulator ActsStripCalibrationToolCfg(flags, str name='ActsStripCalibrationTool', **kwargs)
ComponentAccumulator ActsAnalogueClusteringToolCfg(flags, str name='ActsAnalogueClusteringTool', **kwargs)