ATLAS Offline Software
Loading...
Searching...
No Matches
SCT_CoolingEnd.cxx
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3*/
4
5#include "SCT_CoolingEnd.h"
6
8
11
12#include "GeoModelKernel/GeoTube.h"
13#include "GeoModelKernel/GeoLogVol.h"
14#include "GeoModelKernel/GeoPhysVol.h"
15#include "GeoModelKernel/Units.h"
16
17
18SCT_CoolingEnd::SCT_CoolingEnd(const std::string & name, int iLayer,
19 double innerRadius,
20 double length,
21 InDetDD::SCT_DetectorManager* detectorManager,
22 SCT_GeometryManager* geometryManager,
23 SCT_MaterialManager* materials)
24 : SCT_SharedComponentFactory(name, detectorManager, geometryManager, materials),
25 m_iLayer(iLayer),
28{
31}
32
33
34void
36{
37 const SCT_BarrelParameters * parameters = m_geometryManager->barrelParameters();
38
39 m_materialName = parameters->coolingEndMaterial(m_iLayer);
40 m_radialWidth = parameters->clampDeltaR(m_iLayer);
41
43}
44
45GeoVPhysVol *
47{
48 // Make volume representing cooling inlets, outlets and U-bends. A simple tube.
49 const GeoTube * coolShape = new GeoTube(m_innerRadius, m_outerRadius, 0.5 * m_length);
50 m_material = m_materials->getMaterialForVolume(m_materialName, coolShape->volume());
52 const GeoLogVol * coolLog = new GeoLogVol(getName(), coolShape, m_material);
53
54 GeoPhysVol * cool = new GeoPhysVol(coolLog);
55
56 return cool;
57}
Dedicated detector manager extending the functionality of the SiDetectorManager with dedicated SCT in...
const std::string & getName() const
SCT_GeometryManager * m_geometryManager
SCT_MaterialManager * m_materials
double length() const
SCT_CoolingEnd(const std::string &name, int iLayer, double innerRadius, double length, InDetDD::SCT_DetectorManager *detectorManager, SCT_GeometryManager *geometryManager, SCT_MaterialManager *materials)
double innerRadius() const
std::string m_materialName
const GeoMaterial * m_material
virtual GeoVPhysVol * build()
SCT_SharedComponentFactory(const std::string &name, InDetDD::SCT_DetectorManager *detectorManager, SCT_GeometryManager *geometryManager, SCT_MaterialManager *materials=nullptr)