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(
"BuildDetrayGeometry", flags.Acts.TrackingGeometry.BuildDetrayGeometry)
16 kwargs.setdefault(
"ObjDebugOutput", flags.Acts.TrackingGeometry.ObjDebugOutput)
17 kwargs.setdefault(
"KeepGoingOnMaterialMergeFailure", flags.Acts.TrackingGeometry.KeepGoingOnMaterialMergeFailure)
27 from AthenaServices.ROOTMessageFilterSvcConfig
import ROOTMessageFilterSvcCfg
28 acc.merge(ROOTMessageFilterSvcCfg(flags,
29 SuppressionRules=[(
'TCling::LoadPCM',
30 '.*libGeom_rdict.pcm.*',
33 if flags.Detector.GeometryBpipe:
34 from BeamPipeGeoModel.BeamPipeGMConfig
import BeamPipeGeometryCfg
35 acc.merge(BeamPipeGeometryCfg(flags))
36 kwargs.setdefault(
"BuildBeamPipe",
True)
38 if flags.Detector.GeometryPixel:
39 subDetectors += [
"Pixel"]
40 from PixelGeoModel.PixelGeoModelConfig
import PixelReadoutGeometryCfg
41 acc.merge(PixelReadoutGeometryCfg(flags))
44 if flags.Detector.GeometrySCT:
45 subDetectors += [
"SCT"]
46 from SCT_GeoModel.SCT_GeoModelConfig
import SCT_ReadoutGeometryCfg
47 acc.merge(SCT_ReadoutGeometryCfg(flags))
49 if flags.Detector.GeometryTRT:
53 from TRT_GeoModel.TRT_GeoModelConfig
import TRT_ReadoutGeometryCfg
54 acc.merge(TRT_ReadoutGeometryCfg(flags))
56 if flags.Detector.GeometryCalo:
65 from LArGeoAlgsNV.LArGMConfig
import LArGMCfg
66 acc.merge(LArGMCfg(flags))
67 from TileGeoModel.TileGMConfig
import TileGMCfg
68 acc.merge(TileGMCfg(flags))
71 if flags.Acts.TrackingGeometry.UseBlueprint:
72 if flags.Detector.GeometryBpipe
or flags.Detector.GeometryITk:
74 if flags.Detector.GeometryITk:
75 if flags.Acts.TrackingGeometry.ITkHgtdMaterialSource !=
"None":
78 if flags.Detector.GeometryHGTD:
80 if flags.Detector.GeometryCalo:
81 subDetectors += [
"Calo"]
84 if flags.Muon.usePhaseIIGeoSetup
and 'ACTS' not in flags.Sim.ISF.Simulator.value:
85 subDetectors += [
"Muon"]
86 from MuonConfig.MuonGeometryConfig
import MuonGeoModelCfg
87 acc.merge(MuonGeoModelCfg(flags))
91 if flags.Acts.TrackingGeometry.MuonMaterialSource !=
"None" and \
92 flags.Acts.TrackingGeometry.MuonPassiveMaterial:
96 if flags.Detector.GeometryITkPixel:
97 subDetectors += [
"ITkPixel"]
98 from PixelGeoModelXml.ITkPixelGeoModelConfig
import ITkPixelReadoutGeometryCfg
99 acc.merge(ITkPixelReadoutGeometryCfg(flags))
101 if flags.Detector.GeometryITkStrip:
102 subDetectors += [
"ITkStrip"]
103 from StripGeoModelXml.ITkStripGeoModelConfig
import ITkStripReadoutGeometryCfg
104 acc.merge(ITkStripReadoutGeometryCfg(flags))
107 if flags.Detector.GeometryHGTD:
108 subDetectors += [
"HGTD"]
109 if flags.HGTD.Geometry.useGeoModelXml:
110 from HGTD_GeoModelXml.HGTD_GeoModelConfig
import HGTD_ReadoutGeometryCfg
112 from HGTD_GeoModel.HGTD_GeoModelConfig
import HGTD_ReadoutGeometryCfg
113 acc.merge(HGTD_ReadoutGeometryCfg(flags))
115 if kwargs.get(
"BuildDetrayGeometry",
False):
121 kwargs.setdefault(
"HostMR",
122 CompFactory.AthDevice.HostMemoryResourceTool(
"ActsDetrayHostMR"))
124 actsTrackingGeometrySvc = CompFactory.ActsTrk.TrackingGeometrySvc(name,
125 BuildSubDetectors=subDetectors,
126 BlueprintNodeBuilders=blueprintTools,
127 RefinementTools=refineTools,
130 if flags.Acts.TrackingGeometry.MaterialSource ==
"Default":
131 if flags.Detector.GeometryITk:
133 if flags.Detector.GeometryHGTD:
135 if flags.Acts.TrackingGeometry.InsertITkPassiveMaterialLayers:
136 extension +=
"-passiveLayers"
137 if flags.Acts.TrackingGeometry.MaterialFileExtension:
138 extension +=
"-"+flags.Acts.TrackingGeometry.MaterialFileExtension
139 actsTrackingGeometrySvc.UseMaterialMap =
True
140 actsTrackingGeometrySvc.MaterialMapCalibFolder = flags.Acts.TrackingGeometry.MaterialCalibrationFolder
141 actsTrackingGeometrySvc.MaterialMapInputFile = \
142 "material-maps-" + flags.GeoModel.AtlasVersion +
"-" + extension +
".json"
144 elif flags.Acts.TrackingGeometry.MaterialSource.find(
".json") != -1:
145 actsTrackingGeometrySvc.UseMaterialMap =
True
146 actsTrackingGeometrySvc.MaterialMapCalibFolder = flags.Acts.TrackingGeometry.MaterialCalibrationFolder
147 actsTrackingGeometrySvc.MaterialMapInputFile = flags.Acts.TrackingGeometry.MaterialSource
149 if flags.Acts.TrackingGeometry.InsertITkPassiveMaterialLayers:
150 actsTrackingGeometrySvc.PassiveITkInnerPixelBarrelLayerRadii = flags.Acts.TrackingGeometry.PassiveITkInnerPixelBarrelLayerRadii
151 actsTrackingGeometrySvc.PassiveITkInnerPixelBarrelLayerHalflengthZ = flags.Acts.TrackingGeometry.PassiveITkInnerPixelBarrelLayerHalflengthZ
152 actsTrackingGeometrySvc.PassiveITkInnerPixelBarrelLayerThickness = flags.Acts.TrackingGeometry.PassiveITkInnerPixelBarrelLayerThickness
153 actsTrackingGeometrySvc.PassiveITkOuterPixelBarrelLayerRadii = flags.Acts.TrackingGeometry.PassiveITkOuterPixelBarrelLayerRadii
154 actsTrackingGeometrySvc.PassiveITkOuterPixelBarrelLayerHalflengthZ = flags.Acts.TrackingGeometry.PassiveITkOuterPixelBarrelLayerHalflengthZ
155 actsTrackingGeometrySvc.PassiveITkOuterPixelBarrelLayerThickness = flags.Acts.TrackingGeometry.PassiveITkOuterPixelBarrelLayerThickness
156 actsTrackingGeometrySvc.PassiveITkStripBarrelLayerRadii = flags.Acts.TrackingGeometry.PassiveITkStripBarrelLayerRadii
157 actsTrackingGeometrySvc.PassiveITkStripBarrelLayerHalflengthZ = flags.Acts.TrackingGeometry.PassiveITkStripBarrelLayerHalflengthZ
158 actsTrackingGeometrySvc.PassiveITkStripBarrelLayerThickness = flags.Acts.TrackingGeometry.PassiveITkStripBarrelLayerThickness
162 acc.addService(actsTrackingGeometrySvc, primary =
True)