Jpp 20.0.0-195-g190c9e876
the software that should make you happy
Loading...
Searching...
No Matches
JPHYSICS Namespace Reference

Auxiliary methods for light properties of deep-sea water. More...

Classes

struct  JAbsorptionLength
 Auxiliary data structure to customize absorption length. More...
 
struct  JAbsorptionLength_t
 Auxiliary data structure to define pointer to global function. More...
 
class  JAbstractLED
 Interface for emission profile from LED. More...
 
class  JAbstractMedium
 Medium interface. More...
 
class  JAbstractPDF
 Probability Density Functions of the time response of a PMT with an implementation for the JDispersionInterface interface. More...
 
class  JAbstractPMT
 PMT interface. More...
 
class  JACoeffInterface
 Interface for calculation of ionization constant. More...
 
class  JACoeffSource
 Implementation for calculation of ionization constant. More...
 
class  JCDFTable
 Multi-dimensional CDF table for arrival time of Cherenkov light. More...
 
class  JCDFTable1D
 Custom class for CDF table in 1 dimension. More...
 
class  JCDFTable2D
 Custom class for CDF table in 2 dimensions. More...
 
struct  JDeltaRays
 Auxiliary data structure for delta-rays. More...
 
class  JDeltaRaysSource
 Implementation for calculation of inverse interaction length and shower energy due to delta-rays from muon. More...
 
class  JDIS
 Deep-inelastic muon-nucleon scattering. More...
 
class  JDispersion
 Implementation of dispersion for water in deep sea. More...
 
class  JDispersionInterface
 Light dispersion inteface. More...
 
class  JDISSource
 Implementation for calculation of inverse interaction length and shower energy due to deep-inelastic muon-nucleon scattering. More...
 
class  JGeane
 Interface for muon energy loss. More...
 
class  JGeane_t
 Function object for the energy loss of the muon. More...
 
class  JGeaneWater
 Function object for energy dependent energy loss of the muon. More...
 
class  JGeant
 Function object for the probability density function of photon emission from EM-shower as a function of the index of refraction and the cosine of the emission angle. More...
 
class  JGeant_t
 Base class for the probability density function of photon emission from EM-shower as a function of the index of refraction and the cosine of the emission angle. More...
 
class  JGeanx
 Probability density function of photon emission from EM-shower as a function of cosine of the emission angle. More...
 
class  JGeanz
 Function object for longitudinal profile of EM-shower. More...
 
struct  JK40Rates
 Auxiliary class for K40 rates. More...
 
class  JLED
 Probability Density Functions of the time response of a PMT. More...
 
class  JLED_C
 Probability Density Functions of the time response of a PMT (C-like interface) More...
 
struct  JMixedK40Rates
 Auxiliary class for mixed-L1/L0 K40 rates. More...
 
struct  JMobley
 Auxiliary data structure for scattering lengths of deep-sea water. More...
 
class  JNPETable
 Custom class for integrated values of the PDF of the arrival time of Cherenkov light. More...
 
class  JPD0Transformer_t
 Transformer for the 1D probability density function (PDF) of the time response of a PMT due to a point source. More...
 
class  JPDF
 Low level interface for the calculation of the Probability Density Functions (PDFs) of the arrival time of Cherenkov light from a muon or an EM-shower on a photo-multiplier tube (PMT). More...
 
class  JPDF_C
 Probability Density Functions of the time response of a PMT with an implementation of the JAbstractPMT and JAbstractMedium interfaces via C-like methods. More...
 
class  JPDFTable
 Multi-dimensional PDF table for arrival time of Cherenkov light. More...
 
class  JPDFTransformer
 Template definition of transformer of the probability density function (PDF) of the time response of a PMT. More...
 
class  JPDFTransformer< 2, JArgument_t >
 Template specialisation of transformer of the 2D probability density function (PDF) of the time response of a PMT due to a bright point. More...
 
class  JPDFTransformer< 3, JArgument_t >
 Template specialisation of transformer of the 3D probability density function (PDF) of the time response of a PMT due to a muon. More...
 
class  JPDFTransformer< 4, JArgument_t >
 Template specialisation of transformer of the 4D probability density function (PDF) of the time response of a PMT due to an EM shower. More...
 
class  JPDFTransformer< 5, JArgument_t >
 Template specialisation of transformer of the 5D probability density function (PDF) of the time response of a PMT due to an EM shower. More...
 
class  JPDFTransformer_t
 Transformer for the 1D probability density function (PDF) of the time response of a PMT to a muon. More...
 
class  JPDGTransformer_t
 Transformer for the 2D probability density function (PDF) of the time response of a PMT due to an EM shower. More...
 
class  JRadiation
 Auxiliary class for the calculation of the muon radiative cross sections. More...
 
class  JRadiationFunction
 Fast implementation of class JRadiation. More...
 
class  JRadiationInterface
 Interface for calculation of inverse interaction length and shower energy. More...
 
class  JRadiationSource
 Implementation for calculation of inverse interaction length and shower energy. More...
 
struct  JScatteringLength
 Auxiliary data structure to customize scattering length. More...
 
struct  JScatteringLength_t
 Auxiliary data structure to define pointer to global function. More...
 
struct  JScatteringProbability
 Auxiliary data structure to customize scattering probability. More...
 
struct  JScatteringProbability_t
 Auxiliary data structure to define pointer to global function. More...
 
struct  JSeaWater
 Sea water composition. More...
 
struct  JSter
 Struct for the Sternheimer coefficients. More...
 
struct  JSterCoefficient
 Auxiliary data structure Ster coefficients as a function of proton number. More...
 

Typedefs

typedef JTOOLS::JRange< double > JEnergyRange
 Type definition for energy range (unit [GeV]).
 
typedef JTOOLS::JGridPolint1Function1D_t JGeantFunction1D_t
 
typedef double JRateL0_t
 Type definition of singles rate [Hz].
 
typedef std::vector< double > JRateL1_t
 Type definition of count rate as a function of multiplicty [Hz] The multiples rate start counting at two-fold coincidences.
 
typedef size_t multiplicity_type
 Type definition of multiplicity.
 
typedef JTOOLS::JElement2D< double, double > JElement2D_t
 
typedef JTOOLS::JElement3D< double, double > JElement3D_t
 
typedef JTOOLS::JRange< double > JTimeRange
 Type definition for time range (unit [ns]).
 

Enumerations

enum  JPDFType_t {
  DIRECT_LIGHT_FROM_MUON = 1 , SCATTERED_LIGHT_FROM_MUON = 2 , DIRECT_LIGHT_FROM_EMSHOWERS = 3 , SCATTERED_LIGHT_FROM_EMSHOWERS = 4 ,
  DIRECT_LIGHT_FROM_DELTARAYS = 5 , SCATTERED_LIGHT_FROM_DELTARAYS = 6 , SCATTERED_LIGHT_FROM_MUON_5D = 12 , DIRECT_LIGHT_FROM_EMSHOWER = 13 ,
  SCATTERED_LIGHT_FROM_EMSHOWER = 14 , DIRECT_LIGHT_FROM_BRIGHT_POINT = 23 , SCATTERED_LIGHT_FROM_BRIGHT_POINT = 24 , LIGHT_FROM_ELONGATED_EMSHOWER = 113 ,
  LIGHT_FROM_MUON = 1001 , LIGHT_FROM_EMSHOWERS = 1003 , LIGHT_FROM_DELTARAYS = 1005 , LIGHT_FROM_EMSHOWER = 1013 ,
  LIGHT_FROM_BRIGTH_POINT = 1023
}
 PDF types. More...
 

Functions

const double getSpeedOfLight ()
 Get speed of light.
 
const double getInverseSpeedOfLight ()
 Get inverse speed of light.
 
double getIndexOfRefraction ()
 Get average index of refraction of water corresponding to group velocity.
 
double getIndexOfRefractionPhase ()
 Get average index of refraction of water corresponding to phase velocity.
 
double getTanThetaC ()
 Get average tangent of Cherenkov angle of water corresponding to group velocity.
 
double getCosThetaC ()
 Get average cosine of Cherenkov angle of water corresponding to group velocity.
 
double getSinThetaC ()
 Get average sine of Cherenkov angle of water corresponding to group velocity.
 
double getKappaC ()
 Get average R-dependence of arrival time of Cherenkov light (a.k.a.
 
double geanc ()
 Equivalent muon track length per unit shower energy.
 
static const JGeane_t gRock (2.67e-1 *0.9 *DENSITY_ROCK, 3.40e-4 *1.2 *DENSITY_ROCK)
 Function object for energy loss of muon in rock.
 
double getMinimalWavelength ()
 Get minimal wavelength for PDF evaluations.
 
double getMaximalWavelength ()
 Get maximal wavelength for PDF evaluations.
 
double cherenkov (const double lambda, const double n)
 Number of Cherenkov photons per unit track length and per unit wavelength.
 
const double getRayleighCrossSection (const double n, const double lambda)
 Rayleigh cross section.
 
const double getRayleighScatteringLength (const double n, const double lambda)
 Rayleigh scattering length.
 
std::string getLabel (const JPDFType_t pdf)
 Get PDF label.
 
int getPDFType (const std::string &file_name)
 Get PDF type.
 
std::string getFilename (const std::string &file_name, const JPDFType_t pdf)
 Get PDF file name.
 
bool is_muon (const int pdf)
 Test if given PDF type corresponds to Cherenkov light from muon.
 
bool is_bremsstrahlung (const int pdf)
 Test if given PDF type corresponds to Cherenkov light from Bremsstrahlung.
 
bool is_deltarays (const int pdf)
 Test if given PDF type corresponds to Cherenkov light from delta-rays.
 
bool is_scattered (const int pdf)
 Test if given PDF type corresponds to scattered light.
 
double getThetaMCS (const double E, const double x, const double X0, const double M, const double Q)
 Get multiple Coulomb scattering angle.
 
double getThetaMCS (const double E, const double x)
 Get multiple Coulomb scattering angle for muon.
 
double henyey_greenstein (const double g, const double x)
 Auxiliary method to describe light scattering in water (Henyey-Greenstein).
 
double henyey_greenstein (const double x)
 Auxiliary method to describe light scattering in water (Heneyey-Greenstein).
 
double rayleigh (const double a, const double x)
 Auxiliary method to describe light scattering in water (Rayleigh).
 
double rayleigh (const double x)
 Auxiliary method to describe light scattering in water (Rayleigh).
 
double f4 (const double x)
 Model specific function to describe light scattering in water (f4).
 
double p00075 (const double x)
 Model specific function to describe light scattering in water (p00075).
 
double petzhold (const double x)
 Model specific function to describe light scattering in water (Petzhold).
 
double getAbsorptionLengthSmithAndBaker (const double lambda)
 Absorption length of deep-sea water according Smith & Baker.
 
double getAbsorptionLengthOfPureWater (const double lambda)
 Absorption length of pure water.
 
double getKineticEnergy (const double E, const double m)
 Get kinetic energy of particle with given energy and mass.
 
double getBeta (const double gamma)
 Get relative velocity given Lorentz boost.
 

Variables

static const double C = 0.299792458
 Physics constants.
 
static const double C_INVERSE = 1.0/C
 Inverse speed of light in vacuum [ns/m].
 
static const double AVOGADRO = 6.0221415e23
 Avogadro's number.
 
static const double NUCLEON_MOLAR_MASS = 1.0
 nucleon molar mass [g/mol]
 
static const double H = 4.13566733e-15
 Planck constant [eV s].
 
static const double HBAR = H/(2*PI)
 Planck constant [eV s].
 
static const double HBARC = HBAR*C*1.0e9
 Planck constant [eV m].
 
static const double ALPHA_ELECTRO_MAGNETIC = 1.0/137.036
 Electro-Magnetic coupling constant.
 
static const double THETA_MCS = 13.6e-3
 Multiple Coulomb scattering constant [GeV].
 
static const double R_EARTH_KM = 6371
 Geophysics constants.
 
static const double DENSITY_EARTH = 5.51
 Average density of the Earth [gr/cm³].
 
static const double DENSITY_SEA_WATER = 1.038
 Fixed environment values.
 
static const double DENSITY_ROCK = 2.65
 Density of rock [g/cm^3].
 
static const double SALINITY_SEA_WATER = 0.035
 Salinity of sea water.
 
static const double INDEX_OF_REFRACTION_WATER = 1.3800851282
 Average index of refraction of water corresponding to the group velocity.
 
static const double X0_WATER_M = 0.36
 Radiation length pure water [m].
 
static const double TAN_THETA_C_WATER = sqrt((INDEX_OF_REFRACTION_WATER - 1.0) * (INDEX_OF_REFRACTION_WATER + 1.0))
 Derived quantities of optical medium.
 
static const double COS_THETA_C_WATER = 1.0 / INDEX_OF_REFRACTION_WATER
 Average cosine corresponding to the group velocity.
 
static const double SIN_THETA_C_WATER = TAN_THETA_C_WATER * COS_THETA_C_WATER
 Average sine corresponding to the group velocity.
 
static const double KAPPA_WATER = 0.96
 Average R-dependence of arrival time of Cherenkov light.
 
static const double MASS_PHOTON = 0.0
 Particle masses.
 
static const double MASS_ELECTRON_NEUTRINO = 0.0
 electron neutrino mass [GeV]
 
static const double MASS_MUON_NEUTRINO = 0.0
 muon neutrino mass [GeV]
 
static const double MASS_TAU_NEUTRINO = 0.0
 tau neutrino mass [GeV]
 
static const double MASS_ELECTRON = 0.510998946e-3
 electron mass [GeV]
 
static const double MASS_MUON = 0.1056583745
 muon mass [GeV]
 
static const double MASS_TAU = 1.77682
 tau mass [GeV]
 
static const double MASS_NEUTRAL_PION = 0.1349766
 pi_0 mass [GeV]
 
static const double MASS_CHARGED_PION = 0.13957018
 pi^+/- mass [GeV]
 
static const double MASS_NEUTRAL_KAON = 0.497614
 K_0 mass [GeV].
 
static const double MASS_CHARGED_KAON = 0.493677
 K^+/- mass [GeV].
 
static const double MASS_NEUTRAL_RHO = 0.77526
 rho_0 mass [GeV]
 
static const double MASS_CHARGED_RHO = 0.77511
 rho^+/- mass [GeV]
 
static const double MASS_NEUTRAL_D = 1.86483
 D_0 mass [GeV].
 
static const double MASS_CHARGED_D = 1.86965
 D^+/- mass [GeV].
 
static const double MASS_CHARGED_D_S = 1.96834
 D_s^+/- mass [GeV].
 
static const double MASS_PROTON = 0.9382720813
 proton mass [GeV]
 
static const double MASS_NEUTRON = 0.9395654133
 neutron mass [GeV]
 
static const double MASS_DELTA_1232 = 1.232
 Delta (1232) mass [GeV].
 
static const double MASS_LAMBDA = 1.115683
 Lambda mass [GeV].
 
static const double MASS_NEUTRAL_SIGMA = 1.192642
 Sigma_0 mass [GeV].
 
static const double MASS_CHARGED_SIGMA = 1.18937
 Sigma^+/- mass [GeV].
 
static const double MASS_NEUTRAL_XI = 1.31486
 Xi_0 mass [GeV].
 
static const double MASS_CHARGED_XI = 1.32171
 Xi^+/- mass [GeV].
 
static const double MASS_CHARGED_OMEGA = 1.67245
 Omega^+/- mass [GeV].
 
static const double MASS_CHARGED_LAMBDA_C = 2.28646
 Lambda_c^+/- mass [GeV].
 
static const double MASS_DOUBLYCHARGED_SIGMA_C = 2.45397
 Sigma_c^++/– mass [GeV]

 
static const double MASS_CHARGED_SIGMA_C = 2.4529
 Sigma_c^+/- mass [GeV].
 
static const double MASS_NEUTRAL_SIGMA_C = 2.45375
 Sigma_c_0 mass [GeV].
 
static const double MASS_CHARGED_XI_C = 2.46793
 Xi_c^+/- mass [GeV].
 
static const double MASS_NEUTRAL_XI_C = 2.47091
 Xi_c_0 mass [GeV].
 
static const double MASS_NEUTRAL_OMEGA_C = 2.6952
 Omega_c_0 mass [GeV].
 
static const double MASS_NEUTRAL_B = 5.27958
 B_0 mass [GeV].
 
static const double MASS_CHARGED_B = 5.27926
 B^+/- mass [GeV].
 
static const double MASS_NEUTRAL_B_S = 5.36677
 B_s^0 mass [GeV].
 
static const double MASS_NEUTRAL_LAMBDA_B = 5.6194
 Lambda_b^0 mass [GeV].
 
static const double MASS_NEUTRAL_XI_B = 5.7878
 Xi_b^0 mass [GeV].
 
static const double MASS_CHARGED_XI_B = 5.7911
 Xi_b^+/- mass [GeV].
 
static const double MASS_CHARGED_OMEGA_B = 6.071
 Omega_b^+/- mass [GeV].
 
static const double MASS_CHARGED_B_C = 6.2756
 B_c^+/- mass [GeV].
 
static const JGeaneWater gWater
 Function object for energy loss of muon in sea water.
 
static const JGeant geant (geanx, 0.0001)
 Function object for the number of photons from EM-shower as a function of emission angle.
 
static const JGeanx geanx (0.35, -5.40)
 Function object for the number of photons from EM-shower as a function of emission angle.
 
static const JGeanz geanz (1.85, 0.62, 0.54)
 Function object for longitudinal EM-shower profile.
 
static JSterCoefficient getSterCoefficient
 Function object for Ster coefficients.
 
static const JCCnu cc_nu
 Function object for charged current neutrino cross section [cm^2] as a function of neutrino energy [GeV].
 
static const JNCnu nc_nu
 Function object for neutral current neutrino cross section [cm^2] as a function of neutrino energy [GeV].
 
static const JCCnubar cc_nubar
 Function object for charged current anti-neutrino cross section [cm^2] as a function of neutrino energy [GeV].
 
static const JNCnubar nc_nubar
 Function object for neutral current anti-neutrino cross section [cm^2] as a function of neutrino energy [GeV].
 
static double MODULE_RADIUS_M = 0.216
 Radius of optical module [m].
 

Detailed Description

Auxiliary methods for light properties of deep-sea water.

Author
mdejong
vcarretero

Typedef Documentation

◆ JEnergyRange

Type definition for energy range (unit [GeV]).

Definition at line 19 of file JEnergyRange.hh.

◆ JGeantFunction1D_t

◆ JRateL0_t

typedef double JPHYSICS::JRateL0_t

Type definition of singles rate [Hz].

Definition at line 21 of file JK40Rates.hh.

◆ JRateL1_t

Type definition of count rate as a function of multiplicty [Hz] The multiples rate start counting at two-fold coincidences.

Definition at line 27 of file JK40Rates.hh.

◆ multiplicity_type

Type definition of multiplicity.

Definition at line 33 of file JK40Rates.hh.

◆ JElement2D_t

typedef JTOOLS::JElement2D<double, double> JPHYSICS::JElement2D_t

Definition at line 27 of file JLED.hh.

◆ JElement3D_t

typedef JTOOLS::JElement3D<double, double> JPHYSICS::JElement3D_t

Definition at line 28 of file JLED.hh.

◆ JTimeRange

Type definition for time range (unit [ns]).

Definition at line 19 of file JPhysics/JTimeRange.hh.

Enumeration Type Documentation

◆ JPDFType_t

PDF types.

Enumerator
DIRECT_LIGHT_FROM_MUON 

direct light from muon

SCATTERED_LIGHT_FROM_MUON 

scattered light from muon

DIRECT_LIGHT_FROM_EMSHOWERS 

direct light from EM showers

SCATTERED_LIGHT_FROM_EMSHOWERS 

scattered light from EM showers

DIRECT_LIGHT_FROM_DELTARAYS 

direct light from delta-rays

SCATTERED_LIGHT_FROM_DELTARAYS 

scattered light from delta-rays

SCATTERED_LIGHT_FROM_MUON_5D 

scattered light from muon

DIRECT_LIGHT_FROM_EMSHOWER 

direct light from EM shower

SCATTERED_LIGHT_FROM_EMSHOWER 

scattered light from EM shower

DIRECT_LIGHT_FROM_BRIGHT_POINT 

direct light from bright point

SCATTERED_LIGHT_FROM_BRIGHT_POINT 

scattered light from bright point

LIGHT_FROM_ELONGATED_EMSHOWER 

light from elongated EM shower

LIGHT_FROM_MUON 

direct and scattered light from muon

LIGHT_FROM_EMSHOWERS 

direct and scattered light from EM showers

LIGHT_FROM_DELTARAYS 

direct and scattered light from delta-rays

LIGHT_FROM_EMSHOWER 

direct and scattered light from EM shower

LIGHT_FROM_BRIGTH_POINT 

direct and scattered light from brigth point

Definition at line 24 of file JPDFTypes.hh.

24 {
25
26 DIRECT_LIGHT_FROM_MUON = 1, //!< direct light from muon
27 SCATTERED_LIGHT_FROM_MUON = 2, //!< scattered light from muon
28
29 DIRECT_LIGHT_FROM_EMSHOWERS = 3, //!< direct light from EM showers
30 SCATTERED_LIGHT_FROM_EMSHOWERS = 4, //!< scattered light from EM showers
31
32 DIRECT_LIGHT_FROM_DELTARAYS = 5, //!< direct light from delta-rays
33 SCATTERED_LIGHT_FROM_DELTARAYS = 6, //!< scattered light from delta-rays
34
35 SCATTERED_LIGHT_FROM_MUON_5D = 12, //!< scattered light from muon
36
37 DIRECT_LIGHT_FROM_EMSHOWER = 13, //!< direct light from EM shower
38 SCATTERED_LIGHT_FROM_EMSHOWER = 14, //!< scattered light from EM shower
39
40 //DIRECT_LIGHT_FROM_SHOWER = 15, //!< direct + scattered light from HADRONIC shower
41
42 DIRECT_LIGHT_FROM_BRIGHT_POINT = 23, //!< direct light from bright point
43 SCATTERED_LIGHT_FROM_BRIGHT_POINT = 24, //!< scattered light from bright point
44
45 LIGHT_FROM_ELONGATED_EMSHOWER = 113, //!< light from elongated EM shower
46
47 LIGHT_FROM_MUON = 1001, //!< direct and scattered light from muon
48 LIGHT_FROM_EMSHOWERS = 1003, //!< direct and scattered light from EM showers
49 LIGHT_FROM_DELTARAYS = 1005, //!< direct and scattered light from delta-rays
50 LIGHT_FROM_EMSHOWER = 1013, //!< direct and scattered light from EM shower
51 LIGHT_FROM_BRIGTH_POINT = 1023 //!< direct and scattered light from brigth point
52 };
@ LIGHT_FROM_EMSHOWERS
direct and scattered light from EM showers
Definition JPDFTypes.hh:48
@ LIGHT_FROM_ELONGATED_EMSHOWER
light from elongated EM shower
Definition JPDFTypes.hh:45
@ LIGHT_FROM_EMSHOWER
direct and scattered light from EM shower
Definition JPDFTypes.hh:50
@ LIGHT_FROM_DELTARAYS
direct and scattered light from delta-rays
Definition JPDFTypes.hh:49
@ SCATTERED_LIGHT_FROM_MUON_5D
scattered light from muon
Definition JPDFTypes.hh:35
@ LIGHT_FROM_BRIGTH_POINT
direct and scattered light from brigth point
Definition JPDFTypes.hh:51
@ LIGHT_FROM_MUON
direct and scattered light from muon
Definition JPDFTypes.hh:47

Function Documentation

◆ getSpeedOfLight()

const double JPHYSICS::getSpeedOfLight ( )
inline

Get speed of light.

Returns
speed of light [m/ns]

Definition at line 112 of file JPhysics/JConstants.hh.

113 {
114 return C;
115 }

◆ getInverseSpeedOfLight()

const double JPHYSICS::getInverseSpeedOfLight ( )
inline

Get inverse speed of light.

Returns
inverse speed of light [ns/m]

Definition at line 123 of file JPhysics/JConstants.hh.

124 {
125 return C_INVERSE;
126 }
static const double C_INVERSE
Inverse speed of light in vacuum [ns/m].

◆ getIndexOfRefraction()

double JPHYSICS::getIndexOfRefraction ( )
inline

Get average index of refraction of water corresponding to group velocity.

Returns
index of refraction

Definition at line 134 of file JPhysics/JConstants.hh.

135 {
137 }
static const double INDEX_OF_REFRACTION_WATER
Average index of refraction of water corresponding to the group velocity.

◆ getIndexOfRefractionPhase()

double JPHYSICS::getIndexOfRefractionPhase ( )
inline

Get average index of refraction of water corresponding to phase velocity.

Returns
index of refraction

Definition at line 145 of file JPhysics/JConstants.hh.

146 {
147 return 1.35;
148 }

◆ getTanThetaC()

double JPHYSICS::getTanThetaC ( )
inline

Get average tangent of Cherenkov angle of water corresponding to group velocity.

Returns
tan(theta_C)

Definition at line 156 of file JPhysics/JConstants.hh.

157 {
158 return TAN_THETA_C_WATER;
159 }
static const double TAN_THETA_C_WATER
Derived quantities of optical medium.

◆ getCosThetaC()

double JPHYSICS::getCosThetaC ( )
inline

Get average cosine of Cherenkov angle of water corresponding to group velocity.

Returns
cos(theta_C)

Definition at line 167 of file JPhysics/JConstants.hh.

168 {
169 return COS_THETA_C_WATER;
170 }
static const double COS_THETA_C_WATER
Average cosine corresponding to the group velocity.

◆ getSinThetaC()

double JPHYSICS::getSinThetaC ( )
inline

Get average sine of Cherenkov angle of water corresponding to group velocity.

Returns
sin(theta_C)

Definition at line 178 of file JPhysics/JConstants.hh.

179 {
180 return SIN_THETA_C_WATER;
181 }
static const double SIN_THETA_C_WATER
Average sine corresponding to the group velocity.

◆ getKappaC()

double JPHYSICS::getKappaC ( )
inline

Get average R-dependence of arrival time of Cherenkov light (a.k.a.

kappa).

Returns
kappa

Definition at line 189 of file JPhysics/JConstants.hh.

190 {
191 return KAPPA_WATER;
192 }
static const double KAPPA_WATER
Average R-dependence of arrival time of Cherenkov light.

◆ geanc()

double JPHYSICS::geanc ( )
inline

Equivalent muon track length per unit shower energy.

See ANTARES internal note ANTARES-SOFT-2002-015, J. Brunner.

Returns
equivalent muon track length [m/Gev]

Definition at line 28 of file JGeane.hh.

29 {
30 return 4.7319; // dx/dE [m/GeV]
31 }

◆ gRock()

static const JGeane_t JPHYSICS::gRock ( 2.67e-1 *0.9 * DENSITY_ROCK,
3.40e-4 *1.2 * DENSITY_ROCK )
static

Function object for energy loss of muon in rock.

◆ getMinimalWavelength()

double JPHYSICS::getMinimalWavelength ( )
inline

Get minimal wavelength for PDF evaluations.

Returns
wavelength of light [nm]

Definition at line 27 of file JPDFToolkit.hh.

28 {
29 return 300.0;
30 }

◆ getMaximalWavelength()

double JPHYSICS::getMaximalWavelength ( )
inline

Get maximal wavelength for PDF evaluations.

Returns
wavelength of light [nm]

Definition at line 38 of file JPDFToolkit.hh.

39 {
40 return 700.0;
41 }

◆ cherenkov()

double JPHYSICS::cherenkov ( const double lambda,
const double n )
inline

Number of Cherenkov photons per unit track length and per unit wavelength.

Parameters
lambdawavelength of light [nm]
nindex of refraction
Returns
number of photons per unit track length and per unit wavelength [m^-1 nm^-1]

Definition at line 51 of file JPDFToolkit.hh.

53 {
54 const double x = n*lambda;
55
56 return 1.0e9 * 2 * PI * ALPHA_ELECTRO_MAGNETIC * (n*n - 1.0) / (x*x);
57 }

◆ getRayleighCrossSection()

const double JPHYSICS::getRayleighCrossSection ( const double n,
const double lambda )
inline

Rayleigh cross section.

Parameters
nindex of refraction
lambdawavelength of light [nm]
Returns
cross section [cm^2]

Definition at line 67 of file JPDFToolkit.hh.

69 {
70 static const double d = 0.36; // size of H2O molecule [nm]
71 static const double U = PI*PI*PI*PI*PI*2.0/3.0;
72 static const double V = d*d*d*d*d*d;
73
74 const double W = (n*n - 1.0) / (n*n + 2.0);
75 const double sigma = 1.0e-14 * U*V*W*W / (lambda*lambda*lambda*lambda); // [cm^2]
76
77 return sigma;
78 }

◆ getRayleighScatteringLength()

const double JPHYSICS::getRayleighScatteringLength ( const double n,
const double lambda )
inline

Rayleigh scattering length.

Parameters
nindex of refraction
lambdawavelength of light [nm]
Returns
scattering length [m]

Definition at line 88 of file JPDFToolkit.hh.

90 {
91 static const double amu = 18.01528; // H20 mass in Atomic mass units
92
93 const double sigma = getRayleighCrossSection(n, lambda);
94 const double ls = 1.0e-2 / (DENSITY_SEA_WATER * AVOGADRO * sigma / amu); // [m]
95
96 return ls;
97 }
const double getRayleighCrossSection(const double n, const double lambda)
Rayleigh cross section.

◆ getLabel()

std::string JPHYSICS::getLabel ( const JPDFType_t pdf)
inline

Get PDF label.

Parameters
pdfPDF type
Returns
PDF label

Definition at line 61 of file JPDFTypes.hh.

62 {
63 std::ostringstream os;
64
65 os << pdf;
66
67 return os.str();
68 }

◆ getPDFType()

int JPHYSICS::getPDFType ( const std::string & file_name)
inline

Get PDF type.

Parameters
file_namefile name
Returns
PDF type (-1 in case of error)

Definition at line 77 of file JPDFTypes.hh.

78 {
79 using namespace std;
80
81 static const char* digits = "0123456789";
82
83 int type = -1;
84
85 string buffer = JEEP::getFilename(file_name);
86
87 string::size_type pos = buffer.find_first_of(digits);
88
89 if (pos != string::npos) {
90
91 string::size_type len = buffer.substr(pos).find_first_not_of(digits);
92
93 istringstream(buffer.substr(pos, len)) >> type;
94 }
95
96 return type;
97 }
std::string getFilename(const std::string &file_name)
Get file name part, i.e. part after last JEEP::PATHNAME_SEPARATOR if any.

◆ getFilename()

std::string JPHYSICS::getFilename ( const std::string & file_name,
const JPDFType_t pdf )
inline

Get PDF file name.

The input file name should contain the wild card character JEEP::FILENAME_WILDCARD which will be replaced by the label corresponding to the given PDF type.

Parameters
file_nameinput file name
pdfPDF type
Returns
output file name

Definition at line 110 of file JPDFTypes.hh.

112 {
113 return JEEP::setWildCard(file_name, getLabel(pdf));
114 }
std::string setWildCard(const std::string &file_name, const std::string &value)
Get file name by setting wild card to given value.

◆ is_muon()

bool JPHYSICS::is_muon ( const int pdf)
inline

Test if given PDF type corresponds to Cherenkov light from muon.

Parameters
pdfPDF type
Returns
true if PDF corresponds to muon; else false

Definition at line 123 of file JPDFTypes.hh.

124 {
125 return (pdf == DIRECT_LIGHT_FROM_MUON ||
126 pdf == SCATTERED_LIGHT_FROM_MUON ||
127 pdf == LIGHT_FROM_MUON);
128 }

◆ is_bremsstrahlung()

bool JPHYSICS::is_bremsstrahlung ( const int pdf)
inline

Test if given PDF type corresponds to Cherenkov light from Bremsstrahlung.

Parameters
pdfPDF type
Returns
true if PDF corresponds to Bremsstrahlung; else false

Definition at line 137 of file JPDFTypes.hh.

138 {
139 return (pdf == DIRECT_LIGHT_FROM_EMSHOWERS ||
140 pdf == SCATTERED_LIGHT_FROM_EMSHOWERS ||
141 pdf == LIGHT_FROM_EMSHOWERS);
142 }

◆ is_deltarays()

bool JPHYSICS::is_deltarays ( const int pdf)
inline

Test if given PDF type corresponds to Cherenkov light from delta-rays.

Parameters
pdfPDF type
Returns
true if PDF corresponds to delta-rays; else false

Definition at line 151 of file JPDFTypes.hh.

152 {
153 return (pdf == DIRECT_LIGHT_FROM_DELTARAYS ||
154 pdf == SCATTERED_LIGHT_FROM_DELTARAYS ||
155 pdf == LIGHT_FROM_DELTARAYS);
156 }

◆ is_scattered()

bool JPHYSICS::is_scattered ( const int pdf)
inline

Test if given PDF type corresponds to scattered light.

Parameters
pdfPDF type
Returns
true if PDF corresponds to scattered light; else false

Definition at line 165 of file JPDFTypes.hh.

166 {
167 return (pdf == SCATTERED_LIGHT_FROM_MUON ||
168 pdf == SCATTERED_LIGHT_FROM_EMSHOWERS ||
169 pdf == SCATTERED_LIGHT_FROM_DELTARAYS ||
170 pdf == SCATTERED_LIGHT_FROM_MUON_5D ||
171 pdf == SCATTERED_LIGHT_FROM_EMSHOWER);
172 }

◆ getThetaMCS() [1/2]

double JPHYSICS::getThetaMCS ( const double E,
const double x,
const double X0,
const double M,
const double Q )
inline

Get multiple Coulomb scattering angle.

The formula is taken from reference: Particle Data Book, formula 27.14.

Parameters
EEnergy [GeV]
xdistance [m]
X0radiation length [m]
Mmass [GeV]
Qcharge [unit]
Returns
angle [rad]

Definition at line 40 of file JPhysicsSupportkit.hh.

45 {
46 if (E > M) {
47
48 const double p = sqrt((E + M) * (E - M));
49 const double beta = p / E;
50
51 return THETA_MCS * Q * sqrt(x/X0) * (1.0 + 0.038*log(x/X0)) / (beta*p);
52 }
53
54 return 0.0;
55 }

◆ getThetaMCS() [2/2]

double JPHYSICS::getThetaMCS ( const double E,
const double x )
inline

Get multiple Coulomb scattering angle for muon.

Parameters
EEnergy [GeV]
xdistance [m]
Returns
angle [rad]

Definition at line 65 of file JPhysicsSupportkit.hh.

66 {
67 return getThetaMCS(E, x, X0_WATER_M, MASS_MUON, 1.0);
68 }
double getThetaMCS(const double E, const double x, const double X0, const double M, const double Q)
Get multiple Coulomb scattering angle.

◆ henyey_greenstein() [1/2]

double JPHYSICS::henyey_greenstein ( const double g,
const double x )
inline

Auxiliary method to describe light scattering in water (Henyey-Greenstein).

Parameters
gangular dependence parameter
xcosine scattering angle
Returns
probability

Definition at line 78 of file JPhysicsSupportkit.hh.

81 {
82 const double a0 = (1.0 - g*g) / (4*PI);
83 const double y = 1.0 + g*g - 2.0*g*x;
84
85 return a0 / (y*sqrt(y));
86 }

◆ henyey_greenstein() [2/2]

double JPHYSICS::henyey_greenstein ( const double x)
inline

Auxiliary method to describe light scattering in water (Heneyey-Greenstein).

Parameters
xcosine scattering angle
Returns
probability

Definition at line 95 of file JPhysicsSupportkit.hh.

96 {
97 static const double g = 0.924;
98
99 return henyey_greenstein(g, x);
100 }
double henyey_greenstein(const double g, const double x)
Auxiliary method to describe light scattering in water (Henyey-Greenstein).

◆ rayleigh() [1/2]

double JPHYSICS::rayleigh ( const double a,
const double x )
inline

Auxiliary method to describe light scattering in water (Rayleigh).

Parameters
aangular dependence parameter
xcosine scattering angle
Returns
probability

Definition at line 110 of file JPhysicsSupportkit.hh.

113 {
114 const double a0 = 1.0 / (1.0 + a/3.0) / (4*PI);
115
116 return a0 * (1.0 + a*x*x);
117 }

◆ rayleigh() [2/2]

double JPHYSICS::rayleigh ( const double x)
inline

Auxiliary method to describe light scattering in water (Rayleigh).

Parameters
xcosine scattering angle
Returns
probability

Definition at line 126 of file JPhysicsSupportkit.hh.

127 {
128 return rayleigh(0.835, x);
129 }
double rayleigh(const double a, const double x)
Auxiliary method to describe light scattering in water (Rayleigh).

◆ f4()

double JPHYSICS::f4 ( const double x)
inline

Model specific function to describe light scattering in water (f4).

Parameters
xcosine scattering angle
Returns
probability

Definition at line 138 of file JPhysicsSupportkit.hh.

139 {
140 static const double g1 = 0.77;
141 static const double g2 = 0.00;
142 static const double f = 1.00;
143
144 return f * henyey_greenstein(g1,x) + (1.0 - f) * henyey_greenstein(g2,x);
145 }
Double_t g1(const Double_t x)
Function.
Definition JQuantiles.cc:25

◆ p00075()

double JPHYSICS::p00075 ( const double x)
inline

Model specific function to describe light scattering in water (p00075).

Parameters
xcosine scattering angle
Returns
probability

Definition at line 154 of file JPhysicsSupportkit.hh.

155 {
156 static const double g = 0.924;
157 static const double f = 0.25;
158
159 return f * rayleigh(x) + (1.0 - f) * henyey_greenstein(g,x);
160 }

◆ petzhold()

double JPHYSICS::petzhold ( const double x)
inline

Model specific function to describe light scattering in water (Petzhold).

Values are taken from reference C.D. Mobley "Light and Water", ISBN 0-12-502750-8, pag. 111, Table 3.10 (right column).

Parameters
xcosine scattering angle
Returns
probability

Definition at line 171 of file JPhysicsSupportkit.hh.

172 {
173 using namespace JPP;
174
176
177 if (f1.empty()) {
178 // angle probability
179 // [deg]
180 f1[ 0.100] = 1.767e+03;
181 f1[ 0.126] = 1.296e+03;
182 f1[ 0.158] = 9.502e+02;
183 f1[ 0.200] = 6.991e+02;
184 f1[ 0.251] = 5.140e+02;
185 f1[ 0.316] = 3.764e+02;
186 f1[ 0.398] = 2.763e+02;
187 f1[ 0.501] = 2.188e+02;
188 f1[ 0.631] = 1.444e+02;
189 f1[ 0.794] = 1.022e+02;
190 f1[ 1.000] = 7.161e+01;
191 f1[ 1.259] = 4.958e+01;
192 f1[ 1.585] = 3.395e+01;
193 f1[ 1.995] = 2.281e+01;
194 f1[ 2.512] = 1.516e+01;
195 f1[ 3.162] = 1.002e+01;
196 f1[ 3.981] = 6.580e+00;
197 f1[ 5.012] = 4.295e+00;
198 f1[ 6.310] = 2.807e+00;
199 f1[ 7.943] = 1.819e+00;
200 f1[ 10.000] = 1.153e+00;
201 f1[ 15.000] = 4.893e-01;
202 f1[ 20.000] = 2.444e-01;
203 f1[ 25.000] = 1.472e-01;
204 f1[ 30.000] = 8.609e-02;
205 f1[ 35.000] = 5.931e-02;
206 f1[ 40.000] = 4.210e-02;
207 f1[ 45.000] = 3.067e-02;
208 f1[ 50.000] = 2.275e-02;
209 f1[ 55.000] = 1.699e-02;
210 f1[ 60.000] = 1.313e-02;
211 f1[ 65.000] = 1.046e-02;
212 f1[ 70.000] = 8.488e-03;
213 f1[ 75.000] = 6.976e-03;
214 f1[ 80.000] = 5.842e-03;
215 f1[ 85.000] = 4.953e-03;
216 f1[ 90.000] = 4.292e-03;
217 f1[ 95.000] = 3.782e-03;
218 f1[100.000] = 3.404e-03;
219 f1[105.000] = 3.116e-03;
220 f1[110.000] = 2.912e-03;
221 f1[115.000] = 2.797e-03;
222 f1[120.000] = 2.686e-03;
223 f1[125.000] = 2.571e-03;
224 f1[130.000] = 2.476e-03;
225 f1[135.000] = 2.377e-03;
226 f1[140.000] = 2.329e-03;
227 f1[145.000] = 2.313e-03;
228 f1[150.000] = 2.365e-03;
229 f1[155.000] = 2.506e-03;
230 f1[160.000] = 2.662e-03;
231 f1[165.000] = 2.835e-03;
232 f1[170.000] = 3.031e-03;
233 f1[175.000] = 3.092e-03;
234 f1[180.000] = 3.154e-03;
235
236 f1.mul(1.166); // normalisation
237
238 f1.compile();
239 }
240
241 if (x >= +1.0)
242 return f1. begin()->getY();
243 else if (x <= -1.0)
244 return f1.rbegin()->getY();
245
246 const double a = acos(x) * 180.0 / PI;
247
248 if (a < f1. begin()->getX())
249 return f1. begin()->getY();
250 else if (a > f1.rbegin()->getX())
251 return f1.rbegin()->getY();
252 else
253 return f1(a);
254 }
This name space includes all other name spaces (except KM3NETDAQ, KM3NET and ANTARES).
Type definition of a 1st degree polynomial interpolation with result type double.

◆ getAbsorptionLengthSmithAndBaker()

double JPHYSICS::getAbsorptionLengthSmithAndBaker ( const double lambda)
inline

Absorption length of deep-sea water according Smith & Baker.

Raymond C. Smith and Karen S. Baker, "Optical properties of the clearest natural waters (200800 nm)," Appl. Opt. 20, 177-184 (1981)

Parameters
lambdawavelength of light [nm]
Returns
absorption length [m]

Definition at line 303 of file JPhysicsSupportkit.hh.

304 {
305 static JGridSplineFunction1D_t f1;
306
307 if (f1.empty()) {
308 // wave- absorption
309 // length coefficient
310 // [nm] [1/m]
311 f1[200] = 3.0700;
312 f1[210] = 1.9900;
313 f1[220] = 1.3100;
314 f1[230] = 0.9270;
315 f1[240] = 0.7200;
316 f1[250] = 0.5590;
317 f1[260] = 0.4570;
318 f1[270] = 0.3730;
319 f1[280] = 0.2880;
320 f1[290] = 0.2150;
321 f1[300] = 0.1410;
322 f1[310] = 0.1050;
323 f1[320] = 0.0844;
324 f1[330] = 0.0678;
325 f1[340] = 0.0561;
326 f1[350] = 0.0463;
327 f1[360] = 0.0379;
328 f1[370] = 0.0300;
329 f1[380] = 0.0220;
330 f1[390] = 0.0191;
331 f1[400] = 0.0171;
332 f1[410] = 0.0162;
333 f1[420] = 0.0153;
334 f1[430] = 0.0144;
335 f1[440] = 0.0145;
336 f1[450] = 0.0145;
337 f1[460] = 0.0156;
338 f1[470] = 0.0156;
339 f1[480] = 0.0176;
340 f1[490] = 0.0196;
341 f1[500] = 0.0257;
342 f1[510] = 0.0357;
343 f1[520] = 0.0477;
344 f1[530] = 0.0507;
345 f1[540] = 0.0558;
346 f1[550] = 0.0638;
347 f1[560] = 0.0708;
348 f1[570] = 0.0799;
349 f1[580] = 0.1080;
350 f1[590] = 0.1570;
351 f1[600] = 0.2440;
352 f1[610] = 0.2890;
353 f1[620] = 0.3090;
354 f1[630] = 0.3190;
355 f1[640] = 0.3290;
356 f1[650] = 0.3490;
357 f1[660] = 0.4000;
358 f1[670] = 0.4300;
359 f1[680] = 0.4500;
360 f1[690] = 0.5000;
361 f1[700] = 0.6500;
362 f1[710] = 0.8390;
363 f1[720] = 1.1690;
364 f1[730] = 1.7990;
365 f1[740] = 2.3800;
366 f1[750] = 2.4700;
367 f1[760] = 2.5500;
368 f1[770] = 2.5100;
369 f1[780] = 2.3600;
370 f1[790] = 2.1600;
371 f1[800] = 2.0700;
372
373 f1.compile();
374 }
375
376 if (lambda > f1.getXmin() && lambda < f1.getXmax())
377 return 1.0 / f1(lambda);
378 else
379 return 0.0;
380 }
Type definition of a spline interpolation based on a JGridCollection with result type double.

◆ getAbsorptionLengthOfPureWater()

double JPHYSICS::getAbsorptionLengthOfPureWater ( const double lambda)
inline

Absorption length of pure water.

CITATION: Jonasz M. 2007. Absorption coefficient of water: Data sources (www.tpdsci.com/Tpc/AbsCfOfWaterDat.php). In: Top. Part. Disp. Sci. (www.tpdsci.com).

DATA FROM: Wozniak B., Wozniak S. B., Tyszka K., Ostrowska M., Majchrowski R., Ficek D., Dera J. 2005. Modelling the light absorption properties of particulate matter forming organic particles suspended in seawater. Part 2. Modelling results. Oceanologia 47, 621-662. see also Wozniak B., Dera J. 2007. Light absorption in sea water. Springer, Berlin, 456 pp. (see p. 62)

NOTES: As stated by the data authors, the data are based on measurement results obtained by various authors (interpolated by a linear approximation where applicable): Wavelength Reference

  • 200-335 nm Smith R.C., Baker K.S. 1981. Optical properties of the clearest natural waters (200-800 nm). Appl. Opt. 20, 177-184.
  • 340-370 nm Sogandares F.M., Fry, E.S. 1997. Absorption spectrum (340 -640 nm) of pure water. I. Photothermal measurements Appl. Opt. 36, 8699-8709.
  • 380-700 nm Pope R.M., Fry E.S. 1997. Absorption spectrum (380 -700 nm) of pure water. II. Integrating cavity measurements. Appl. Opt. 36, 8710-8723
Parameters
lambdawavelength of light [nm]
Returns
absorption length [m]

Definition at line 409 of file JPhysicsSupportkit.hh.

410 {
411 static JGridSplineFunction1D_t f1;
412
413 if (f1.empty()) {
414 // wave- absorption
415 // length coefficient
416 // [nm] [1/m]
417 f1[0.200e3] = 3.07;
418 f1[0.205e3] = 2.53;
419 f1[0.210e3] = 1.99;
420 f1[0.215e3] = 1.65;
421 f1[0.220e3] = 1.31;
422 f1[0.225e3] = 1.1185;
423 f1[0.230e3] = 0.927;
424 f1[0.235e3] = 0.8235;
425 f1[0.240e3] = 0.72;
426 f1[0.245e3] = 0.6395;
427 f1[0.250e3] = 0.559;
428 f1[0.255e3] = 0.508;
429 f1[0.260e3] = 0.457;
430 f1[0.265e3] = 0.415;
431 f1[0.270e3] = 0.373;
432 f1[0.275e3] = 0.3305;
433 f1[0.280e3] = 0.288;
434 f1[0.285e3] = 0.2515;
435 f1[0.290e3] = 0.215;
436 f1[0.295e3] = 0.178;
437 f1[0.300e3] = 0.141;
438 f1[0.305e3] = 0.123;
439 f1[0.310e3] = 0.105;
440 f1[0.315e3] = 0.0947;
441 f1[0.320e3] = 0.0844;
442 f1[0.325e3] = 0.0761;
443 f1[0.330e3] = 0.0678;
444 f1[0.335e3] = 0.06195;
445 f1[0.340e3] = 0.0325;
446 f1[0.345e3] = 0.02645;
447 f1[0.350e3] = 0.0204;
448 f1[0.355e3] = 0.018;
449 f1[0.360e3] = 0.0156;
450 f1[0.365e3] = 0.0135;
451 f1[0.370e3] = 0.0114;
452 f1[0.375e3] = 0.011385;
453 f1[0.380e3] = 0.01137;
454 f1[0.385e3] = 0.00941;
455 f1[0.390e3] = 0.00851;
456 f1[0.395e3] = 0.00813;
457 f1[0.400e3] = 0.00663;
458 f1[0.405e3] = 0.0053;
459 f1[0.410e3] = 0.00473;
460 f1[0.415e3] = 0.00444;
461 f1[0.420e3] = 0.00454;
462 f1[0.425e3] = 0.00478;
463 f1[0.430e3] = 0.00495;
464 f1[0.435e3] = 0.0053;
465 f1[0.440e3] = 0.00635;
466 f1[0.445e3] = 0.00751;
467 f1[0.450e3] = 0.00922;
468 f1[0.455e3] = 0.00962;
469 f1[0.460e3] = 0.00979;
470 f1[0.465e3] = 0.01011;
471 f1[0.470e3] = 0.0106;
472 f1[0.475e3] = 0.0114;
473 f1[0.480e3] = 0.0127;
474 f1[0.485e3] = 0.0136;
475 f1[0.490e3] = 0.015;
476 f1[0.495e3] = 0.0173;
477 f1[0.500e3] = 0.0204;
478 f1[0.505e3] = 0.0256;
479 f1[0.510e3] = 0.0325;
480 f1[0.515e3] = 0.0396;
481 f1[0.520e3] = 0.0409;
482 f1[0.525e3] = 0.0417;
483 f1[0.530e3] = 0.0434;
484 f1[0.535e3] = 0.0452;
485 f1[0.540e3] = 0.0474;
486 f1[0.545e3] = 0.0511;
487 f1[0.550e3] = 0.0565;
488 f1[0.555e3] = 0.0596;
489 f1[0.560e3] = 0.0619;
490 f1[0.565e3] = 0.0642;
491 f1[0.570e3] = 0.0695;
492 f1[0.575e3] = 0.0772;
493 f1[0.580e3] = 0.0896;
494 f1[0.585e3] = 0.11;
495 f1[0.590e3] = 0.1351;
496 f1[0.595e3] = 0.1672;
497 f1[0.600e3] = 0.2224;
498 f1[0.605e3] = 0.2577;
499 f1[0.610e3] = 0.2644;
500 f1[0.615e3] = 0.2678;
501 f1[0.620e3] = 0.2755;
502 f1[0.625e3] = 0.2834;
503 f1[0.630e3] = 0.2916;
504 f1[0.635e3] = 0.3012;
505 f1[0.640e3] = 0.3108;
506 f1[0.645e3] = 0.325;
507 f1[0.650e3] = 0.34;
508 f1[0.655e3] = 0.371;
509 f1[0.660e3] = 0.41;
510 f1[0.665e3] = 0.429;
511 f1[0.670e3] = 0.439;
512 f1[0.675e3] = 0.448;
513 f1[0.680e3] = 0.465;
514 f1[0.685e3] = 0.486;
515 f1[0.690e3] = 0.516;
516 f1[0.695e3] = 0.559;
517 f1[0.700e3] = 0.624;
518
519 f1.compile();
520 }
521
522 if (lambda > f1.getXmin() && lambda < f1.getXmax())
523 return 1.0 / f1(lambda);
524 else
525 return 0.0;
526 }

◆ getKineticEnergy()

double JPHYSICS::getKineticEnergy ( const double E,
const double m )
inline

Get kinetic energy of particle with given energy and mass.

Parameters
Eenergy [GeV]
mmass [GeV]
Returns
kinetic energy [GeV]

Definition at line 24 of file JPhysicsToolkit.hh.

25 {
26 if (E > m)
27 return sqrt((E - m) * (E + m));
28 else
29 return 0.0;
30 }

◆ getBeta()

double JPHYSICS::getBeta ( const double gamma)
inline

Get relative velocity given Lorentz boost.

Parameters
gammaLorentz boost
Returns
relative velocity

Definition at line 39 of file JPhysicsToolkit.hh.

40 {
41 if (gamma > 1.0)
42 return sqrt((gamma + 1.0) * (gamma - 1.0)) / gamma;
43 else
44 return 0.0;
45 }

Variable Documentation

◆ C

const double JPHYSICS::C = 0.299792458
static

Physics constants.

Speed of light in vacuum [m/ns]

Definition at line 25 of file JPhysics/JConstants.hh.

◆ C_INVERSE

const double JPHYSICS::C_INVERSE = 1.0/C
static

Inverse speed of light in vacuum [ns/m].

Definition at line 26 of file JPhysics/JConstants.hh.

◆ AVOGADRO

const double JPHYSICS::AVOGADRO = 6.0221415e23
static

Avogadro's number.

Definition at line 27 of file JPhysics/JConstants.hh.

◆ NUCLEON_MOLAR_MASS

const double JPHYSICS::NUCLEON_MOLAR_MASS = 1.0
static

nucleon molar mass [g/mol]

Definition at line 28 of file JPhysics/JConstants.hh.

◆ H

const double JPHYSICS::H = 4.13566733e-15
static

Planck constant [eV s].

Definition at line 29 of file JPhysics/JConstants.hh.

◆ HBAR

const double JPHYSICS::HBAR = H/(2*PI)
static

Planck constant [eV s].

Definition at line 30 of file JPhysics/JConstants.hh.

◆ HBARC

const double JPHYSICS::HBARC = HBAR*C*1.0e9
static

Planck constant [eV m].

Definition at line 31 of file JPhysics/JConstants.hh.

◆ ALPHA_ELECTRO_MAGNETIC

const double JPHYSICS::ALPHA_ELECTRO_MAGNETIC = 1.0/137.036
static

Electro-Magnetic coupling constant.

Definition at line 32 of file JPhysics/JConstants.hh.

◆ THETA_MCS

const double JPHYSICS::THETA_MCS = 13.6e-3
static

Multiple Coulomb scattering constant [GeV].

Definition at line 33 of file JPhysics/JConstants.hh.

◆ R_EARTH_KM

const double JPHYSICS::R_EARTH_KM = 6371
static

Geophysics constants.

Radius of the Earth [m]

Definition at line 38 of file JPhysics/JConstants.hh.

◆ DENSITY_EARTH

const double JPHYSICS::DENSITY_EARTH = 5.51
static

Average density of the Earth [gr/cm³].

Definition at line 39 of file JPhysics/JConstants.hh.

◆ DENSITY_SEA_WATER

const double JPHYSICS::DENSITY_SEA_WATER = 1.038
static

Fixed environment values.

Density of sea water [g/cm^3]

Definition at line 44 of file JPhysics/JConstants.hh.

◆ DENSITY_ROCK

const double JPHYSICS::DENSITY_ROCK = 2.65
static

Density of rock [g/cm^3].

Definition at line 45 of file JPhysics/JConstants.hh.

◆ SALINITY_SEA_WATER

const double JPHYSICS::SALINITY_SEA_WATER = 0.035
static

Salinity of sea water.

Definition at line 46 of file JPhysics/JConstants.hh.

◆ INDEX_OF_REFRACTION_WATER

const double JPHYSICS::INDEX_OF_REFRACTION_WATER = 1.3800851282
static

Average index of refraction of water corresponding to the group velocity.

Definition at line 47 of file JPhysics/JConstants.hh.

◆ X0_WATER_M

const double JPHYSICS::X0_WATER_M = 0.36
static

Radiation length pure water [m].

Definition at line 48 of file JPhysics/JConstants.hh.

◆ TAN_THETA_C_WATER

const double JPHYSICS::TAN_THETA_C_WATER = sqrt((INDEX_OF_REFRACTION_WATER - 1.0) * (INDEX_OF_REFRACTION_WATER + 1.0))
static

Derived quantities of optical medium.

Average tangent corresponding to the group velocity

Definition at line 53 of file JPhysics/JConstants.hh.

◆ COS_THETA_C_WATER

const double JPHYSICS::COS_THETA_C_WATER = 1.0 / INDEX_OF_REFRACTION_WATER
static

Average cosine corresponding to the group velocity.

Definition at line 54 of file JPhysics/JConstants.hh.

◆ SIN_THETA_C_WATER

const double JPHYSICS::SIN_THETA_C_WATER = TAN_THETA_C_WATER * COS_THETA_C_WATER
static

Average sine corresponding to the group velocity.

Definition at line 55 of file JPhysics/JConstants.hh.

◆ KAPPA_WATER

const double JPHYSICS::KAPPA_WATER = 0.96
static

Average R-dependence of arrival time of Cherenkov light.

Definition at line 56 of file JPhysics/JConstants.hh.

◆ MASS_PHOTON

const double JPHYSICS::MASS_PHOTON = 0.0
static

Particle masses.

Note that the neutrino masses are set to zero. photon mass [GeV]

Definition at line 62 of file JPhysics/JConstants.hh.

◆ MASS_ELECTRON_NEUTRINO

const double JPHYSICS::MASS_ELECTRON_NEUTRINO = 0.0
static

electron neutrino mass [GeV]

Definition at line 64 of file JPhysics/JConstants.hh.

◆ MASS_MUON_NEUTRINO

const double JPHYSICS::MASS_MUON_NEUTRINO = 0.0
static

muon neutrino mass [GeV]

Definition at line 65 of file JPhysics/JConstants.hh.

◆ MASS_TAU_NEUTRINO

const double JPHYSICS::MASS_TAU_NEUTRINO = 0.0
static

tau neutrino mass [GeV]

Definition at line 66 of file JPhysics/JConstants.hh.

◆ MASS_ELECTRON

const double JPHYSICS::MASS_ELECTRON = 0.510998946e-3
static

electron mass [GeV]

Definition at line 68 of file JPhysics/JConstants.hh.

◆ MASS_MUON

const double JPHYSICS::MASS_MUON = 0.1056583745
static

muon mass [GeV]

Definition at line 69 of file JPhysics/JConstants.hh.

◆ MASS_TAU

const double JPHYSICS::MASS_TAU = 1.77682
static

tau mass [GeV]

Definition at line 70 of file JPhysics/JConstants.hh.

◆ MASS_NEUTRAL_PION

const double JPHYSICS::MASS_NEUTRAL_PION = 0.1349766
static

pi_0 mass [GeV]

Definition at line 72 of file JPhysics/JConstants.hh.

◆ MASS_CHARGED_PION

const double JPHYSICS::MASS_CHARGED_PION = 0.13957018
static

pi^+/- mass [GeV]

Definition at line 73 of file JPhysics/JConstants.hh.

◆ MASS_NEUTRAL_KAON

const double JPHYSICS::MASS_NEUTRAL_KAON = 0.497614
static

K_0 mass [GeV].

Definition at line 74 of file JPhysics/JConstants.hh.

◆ MASS_CHARGED_KAON

const double JPHYSICS::MASS_CHARGED_KAON = 0.493677
static

K^+/- mass [GeV].

Definition at line 75 of file JPhysics/JConstants.hh.

◆ MASS_NEUTRAL_RHO

const double JPHYSICS::MASS_NEUTRAL_RHO = 0.77526
static

rho_0 mass [GeV]

Definition at line 76 of file JPhysics/JConstants.hh.

◆ MASS_CHARGED_RHO

const double JPHYSICS::MASS_CHARGED_RHO = 0.77511
static

rho^+/- mass [GeV]

Definition at line 77 of file JPhysics/JConstants.hh.

◆ MASS_NEUTRAL_D

const double JPHYSICS::MASS_NEUTRAL_D = 1.86483
static

D_0 mass [GeV].

Definition at line 78 of file JPhysics/JConstants.hh.

◆ MASS_CHARGED_D

const double JPHYSICS::MASS_CHARGED_D = 1.86965
static

D^+/- mass [GeV].

Definition at line 79 of file JPhysics/JConstants.hh.

◆ MASS_CHARGED_D_S

const double JPHYSICS::MASS_CHARGED_D_S = 1.96834
static

D_s^+/- mass [GeV].

Definition at line 80 of file JPhysics/JConstants.hh.

◆ MASS_PROTON

const double JPHYSICS::MASS_PROTON = 0.9382720813
static

proton mass [GeV]

Definition at line 82 of file JPhysics/JConstants.hh.

◆ MASS_NEUTRON

const double JPHYSICS::MASS_NEUTRON = 0.9395654133
static

neutron mass [GeV]

Definition at line 83 of file JPhysics/JConstants.hh.

◆ MASS_DELTA_1232

const double JPHYSICS::MASS_DELTA_1232 = 1.232
static

Delta (1232) mass [GeV].

Definition at line 84 of file JPhysics/JConstants.hh.

◆ MASS_LAMBDA

const double JPHYSICS::MASS_LAMBDA = 1.115683
static

Lambda mass [GeV].

Definition at line 85 of file JPhysics/JConstants.hh.

◆ MASS_NEUTRAL_SIGMA

const double JPHYSICS::MASS_NEUTRAL_SIGMA = 1.192642
static

Sigma_0 mass [GeV].

Definition at line 86 of file JPhysics/JConstants.hh.

◆ MASS_CHARGED_SIGMA

const double JPHYSICS::MASS_CHARGED_SIGMA = 1.18937
static

Sigma^+/- mass [GeV].

Definition at line 87 of file JPhysics/JConstants.hh.

◆ MASS_NEUTRAL_XI

const double JPHYSICS::MASS_NEUTRAL_XI = 1.31486
static

Xi_0 mass [GeV].

Definition at line 88 of file JPhysics/JConstants.hh.

◆ MASS_CHARGED_XI

const double JPHYSICS::MASS_CHARGED_XI = 1.32171
static

Xi^+/- mass [GeV].

Definition at line 89 of file JPhysics/JConstants.hh.

◆ MASS_CHARGED_OMEGA

const double JPHYSICS::MASS_CHARGED_OMEGA = 1.67245
static

Omega^+/- mass [GeV].

Definition at line 90 of file JPhysics/JConstants.hh.

◆ MASS_CHARGED_LAMBDA_C

const double JPHYSICS::MASS_CHARGED_LAMBDA_C = 2.28646
static

Lambda_c^+/- mass [GeV].

Definition at line 91 of file JPhysics/JConstants.hh.

◆ MASS_DOUBLYCHARGED_SIGMA_C

const double JPHYSICS::MASS_DOUBLYCHARGED_SIGMA_C = 2.45397
static

Sigma_c^++/– mass [GeV]

Definition at line 92 of file JPhysics/JConstants.hh.

◆ MASS_CHARGED_SIGMA_C

const double JPHYSICS::MASS_CHARGED_SIGMA_C = 2.4529
static

Sigma_c^+/- mass [GeV].

Definition at line 93 of file JPhysics/JConstants.hh.

◆ MASS_NEUTRAL_SIGMA_C

const double JPHYSICS::MASS_NEUTRAL_SIGMA_C = 2.45375
static

Sigma_c_0 mass [GeV].

Definition at line 94 of file JPhysics/JConstants.hh.

◆ MASS_CHARGED_XI_C

const double JPHYSICS::MASS_CHARGED_XI_C = 2.46793
static

Xi_c^+/- mass [GeV].

Definition at line 95 of file JPhysics/JConstants.hh.

◆ MASS_NEUTRAL_XI_C

const double JPHYSICS::MASS_NEUTRAL_XI_C = 2.47091
static

Xi_c_0 mass [GeV].

Definition at line 96 of file JPhysics/JConstants.hh.

◆ MASS_NEUTRAL_OMEGA_C

const double JPHYSICS::MASS_NEUTRAL_OMEGA_C = 2.6952
static

Omega_c_0 mass [GeV].

Definition at line 97 of file JPhysics/JConstants.hh.

◆ MASS_NEUTRAL_B

const double JPHYSICS::MASS_NEUTRAL_B = 5.27958
static

B_0 mass [GeV].

Definition at line 98 of file JPhysics/JConstants.hh.

◆ MASS_CHARGED_B

const double JPHYSICS::MASS_CHARGED_B = 5.27926
static

B^+/- mass [GeV].

Definition at line 99 of file JPhysics/JConstants.hh.

◆ MASS_NEUTRAL_B_S

const double JPHYSICS::MASS_NEUTRAL_B_S = 5.36677
static

B_s^0 mass [GeV].

Definition at line 100 of file JPhysics/JConstants.hh.

◆ MASS_NEUTRAL_LAMBDA_B

const double JPHYSICS::MASS_NEUTRAL_LAMBDA_B = 5.6194
static

Lambda_b^0 mass [GeV].

Definition at line 101 of file JPhysics/JConstants.hh.

◆ MASS_NEUTRAL_XI_B

const double JPHYSICS::MASS_NEUTRAL_XI_B = 5.7878
static

Xi_b^0 mass [GeV].

Definition at line 102 of file JPhysics/JConstants.hh.

◆ MASS_CHARGED_XI_B

const double JPHYSICS::MASS_CHARGED_XI_B = 5.7911
static

Xi_b^+/- mass [GeV].

Definition at line 103 of file JPhysics/JConstants.hh.

◆ MASS_CHARGED_OMEGA_B

const double JPHYSICS::MASS_CHARGED_OMEGA_B = 6.071
static

Omega_b^+/- mass [GeV].

Definition at line 104 of file JPhysics/JConstants.hh.

◆ MASS_CHARGED_B_C

const double JPHYSICS::MASS_CHARGED_B_C = 6.2756
static

B_c^+/- mass [GeV].

Definition at line 105 of file JPhysics/JConstants.hh.

◆ gWater

const JGeaneWater JPHYSICS::gWater
static

Function object for energy loss of muon in sea water.

Definition at line 381 of file JGeane.hh.

◆ geant

const JGeant JPHYSICS::geant(geanx, 0.0001) ( geanx ,
0. 0001 )
static

Function object for the number of photons from EM-shower as a function of emission angle.

◆ geanx

const JGeanx JPHYSICS::geanx(0.35, -5.40) ( 0. 35,
-5. 40 )
static

Function object for the number of photons from EM-shower as a function of emission angle.

◆ geanz

const JGeanz JPHYSICS::geanz(1.85, 0.62, 0.54) ( 1. 85,
0. 62,
0. 54 )
static

Function object for longitudinal EM-shower profile.

◆ getSterCoefficient

JSterCoefficient JPHYSICS::getSterCoefficient
static

Function object for Ster coefficients.

Definition at line 82 of file JIonization.hh.

◆ cc_nu

const JCCnu JPHYSICS::cc_nu
static

Function object for charged current neutrino cross section [cm^2] as a function of neutrino energy [GeV].

Definition at line 618 of file JNeutrino.hh.

◆ nc_nu

const JNCnu JPHYSICS::nc_nu
static

Function object for neutral current neutrino cross section [cm^2] as a function of neutrino energy [GeV].

Definition at line 620 of file JNeutrino.hh.

◆ cc_nubar

const JCCnubar JPHYSICS::cc_nubar
static

Function object for charged current anti-neutrino cross section [cm^2] as a function of neutrino energy [GeV].

Definition at line 621 of file JNeutrino.hh.

◆ nc_nubar

const JNCnubar JPHYSICS::nc_nubar
static

Function object for neutral current anti-neutrino cross section [cm^2] as a function of neutrino energy [GeV].

Definition at line 622 of file JNeutrino.hh.

◆ MODULE_RADIUS_M

double JPHYSICS::MODULE_RADIUS_M = 0.216
static

Radius of optical module [m].

This parameter is used to implement shadowing of the PMT by the optical module.

Definition at line 41 of file JPDF.hh.