ATLAS Offline Software
SiDetElementsRoadToolConfig.py
Go to the documentation of this file.
1 # Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
2 # Configuration of SiDetElementsRoadTool_xk package
3 
4 from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator
5 from AthenaConfiguration.ComponentFactory import CompFactory
6 from AthenaConfiguration.Enums import BeamType
7 
8 def SiDetElementsRoadMaker_xkCfg(flags, name="InDetSiRoadMaker", **kwargs) :
10 
11  #
12  # --- SCT and Pixel detector elements road builder
13  #
14 
15  from PixelGeoModel.PixelGeoModelConfig import PixelReadoutGeometryCfg
16  acc.merge(PixelReadoutGeometryCfg(flags)) # To produce PixelDetectorElementCollection
17  from SCT_GeoModel.SCT_GeoModelConfig import SCT_ReadoutGeometryCfg
18  acc.merge(SCT_ReadoutGeometryCfg(flags)) # To produce SCT_DetectorElementCollection
19 
20  # Create ReadCondHandle SiDetElementsLayerVectors_xk
21  acc.addCondAlgo(CompFactory.InDet.SiDetElementsRoadCondAlg_xk(name = "SiDetElementsRoadCondAlg_xk"))
22 
23  from TrkConfig.TrkExRungeKuttaPropagatorConfig import RungeKuttaPropagatorCfg
24  InDetPatternPropagator = acc.popToolsAndMerge(RungeKuttaPropagatorCfg(flags, name="InDetPatternPropagator"))
25  acc.addPublicTool(InDetPatternPropagator)
26  kwargs.setdefault("PropagatorTool", InDetPatternPropagator)
27 
28  kwargs.setdefault("usePixel", flags.Tracking.ActiveConfig.usePixel )
29  kwargs.setdefault("PixManagerLocation", 'Pixel')
30  kwargs.setdefault("useSCT", flags.Tracking.ActiveConfig.useSCT)
31  kwargs.setdefault("SCTManagerLocation", 'SCT')
32  kwargs.setdefault("RoadWidth", flags.Tracking.ActiveConfig.roadWidth)
33 
34  acc.setPrivateTools(CompFactory.InDet.SiDetElementsRoadMaker_xk(
35  name+flags.Tracking.ActiveConfig.extension, **kwargs))
36  return acc
37 
38 def TrigSiDetElementsRoadMaker_xkCfg(flags, name="InDetTrigSiRoadMaker", **kwargs) :
39  acc = ComponentAccumulator()
40 
41  if 'PropagatorTool' not in kwargs:
42  from TrkConfig.TrkExRungeKuttaPropagatorConfig import RungeKuttaPropagatorCfg
43  InDetPatternPropagator = acc.popToolsAndMerge(RungeKuttaPropagatorCfg(flags,
44  name="InDetTrigPatternPropagator"))
45  acc.addPublicTool(InDetPatternPropagator)
46  kwargs.setdefault("PropagatorTool", InDetPatternPropagator)
47 
48  acc.setPrivateTools(acc.popToolsAndMerge(SiDetElementsRoadMaker_xkCfg(flags, name, **kwargs)))
49  return acc
50 
51 
52 def SiDetElementsRoadMaker_xk_TRT_Cfg(flags, name = 'InDetTRT_SeededSiRoad', **kwargs):
53  #
54  # Silicon det elements road maker tool
55  #
56  kwargs.setdefault("RoadWidth", 50. if flags.Beam.Type is BeamType.Cosmics else 35.)
57  kwargs.setdefault("MaxStep", 20.)
58 
59  return SiDetElementsRoadMaker_xkCfg(flags, name, **kwargs)
60 
61 def ITkSiDetElementsRoadMaker_xkCfg(flags, name="ITkSiRoadMaker", **kwargs) :
62  acc = ComponentAccumulator()
63  #
64  # --- ITk Strip and Pixel detector elements road builder
65  #
66 
67  from PixelGeoModelXml.ITkPixelGeoModelConfig import ITkPixelReadoutGeometryCfg
68  acc.merge(ITkPixelReadoutGeometryCfg(flags)) # To produce ITkPixelDetectorElementCollection
69  from StripGeoModelXml.ITkStripGeoModelConfig import ITkStripReadoutGeometryCfg
70  acc.merge(ITkStripReadoutGeometryCfg(flags)) # To produce ITkStripDetectorElementCollection
71 
72  # Create ReadCondHandle SiDetElementsLayerVectors_xk
73  acc.addCondAlgo(CompFactory.InDet.SiDetElementsRoadCondAlg_xk(name = "SiDetElementsRoadCondAlg_xk",
74  PixelDetEleCollKey = "ITkPixelDetectorElementCollection",
75  SCTDetEleCollKey = "ITkStripDetectorElementCollection"))
76 
77  from TrkConfig.TrkExRungeKuttaPropagatorConfig import RungeKuttaPropagatorCfg
78  ITkPatternPropagator = acc.popToolsAndMerge(RungeKuttaPropagatorCfg(flags, name="ITkPatternPropagator"))
79  acc.addPublicTool(ITkPatternPropagator)
80  kwargs.setdefault("PropagatorTool", ITkPatternPropagator)
81 
82  kwargs.setdefault("usePixel", flags.Tracking.ActiveConfig.useITkPixel )
83  kwargs.setdefault("PixManagerLocation", 'ITkPixel')
84  kwargs.setdefault("useSCT", flags.Tracking.ActiveConfig.useITkStrip)
85  kwargs.setdefault("SCTManagerLocation", 'ITkStrip')
86  kwargs.setdefault("RoadWidth", flags.Tracking.ActiveConfig.roadWidth)
87 
88  acc.setPrivateTools(CompFactory.InDet.SiDetElementsRoadMaker_xk(
89  name+flags.Tracking.ActiveConfig.extension, **kwargs))
90  return acc
91 
python.SiDetElementsRoadToolConfig.SiDetElementsRoadMaker_xk_TRT_Cfg
def SiDetElementsRoadMaker_xk_TRT_Cfg(flags, name='InDetTRT_SeededSiRoad', **kwargs)
Definition: SiDetElementsRoadToolConfig.py:52
python.SiDetElementsRoadToolConfig.ITkSiDetElementsRoadMaker_xkCfg
def ITkSiDetElementsRoadMaker_xkCfg(flags, name="ITkSiRoadMaker", **kwargs)
Definition: SiDetElementsRoadToolConfig.py:61
python.JetAnalysisCommon.ComponentAccumulator
ComponentAccumulator
Definition: JetAnalysisCommon.py:302
ITkStripGeoModelConfig.ITkStripReadoutGeometryCfg
def ITkStripReadoutGeometryCfg(flags)
Definition: ITkStripGeoModelConfig.py:39
ITkPixelGeoModelConfig.ITkPixelReadoutGeometryCfg
def ITkPixelReadoutGeometryCfg(flags)
Definition: ITkPixelGeoModelConfig.py:39
python.SiDetElementsRoadToolConfig.SiDetElementsRoadMaker_xkCfg
def SiDetElementsRoadMaker_xkCfg(flags, name="InDetSiRoadMaker", **kwargs)
Definition: SiDetElementsRoadToolConfig.py:8
python.SiDetElementsRoadToolConfig.TrigSiDetElementsRoadMaker_xkCfg
def TrigSiDetElementsRoadMaker_xkCfg(flags, name="InDetTrigSiRoadMaker", **kwargs)
Definition: SiDetElementsRoadToolConfig.py:38
python.TrkExRungeKuttaPropagatorConfig.RungeKuttaPropagatorCfg
def RungeKuttaPropagatorCfg(flags, name='AtlasRungeKuttaPropagator', **kwargs)
Definition: TrkExRungeKuttaPropagatorConfig.py:9
SCT_GeoModelConfig.SCT_ReadoutGeometryCfg
def SCT_ReadoutGeometryCfg(flags)
Definition: SCT_GeoModelConfig.py:51
PixelGeoModelConfig.PixelReadoutGeometryCfg
def PixelReadoutGeometryCfg(flags)
Definition: PixelGeoModelConfig.py:52