207 double cylinderOuterRadius =
parameters->thermalShieldOuterRadius();
208 double cylinderInnerRadius =
parameters->thermalShieldInnerRadius();
209 double cylinderLength =
parameters->cylinderLength();
210 double bulkheadInnerRadius =
parameters->thermalShieldBulkheadInnerRadius();
211 double bulkheadOuterRadius =
parameters->thermalShieldBulkheadOuterRadius();
212 double bulkheadThickness =
parameters->thermalShieldEndCapCylThickness();
213 double endPanelInnerRadius =
parameters->thermalShieldEndPanelInnerRadius();
214 double endPanelOuterRadius =
parameters->thermalShieldEndPanelOuterRadius();
215 double endPanelThickness =
parameters->thermalShieldEndCapThickness();
216 double endPanelZMax =
parameters->thermalShieldEndZMax();
218 std::string cylinderMaterialName =
parameters->thermalShieldMaterialCyl();
219 std::string bulkheadMaterialName =
parameters->thermalShieldMaterialOuterSect();
220 std::string endPanelMaterialName =
parameters->thermalShieldMaterialInnerSect();
224 const GeoTube * cylinderShape =
new GeoTube(cylinderInnerRadius, cylinderOuterRadius, 0.5*cylinderLength);
226 const GeoLogVol * cylinderLog =
new GeoLogVol(
"ThShieldOuterCyl", cylinderShape, cylinderMaterial);
227 GeoPhysVol * cylinder =
new GeoPhysVol(cylinderLog);
231 const GeoTube * bulkheadShape =
new GeoTube(bulkheadInnerRadius, bulkheadOuterRadius, 0.5*bulkheadThickness);
233 const GeoLogVol * bulkheadLog =
new GeoLogVol(
"ThShieldBulkhead", bulkheadShape, bulkheadMaterial);
234 GeoPhysVol * bulkhead =
new GeoPhysVol(bulkheadLog);
235 GeoTransform * bulkheadPosPlus =
new GeoTransform(GeoTrf::TranslateZ3D(+(endPanelZMax-endPanelThickness-0.5*bulkheadThickness)));
236 GeoTransform * bulkheadPosMinus =
new GeoTransform(GeoTrf::TranslateZ3D(-(endPanelZMax-endPanelThickness-0.5*bulkheadThickness)));
237 parent->add(bulkheadPosPlus);
239 parent->add(bulkheadPosMinus);
243 const GeoTube * endPanelShape =
new GeoTube(endPanelInnerRadius, endPanelOuterRadius, 0.5*endPanelThickness);
245 const GeoLogVol * endPanelLog =
new GeoLogVol(
"ThShieldEndPanel", endPanelShape, endPanelMaterial);
246 GeoPhysVol * endPanel =
new GeoPhysVol(endPanelLog);
247 GeoTransform * endPanelPosPlus =
new GeoTransform(GeoTrf::TranslateZ3D(+(endPanelZMax-0.5*endPanelThickness)));
248 GeoTransform * endPanelPosMinus =
new GeoTransform(GeoTrf::TranslateZ3D(-(endPanelZMax-0.5*endPanelThickness)));
249 parent->add(endPanelPosPlus);
251 parent->add(endPanelPosMinus);