SHiP Geometry
SHiP experiment geometry implementation using GeoModel.
Loading...
Searching...
No Matches
SBTEnvelope.h
Go to the documentation of this file.
1// SPDX-License-Identifier: LGPL-3.0-or-later
2// Copyright (C) CERN for the benefit of the SHiP Collaboration
3
4#pragma once
5
6#include <vector>
7
8class GeoMaterial;
9class GeoPhysVol;
10
11namespace SHiPGeometry {
12
13struct SBTConfig;
14
50 double z_lo_mm = 0.0;
51 double z_hi_mm = 0.0;
52 double dx_lo_mm = 0.0;
53 double dx_hi_mm = 0.0;
54 double dy_lo_mm = 0.0;
55 double dy_hi_mm = 0.0;
56};
57
65double innerFreeHalfX(const SBTConfig& cfg, double z_mm);
66
74double innerFreeHalfY(const SBTConfig& cfg, double z_mm);
75
83std::vector<double> envelopeKnots(const SBTConfig& cfg);
84
94std::vector<HeliumPiece> heliumPieces(const SBTConfig& cfg);
95
103void buildHelium(GeoPhysVol* container, const GeoMaterial* helium, const SBTConfig& cfg);
104
105} // namespace SHiPGeometry
Definition ConfigPath.h:9
std::vector< double > envelopeKnots(const SBTConfig &cfg)
Z values at which innerFreeHalfX/Y change slope.
Definition SBTEnvelope.cpp:75
double innerFreeHalfY(const SBTConfig &cfg, double z_mm)
|Y| of the innermost SBT material at z_mm (mm).
Definition SBTEnvelope.cpp:53
double innerFreeHalfX(const SBTConfig &cfg, double z_mm)
|X| of the innermost SBT material at z_mm (mm).
Definition SBTEnvelope.cpp:46
std::vector< HeliumPiece > heliumPieces(const SBTConfig &cfg)
The helium slabs filling the SBT interior.
Definition SBTEnvelope.cpp:122
void buildHelium(GeoPhysVol *container, const GeoMaterial *helium, const SBTConfig &cfg)
Place the helium slabs into container.
Definition SBTEnvelope.cpp:164
The innermost free region of the SBT, and the helium that fills it.
Definition SBTEnvelope.h:49
double dy_lo_mm
half-height in Y at z_lo
Definition SBTEnvelope.h:54
double z_lo_mm
Definition SBTEnvelope.h:50
double dy_hi_mm
half-height in Y at z_hi
Definition SBTEnvelope.h:55
double z_hi_mm
Definition SBTEnvelope.h:51
double dx_hi_mm
half-width in X at z_hi
Definition SBTEnvelope.h:53
double dx_lo_mm
half-width in X at z_lo
Definition SBTEnvelope.h:52
Configuration for the Surround Background Tagger (SBT) geometry.
Definition SBTConfig.h:18