SHiP Geometry
SHiP experiment geometry implementation using GeoModel.
Loading...
Searching...
No Matches
Namespaces | Enumerations | Functions | Variables
CalorimeterConstants.h File Reference
#include <array>
#include <span>
Include dependency graph for CalorimeterConstants.h:
This graph shows which files directly or indirectly include this file:

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)