75def ExtrapolationToolCfg(flags, args):
76
77 acc = ComponentAccumulator()
78
79
80 LayerMaterialInspector = CompFactory.Trk.LayerMaterialInspector("LayerMaterialInspector",
81 OutputLevel=INFO)
82 acc.addPublicTool(LayerMaterialInspector)
83
84
85 TrackingVolumeDisplayer = CompFactory.Trk.TrackingVolumeDisplayer("TrackingVolumeDisplayer",
86 TrackingVolumeOutputFile='TrackingVolumes.C',
87 LayerOutputFile='Layers.C',
88 SurfaceOutputFile='Surfaces.C')
89 acc.addPublicTool(TrackingVolumeDisplayer)
90
91
92 TestPropagators = []
93 TestPropagator = CompFactory.Trk.RungeKuttaPropagator("TestPropagator")
94 acc.addPublicTool(TestPropagator)
95 TestPropagators += [TestPropagator]
96
97 from TrkConfig.TrkExSTEP_PropagatorConfig import AtlasSTEP_PropagatorCfg
98 TestSTEP_Propagator = acc.popToolsAndMerge(AtlasSTEP_PropagatorCfg(flags, name="TestSTEP_Propagator", DetailedEloss=True))
99 TestPropagators += [TestSTEP_Propagator]
100
101 TestSTEP_Propagator.Straggling = False
102
103 if args.myPDG == 998 :
104 TestSTEP_Propagator.MultipleScattering = False
105 TestSTEP_Propagator.EnergyLoss = False
106
107
108 TestUpdators = []
109
110 TestMaterialEffectsUpdator = CompFactory.Trk.MaterialEffectsUpdator("TestMaterialEffectsUpdator")
111 acc.addPublicTool(TestMaterialEffectsUpdator)
112 if args.myPDG == 998 :
113 TestMaterialEffectsUpdator.EnergyLoss = False
114 TestMaterialEffectsUpdator.MultipleScattering = False
115
116 TestUpdators += [TestMaterialEffectsUpdator]
117
118 TestMaterialEffectsUpdatorLandau = CompFactory.Trk.MaterialEffectsUpdator("TestMaterialEffectsUpdatorLandau",
119 LandauMode=True)
120 acc.addPublicTool(TestMaterialEffectsUpdatorLandau)
121
122 if args.myPDG == 998 :
123 TestMaterialEffectsUpdatorLandau.EnergyLoss = False
124 TestMaterialEffectsUpdatorLandau.MultipleScattering = False
125
126
127
128
129 TestNavigator = CompFactory.Trk.Navigator("TestNavigator",
130 TrackingGeometrySvc="Trk::TrackingGeometrySvc/AtlasTrackingGeometrySvc")
131 acc.addPublicTool(TestNavigator)
132
133
134
135 TestSubPropagators = []
136 TestSubUpdators = []
137
138
139
140 TestSubPropagators += [ TestPropagator.name ]
141 TestSubUpdators += [ TestMaterialEffectsUpdator.name ]
142
143
144 TestSubPropagators += [ TestPropagator.name ]
145 TestSubUpdators += [ TestMaterialEffectsUpdator.name ]
146
147
148 TestSubPropagators += [ TestPropagator.name ]
149 TestSubUpdators += [ TestMaterialEffectsUpdator.name ]
150
151
152 TestSubPropagators += [ TestSTEP_Propagator.name ]
153
154 TestSubUpdators += [ TestMaterialEffectsUpdator.name ]
155
156
157 TestSubPropagators += [ TestSTEP_Propagator.name ]
158 TestSubUpdators += [ TestMaterialEffectsUpdator.name ]
159
160
161 TestSubPropagators += [ TestPropagator.name ]
162 TestSubUpdators += [ TestMaterialEffectsUpdator.name ]
163
164
165 AtlasEnergyLossUpdator = CompFactory.Trk.EnergyLossUpdator("AtlasEnergyLossUpdator",
166 DetailedEloss=True)
167 acc.addPublicTool(AtlasEnergyLossUpdator)
168
169
170
171
172
173
174
175
176 TestExtrapolator = CompFactory.Trk.Extrapolator("TestExtrapolator",
177 Navigator = TestNavigator,
178 MaterialEffectsUpdators = TestUpdators,
179 STEP_Propagator = TestSTEP_Propagator.name,
180 Propagators = TestPropagators,
181 SubPropagators = TestSubPropagators,
182 SubMEUpdators = TestSubUpdators,
183 EnergyLossUpdater = AtlasEnergyLossUpdator
184 )
185 acc.addPublicTool(TestExtrapolator, primary=True)
186
187
188 return acc
189
190