|
SHiP Geometry
SHiP experiment geometry implementation using GeoModel.
|
#include <array>#include <span>

Go to the source code of this file.
Namespaces | |
| namespace | SHiPGeometry |
| namespace | SHiPGeometry::Calo |
| Compile-time parameters of the SHiP calorimeter geometry. | |
Enumerations | |
| enum class | SHiPGeometry::Calo::LayerCode { SHiPGeometry::Calo::WidePVT_H , SHiPGeometry::Calo::WidePVT_V , SHiPGeometry::Calo::ThinPS_H , SHiPGeometry::Calo::ThinPS_V , SHiPGeometry::Calo::FibreHPL_Y , SHiPGeometry::Calo::FibreHPL_X , SHiPGeometry::Calo::Absorber , SHiPGeometry::Calo::AirGap } |
| Layer types used in the ECAL/HCAL layer sequences. More... | |
Functions | |
| constexpr double | SHiPGeometry::Calo::layerThickness (LayerCode code, double absorberThickness) |
| Z advance of one layer of the given type (mm). | |
| constexpr double | SHiPGeometry::Calo::sectionZ (std::span< const LayerCode > codes, double absorberThickness) |
| Z extent of one calorimeter section (mm). | |
| constexpr int | SHiPGeometry::Calo::sectionVolumeCount (std::span< const LayerCode > codes) |
| Child volumes one section contributes to the container, per module. | |
Variables | |
| constexpr double | SHiPGeometry::Calo::kPlateXY = 2160.0 |
| constexpr double | SHiPGeometry::Calo::kLeadThickness = 3.0 |
| constexpr double | SHiPGeometry::Calo::kScintThickness = 10.0 |
| constexpr double | SHiPGeometry::Calo::kHplThickness = 10.0 |
| constexpr double | SHiPGeometry::Calo::kFiberDiameter = 1.2 |
| constexpr double | SHiPGeometry::Calo::kFiberCoreDiameter = 1.0 |
| constexpr double | SHiPGeometry::Calo::kIronThickness = 170.0 |
| constexpr double | SHiPGeometry::Calo::kAirGap = 1000.0 |
| Air gap within the ECAL layer sequence (mm). | |
| constexpr double | SHiPGeometry::Calo::kGapEcalHcal = 100.0 |
| Gap between the ECAL and HCAL stacks (mm). | |
| constexpr double | SHiPGeometry::Calo::kWidePVTBarPitch = 60.0 |
| constexpr double | SHiPGeometry::Calo::kThinPSBarPitch = 10.0 |
| constexpr int | SHiPGeometry::Calo::kModuleNX = 2 |
| constexpr int | SHiPGeometry::Calo::kModuleNY = 3 |
| constexpr double | SHiPGeometry::Calo::kModulePitchX = kPlateXY |
| constexpr double | SHiPGeometry::Calo::kModulePitchY = kPlateXY |
| constexpr auto | SHiPGeometry::Calo::kEcalLayers |
| ECAL layer sequence. | |
| constexpr auto | SHiPGeometry::Calo::kHcalLayers |
| HCAL layer sequence (Absorber means iron here rather than lead). | |
| constexpr double | SHiPGeometry::Calo::kContainerHalfX = 3000.0 |
| constexpr double | SHiPGeometry::Calo::kContainerHalfY = 3500.0 |
| constexpr double | SHiPGeometry::Calo::kContainerHalfZ = 1450.0 |
| constexpr double | SHiPGeometry::Calo::kTotalStackZ |
| Total Z extent of one ECAL+gap+HCAL stack (mm). | |
| constexpr int | SHiPGeometry::Calo::kVolsPerModule |
| Child volumes one module contributes to the container. | |
| constexpr int | SHiPGeometry::Calo::kWidePVTBarCount = static_cast<int>(kPlateXY / kWidePVTBarPitch) |
| Bars per layer, from the plate size and the bar pitch. | |
| constexpr int | SHiPGeometry::Calo::kThinPSBarCount = static_cast<int>(kPlateXY / kThinPSBarPitch) |