7 name: str =
"ActsTrackingGeometrySvc",
8 **kwargs) -> ComponentAccumulator:
9 acc = ComponentAccumulator()
11 from ROOT.ActsTrk
import DetectorType
12 kwargs.setdefault(
"NotAlignDetectors", [DetectorType.Trt,
14 kwargs.setdefault(
"UseBlueprint", flags.Acts.TrackingGeometry.UseBlueprint)
15 kwargs.setdefault(
"ObjDebugOutput", flags.Acts.TrackingGeometry.ObjDebugOutput)
25 from AthenaServices.ROOTMessageFilterSvcConfig
import ROOTMessageFilterSvcCfg
26 acc.merge(ROOTMessageFilterSvcCfg(flags,
27 SuppressionRules=[(
'TCling::LoadPCM',
28 '.*libGeom_rdict.pcm.*',
31 if flags.Detector.GeometryBpipe:
32 from BeamPipeGeoModel.BeamPipeGMConfig
import BeamPipeGeometryCfg
33 acc.merge(BeamPipeGeometryCfg(flags))
34 kwargs.setdefault(
"BuildBeamPipe",
True)
36 if flags.Detector.GeometryPixel:
37 subDetectors += [
"Pixel"]
38 from PixelGeoModel.PixelGeoModelConfig
import PixelReadoutGeometryCfg
39 acc.merge(PixelReadoutGeometryCfg(flags))
42 if flags.Detector.GeometrySCT:
43 subDetectors += [
"SCT"]
44 from SCT_GeoModel.SCT_GeoModelConfig
import SCT_ReadoutGeometryCfg
45 acc.merge(SCT_ReadoutGeometryCfg(flags))
47 if flags.Detector.GeometryTRT:
51 from TRT_GeoModel.TRT_GeoModelConfig
import TRT_ReadoutGeometryCfg
52 acc.merge(TRT_ReadoutGeometryCfg(flags))
54 if flags.Detector.GeometryCalo:
63 from LArGeoAlgsNV.LArGMConfig
import LArGMCfg
64 acc.merge(LArGMCfg(flags))
65 from TileGeoModel.TileGMConfig
import TileGMCfg
66 acc.merge(TileGMCfg(flags))
69 if flags.Acts.TrackingGeometry.UseBlueprint:
70 if flags.Detector.GeometryITkPixel
or flags.Detector.GeometryITkStrip:
74 if flags.Detector.GeometryCalo:
75 subDetectors += [
"Calo"]
78 if flags.Muon.usePhaseIIGeoSetup
and 'ACTS' not in flags.Sim.ISF.Simulator.value:
79 subDetectors += [
"Muon"]
80 from MuonConfig.MuonGeometryConfig
import MuonGeoModelCfg
81 acc.merge(MuonGeoModelCfg(flags))
82 from ActsMuonDetector.ActsMuonDetectorCfg
import MuonBlueprintNodeBuilderCfg, MuonMaterialDecoratorToolCfg
83 blueprintTools += [acc.popToolsAndMerge(MuonBlueprintNodeBuilderCfg(flags))]
86 if flags.Muon.trackGeometryPassiveMaterial
and \
87 len(flags.Muon.trackGeometryMaterialMap) > 0:
88 refineTools+= [acc.popToolsAndMerge(MuonMaterialDecoratorToolCfg(flags))]
91 if flags.Detector.GeometryITkPixel:
92 subDetectors += [
"ITkPixel"]
93 from PixelGeoModelXml.ITkPixelGeoModelConfig
import ITkPixelReadoutGeometryCfg
94 acc.merge(ITkPixelReadoutGeometryCfg(flags))
96 if flags.Detector.GeometryITkStrip:
97 subDetectors += [
"ITkStrip"]
98 from StripGeoModelXml.ITkStripGeoModelConfig
import ITkStripReadoutGeometryCfg
99 acc.merge(ITkStripReadoutGeometryCfg(flags))
102 if flags.Detector.GeometryHGTD:
103 subDetectors += [
"HGTD"]
104 if flags.HGTD.Geometry.useGeoModelXml:
105 from HGTD_GeoModelXml.HGTD_GeoModelConfig
import HGTD_ReadoutGeometryCfg
107 from HGTD_GeoModel.HGTD_GeoModelConfig
import HGTD_ReadoutGeometryCfg
108 acc.merge(HGTD_ReadoutGeometryCfg(flags))
110 actsTrackingGeometrySvc = CompFactory.ActsTrackingGeometrySvc(name,
111 BuildSubDetectors=subDetectors,
112 BlueprintNodeBuilders=blueprintTools,
113 RefinementTools=refineTools,
116 if flags.Acts.TrackingGeometry.MaterialSource ==
"Default":
117 if flags.Detector.GeometryITk:
119 if flags.Detector.GeometryHGTD:
121 if flags.Acts.TrackingGeometry.InsertITkPassiveMaterialLayers:
122 extension +=
"-passiveLayers"
123 if flags.Acts.TrackingGeometry.MaterialFileExtension:
124 extension +=
"-"+flags.Acts.TrackingGeometry.MaterialFileExtension
125 actsTrackingGeometrySvc.UseMaterialMap =
True
126 actsTrackingGeometrySvc.MaterialMapCalibFolder = flags.Acts.TrackingGeometry.MaterialCalibrationFolder
127 actsTrackingGeometrySvc.MaterialMapInputFile = \
128 "material-maps-" + flags.GeoModel.AtlasVersion +
"-" + extension +
".json"
130 elif flags.Acts.TrackingGeometry.MaterialSource.find(
".json") != -1:
131 actsTrackingGeometrySvc.UseMaterialMap =
True
132 actsTrackingGeometrySvc.MaterialMapCalibFolder = flags.Acts.TrackingGeometry.MaterialCalibrationFolder
133 actsTrackingGeometrySvc.MaterialMapInputFile = flags.Acts.TrackingGeometry.MaterialSource
135 if flags.Acts.TrackingGeometry.InsertITkPassiveMaterialLayers:
136 actsTrackingGeometrySvc.PassiveITkInnerPixelBarrelLayerRadii = flags.Acts.TrackingGeometry.PassiveITkInnerPixelBarrelLayerRadii
137 actsTrackingGeometrySvc.PassiveITkInnerPixelBarrelLayerHalflengthZ = flags.Acts.TrackingGeometry.PassiveITkInnerPixelBarrelLayerHalflengthZ
138 actsTrackingGeometrySvc.PassiveITkInnerPixelBarrelLayerThickness = flags.Acts.TrackingGeometry.PassiveITkInnerPixelBarrelLayerThickness
139 actsTrackingGeometrySvc.PassiveITkOuterPixelBarrelLayerRadii = flags.Acts.TrackingGeometry.PassiveITkOuterPixelBarrelLayerRadii
140 actsTrackingGeometrySvc.PassiveITkOuterPixelBarrelLayerHalflengthZ = flags.Acts.TrackingGeometry.PassiveITkOuterPixelBarrelLayerHalflengthZ
141 actsTrackingGeometrySvc.PassiveITkOuterPixelBarrelLayerThickness = flags.Acts.TrackingGeometry.PassiveITkOuterPixelBarrelLayerThickness
142 actsTrackingGeometrySvc.PassiveITkStripBarrelLayerRadii = flags.Acts.TrackingGeometry.PassiveITkStripBarrelLayerRadii
143 actsTrackingGeometrySvc.PassiveITkStripBarrelLayerHalflengthZ = flags.Acts.TrackingGeometry.PassiveITkStripBarrelLayerHalflengthZ
144 actsTrackingGeometrySvc.PassiveITkStripBarrelLayerThickness = flags.Acts.TrackingGeometry.PassiveITkStripBarrelLayerThickness
148 acc.addService(actsTrackingGeometrySvc, primary =
True)