PhysicalConstants.h
Go to the documentation of this file.
1 #ifndef _utl_PhysicalConstants_h_
2 #define _utl_PhysicalConstants_h_
3 
4 #include <utl/AugerUnits.h>
5 #include <utl/MathConstants.h>
6 
7 
8 namespace utl {
9 
19  constexpr double kgEarth = 9.81 * m/(s*s);
20  constexpr double kEarthRadius = 6371.0*km; // average
21  constexpr double kRadiationLength = 37 * g/cm2;
22 
23  // Grammage at sea level
24  constexpr double kOverburdenSeaLevel = 1033 * g/cm2;
25  /* Density at sea level according to U.S. standard atmosphere (after Keilhauer).
26  Determind with rho(h) = - d/dh X(h) */
27  constexpr double kAirDensitySeaLevel = 1.24036 * kg/m3;
28  // Refraction index sea level
29  constexpr double kRefractiveIndexSeaLevel = 1.000292;
30 
31  // A few gas and liquid properties
32 
33  constexpr double kMolarGasConstant = 8.3145 * joule/(mole*kelvin); // R: NIST
34  constexpr double kAvogadro = 6.022142e23 / mole; // Na: NIST
35  constexpr double kBoltzmann = kMolarGasConstant / kAvogadro; // kB = R/Na
36 
37  constexpr double kDryAirMolarMass = 28.97 * gram/mole; // M. Note: R_spec = R/M
38  constexpr double kN2MolarMass = 28.0134 * gram/mole;
39  constexpr double kO2MolarMass = 31.9989 * gram/mole;
40  constexpr double kArMolarMass = 39.9481 * gram/mole;
41  constexpr double kCO2MolarMass = 44.0096 * gram/mole;
42  constexpr double kH2OMolarMass = 18.0153 * gram/mole;
43 
44  constexpr double kN2AirFraction = 780840 * perMillion; // Dry air vol. fractions;
45  constexpr double kO2AirFraction = 209460 * perMillion; // NASA Earth Fact Sheet.
46  constexpr double kArAirFraction = 9340 * perMillion; // H2O vapor @ surface is
47  constexpr double kCO2AirFraction = 380 * perMillion; // ~10 000 ppm.
48 
49  constexpr double kH2OFreezingPoint = 273.15 * kelvin;
50 
51  // All taken from PDG data tables (2002)
52 
53  // Gaisser-Hillas parameter for the electron mean free path in air
54  constexpr double kLambdaGH = 70 * g/cm2;
55 
56  // Constants
57 
58  constexpr double kSpeedOfLightSI = 299792458;
59  constexpr double kSpeedOfLight = kSpeedOfLightSI * m/s;
61  constexpr double kPlanckSI = 6.62606876e-34;
62  constexpr double kPlanckReducedSI = kPlanckSI / (2*kPi);
63  constexpr double kPlanck = kPlanckSI * joule*s;
64  constexpr double kPlanckReduced = kPlanckReducedSI * joule*s;
65  constexpr double kMuZeroSI = 4*kPi * 1e-7;
66  constexpr double kMuZero = kMuZeroSI*newton/(ampere*ampere);
67 
68  // Particle masses
69 
71 
72  constexpr double kElectronMass = 0.510998902 * MeV;
74  constexpr double kMuonMass = 105.658357 * MeV;
75  constexpr double kMuonMassSI = kMuonMass * kMassConversionSI;
76  constexpr double kTauMass = 1776.99 * MeV;
77  constexpr double kTauMassSI = kTauMass * kMassConversionSI;
78 
79  constexpr double kPiZeroMass = 134.9766 * MeV;
81  constexpr double kRhoZeroMass = 775.49 * MeV;
82  constexpr double kPiChargedMass = 139.57018 * MeV;
84  constexpr double kRhoChargedMass = 775.11 * MeV;
85  constexpr double kEtaMass = 547.30 * MeV;
86  constexpr double kEtaMassSI = kEtaMass * kMassConversionSI;
87  constexpr double kOmegaMesonMass = 782.65 * MeV;
88  constexpr double kKaonZeroMass = 497.672 * MeV; // | K^0 _s - K^0 _l | ~ 10^-12 MeV
90  constexpr double kKaonStarZeroMass = 0.89594 * GeV;
91  constexpr double kKaonChargedMass = 493.677 * MeV;
93  constexpr double kKaonStarChargedMass = 0.89166 * GeV;
94  constexpr double kPhiMass = 1.01946 * GeV;
95  constexpr double kDeltaMass = 1.232 * MeV;
96  constexpr double kNeutronMass = 939.56533 * MeV;
98  constexpr double kProtonMass = 938.271998 * MeV;
100  constexpr double kLambdaMass = 1115.683 * MeV;
102  constexpr double kSigmaPlusMass = 1189.37 * MeV;
104  constexpr double kSigmaZeroMass = 1192.642 * MeV;
106  constexpr double kSigmaMinusMass = 1197.449 * MeV;
108  constexpr double kXiZeroMass = 1314.83 * MeV;
110  constexpr double kXiMinusMass = 1321.31 * MeV;
112  constexpr double kOmegaMinusMass = 1672.45 * MeV;
114  constexpr double kLambdacMass = 2286.46 * MeV;
116 
117  constexpr double kDeuteronMass = 1875.612762 * MeV;
119 
120  // Particle lifetimes
121 
122  constexpr double kMuonLifetime = 2.19703e-6 * s;
123 
124  constexpr double kNeutronLifetime = 885.7 * s;
125 
126  constexpr double kLambdaLifetime = 2.632e-10 * s;
127  constexpr double kSigmaZeroLifetime = 7.4e-20 * s;
128  constexpr double kSigmaPlusLifetime = 0.8018e-10 * s;
129  constexpr double kSigmaMinusLifetime = 1.479e-10 * s;
130  constexpr double kXiZeroLifetime = 2.9e-10 * s;
131  constexpr double kXiMinusLifetime = 1.639e-10 * s;
132  constexpr double kOmegaMinusLifetime = 0.821e-10 * s;
133 
134  constexpr double kPiZeroLifetime = 8.4e-17 * s;
135  constexpr double kPiChargedLifetime = 2.6033e-8 * s;
136  constexpr double kKaonZeroShortLifetime = 0.8934e-10 * s;
137  constexpr double kKaonZeroLongLifetime = 5.17e-8 * s;
138  constexpr double kKaonChargedLifetime = 1.2384e-8 * s;
139 
140  // Derived constexprants
141 
143  constexpr double kAlpha = (eSI*eSI) /
145  constexpr double kElectronRadiusSI = (eSI*eSI) /
146  (4*kPi * kEpsilonZeroSI * kElectronMassSI * kSpeedOfLightSI * kSpeedOfLightSI);
147  constexpr double kThomsonCrossSectionSI =
149 
150  /* This factor converts the integral of the squared signal amplitudes [ns * V^2/m^2]
151  * into an energy fluence in units of [eV/m^2]
152  * a simple use of Offline's unit package is not possible in this case, because it is not
153  * just a change of units but the evaluation and integration of the Poynting vector
154  * (so a multiplication with c and epsilon_0) */
155  // const double fConversionSignalToEnergyFluence(2.65441729 * 1e-3 * 1.e-9 * 6.24150934 * 1e18)
156  constexpr double kConversionRadioSignalToEnergyFluence = 1 / second * kSpeedOfLightSI * kEpsilonZeroSI / eSI;
157 
158 }
159 
160 
161 #endif
constexpr double kMuonMassSI
constexpr double kSigmaMinusMassSI
constexpr double kLambdaLifetime
constexpr double kMuonLifetime
constexpr double second
Definition: AugerUnits.h:145
constexpr double kKaonZeroMassSI
constexpr double kKaonZeroMass
constexpr double kKaonZeroShortLifetime
constexpr double kPiChargedLifetime
constexpr double kProtonMass
constexpr double kPlanckSI
constexpr double kO2MolarMass
constexpr double kPlanck
constexpr double kXiZeroMassSI
constexpr double kDryAirMolarMass
constexpr double kAlpha
constexpr double kElectronMass
constexpr double km
Definition: AugerUnits.h:125
constexpr double kOmegaMinusMassSI
constexpr double kXiZeroLifetime
constexpr double kOmegaMinusLifetime
constexpr double kSpeedOfLightSI
constexpr double kSigmaZeroLifetime
constexpr double kRadiationLength
constexpr double kPiChargedMass
constexpr double kLambdacMassSI
constexpr double kTauMass
constexpr double kEarthRadius
constexpr double kRefractiveIndexSeaLevel
constexpr double kPlanckReduced
constexpr double kOverburdenSeaLevel
constexpr double kEtaMass
constexpr double kThomsonCrossSectionSI
constexpr double kCO2MolarMass
constexpr double kKaonZeroLongLifetime
constexpr double kN2AirFraction
constexpr double kLambdaMassSI
constexpr double kgEarth
constexpr double kDeltaMass
constexpr double kLambdaMass
constexpr double kElectronMassSI
constexpr double MeV
Definition: AugerUnits.h:184
constexpr double kPiZeroMassSI
constexpr double kNeutronLifetime
constexpr double kNeutronMass
constexpr double kDeuteronMass
constexpr double kPhiMass
constexpr double kKaonChargedMassSI
constexpr double kDeuteronMassSI
constexpr double mole
Definition: AugerUnits.h:262
constexpr double s
Definition: AugerUnits.h:163
constexpr double kAvogadro
constexpr double kSigmaMinusLifetime
constexpr double kSigmaZeroMass
constexpr double kPi
Definition: MathConstants.h:24
constexpr double kSigmaPlusLifetime
constexpr double kElectronRadiusSI
constexpr double kPiChargedMassSI
constexpr double m3
Definition: AugerUnits.h:123
constexpr double kKaonChargedLifetime
constexpr double kKaonChargedMass
constexpr double kProtonMassSI
constexpr double kMassConversionSI
constexpr double kXiMinusLifetime
constexpr double kXiMinusMassSI
constexpr double g
Definition: AugerUnits.h:200
constexpr double kN2MolarMass
constexpr double kelvin
Definition: AugerUnits.h:259
constexpr double kH2OMolarMass
constexpr double kRhoChargedMass
constexpr double joule
Definition: AugerUnits.h:181
constexpr double kAirDensitySeaLevel
constexpr double kMuonMass
constexpr double kSpeedOfLight
constexpr double GeV
Definition: AugerUnits.h:187
constexpr double kPiZeroLifetime
constexpr double kMolarGasConstant
constexpr double kLambdaGH
constexpr double kKaonStarChargedMass
constexpr double kMuZero
constexpr double kNeutronMassSI
constexpr double kBoltzmann
constexpr double kO2AirFraction
constexpr double kPiZeroMass
constexpr double kXiZeroMass
constexpr double kEtaMassSI
constexpr double ampere
Definition: AugerUnits.h:221
constexpr double kTauMassSI
constexpr double kConversionRadioSignalToEnergyFluence
constexpr double kArMolarMass
constexpr double kSpeedOfLight2
constexpr double kSigmaPlusMass
constexpr double kCO2AirFraction
constexpr double kRhoZeroMass
constexpr double kH2OFreezingPoint
constexpr double kArAirFraction
constexpr double kLambdacMass
constexpr double eSI
Definition: AugerUnits.h:168
constexpr double m
Definition: AugerUnits.h:121
constexpr double kOmegaMesonMass
constexpr double gram
Definition: AugerUnits.h:195
constexpr double kEpsilonZeroSI
constexpr double perMillion
Definition: AugerUnits.h:286
constexpr double kSigmaMinusMass
constexpr double kOmegaMinusMass
constexpr double kSigmaZeroMassSI
constexpr double kPlanckReducedSI
constexpr double kXiMinusMass
constexpr double kg
Definition: AugerUnits.h:199
constexpr double kKaonStarZeroMass
constexpr double newton
Definition: AugerUnits.h:207
constexpr double cm2
Definition: AugerUnits.h:118
constexpr double kSigmaPlusMassSI
constexpr double kMuZeroSI

, generated on Tue Sep 26 2023.