R3BROOT
R3B analysis software
Loading...
Searching...
No Matches
R3BNeulandCommon.h File Reference
#include "R3BValueError.h"
#include <R3BMinMaxValue.h>
#include <cassert>
#include <limits>
Include dependency graph for R3BNeulandCommon.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

namespace  R3B
namespace  R3B::Neuland
 Simulation of NeuLAND Bar/Paddle.
namespace  R3B::Neuland::Calibration

Functions

template<typename T>
constexpr auto R3B::Neuland::Sqr (const T val) -> T
constexpr auto R3B::Neuland::GetLightYieldAfterBirk (const int charge, const double length_mm, const double edep_MeV) -> double
constexpr auto R3B::Neuland::GetBarVerticalDisplacement (int module_num) -> double
constexpr auto R3B::Neuland::IsPlaneIDHorizontal (int plane_id) -> bool
constexpr auto R3B::Neuland::IsPlaneIDVertical (int plane_id) -> bool
constexpr auto R3B::Neuland::ModuleID2PlaneID (int moduleID) -> int
constexpr auto R3B::Neuland::ModuleID2PlaneNum (int moduleID) -> int
constexpr auto R3B::Neuland::IsModuleNumHorizontal (int module_num) -> bool
constexpr auto R3B::Neuland::Neuland_PlaneBar2ModuleNum (int planeNum, int barNum) -> int
template<typename T = double>
constexpr auto R3B::Neuland::PlaneID2ZPos (int plane_id) -> T
template<typename T = double>
constexpr auto R3B::Neuland::ModuleNum2ZPos (int module_num) -> T

Variables

constexpr auto R3B::Neuland::SQRT_12 = 3.464101615
constexpr auto R3B::Neuland::NaN = std::numeric_limits<double>::quiet_NaN()
constexpr auto R3B::Neuland::Inf = std::numeric_limits<double>::infinity()
constexpr auto R3B::Neuland::DEFAULT_EFFECTIVE_C = 8.
constexpr auto R3B::Neuland::DEFAULT_CALIBRATION_P_VALUE_CUT = 1e-10
constexpr auto R3B::Neuland::DEFAULT_T_DIFF_RESIDUAL_CUT = 400
constexpr double R3B::Neuland::BirkdP = 1.032
constexpr double R3B::Neuland::BirkC1 = 0.013 / BirkdP
constexpr double R3B::Neuland::BirkC2 = 9.6e-6 / (BirkdP * BirkdP)
constexpr auto R3B::Neuland::CLight = 29.9792458
constexpr auto R3B::Neuland::CLight2 = 898.75517873681758374898
constexpr auto R3B::Neuland::InvCLight = 1. / CLight
constexpr auto R3B::Neuland::MUON_MASS = 0.105
constexpr auto R3B::Neuland::COARSE_TIME_CLOCK_FREQUENCY_MHZ = 200.F
constexpr auto R3B::Neuland::MaxCalTime = 5. * 2048
constexpr auto R3B::Neuland::MaxFTValue = 4097
constexpr auto R3B::Neuland::MAXCTValue = 2048U
constexpr auto R3B::Neuland::BarSize_XY = 5.0
constexpr auto R3B::Neuland::BarUncertainty_XY = BarSize_XY / SQRT_12
constexpr auto R3B::Neuland::BarSize_Z = 5.0
constexpr auto R3B::Neuland::BarUncertainty_Z = BarSize_Z / SQRT_12
constexpr auto R3B::Neuland::BarLength = 250.0
constexpr auto R3B::Neuland::LightGuideLength = 10.0
constexpr auto R3B::Neuland::TotalBarLength
constexpr auto R3B::Neuland::ScintillatorDensity = 1.032
constexpr auto R3B::Neuland::MIPStoppingPowerPerDensity = 1.956
constexpr auto R3B::Neuland::MIPStoppingPower = 1.73
constexpr auto R3B::Neuland::FirstHorizontalPlane = 0
constexpr auto R3B::Neuland::BarsPerPlane = 50
constexpr auto R3B::Neuland::MaxNumberOfPlanes = 26
constexpr auto R3B::Neuland::DefaultNumberOfPlanes = 26
constexpr auto R3B::Neuland::MaxNumberOfBars = MaxNumberOfPlanes * BarsPerPlane
constexpr auto R3B::Neuland::AvgTimeResolution = 0.150
constexpr auto R3B::Neuland::AvgEffectiveCLight = -7.95
constexpr auto R3B::Neuland::AvgGain = 15
constexpr auto R3B::Neuland::AvgThreshold = 1.75
constexpr auto R3B::Neuland::AvgAttenuationLength = 400.
constexpr auto R3B::Neuland::SaturationCoefficient = 1.75e-3
constexpr auto R3B::Neuland::NeulandOnSpillTpatPos = 0U
constexpr auto R3B::Neuland::Calibration::DEFAULT_TSYNC_REFERENCE_BAR_NUM = 25
constexpr auto R3B::Neuland::Calibration::DEFAULT_TSYNC_MAX_TIME_DIFF = 300
constexpr auto R3B::Neuland::DEFAULT_BOX_GENERATOR_THETA = MinMaxValueD{ 0., 3. }
constexpr auto R3B::Neuland::DEFAULT_BOX_GENERATOR_PHI = MinMaxValueD{ 0., 360. }
constexpr auto R3B::Neuland::DEFAULT_GENERATOR_ENERGY = ValueErrorD{ 1., 0.2 }