Geant4 Cross Reference |
1 // -*- C++ -*- 2 // ---------------------------------------------------------------------- 3 // HEP coherent Physical Constants 4 // 5 // This file has been provided by Geant4 (simulation toolkit for HEP). 6 // 7 // The basic units are : 8 // millimeter 9 // nanosecond 10 // Mega electron Volt 11 // positon charge 12 // degree Kelvin 13 // amount of substance (mole) 14 // luminous intensity (candela) 15 // radian 16 // steradian 17 // 18 // Below is a non exhaustive list of Physical CONSTANTS, 19 // computed in the Internal HEP System Of Units. 20 // 21 // Most of them are extracted from the Particle Data Book : 22 // Phys. Rev. D volume 50 3-1 (1994) page 1233 23 // 24 // ...with a meaningful (?) name ... 25 // 26 // You can add your own constants. 27 // 28 // Author: M.Maire 29 // 30 // History: 31 // 32 // 23.02.96 Created 33 // 26.03.96 Added constants for standard conditions of temperature 34 // and pressure; also added Gas threshold. 35 // 29.04.08 Use PDG 2006 values 36 // 03.11.08 Use PDG 2008 values 37 // 17.07.20 Use PDG 2019 values 38 // 06.05.21 Added Bohr_magneton and nuclear_magneton constants 39 40 #ifndef HEP_PHYSICAL_CONSTANTS_H 41 #define HEP_PHYSICAL_CONSTANTS_H 42 43 #include "CLHEP/Units/SystemOfUnits.h" 44 45 namespace CLHEP { 46 47 // 48 // 49 // 50 static constexpr double Avogadro = 6.02214076e+23/mole; 51 52 // 53 // c = 299.792458 mm/ns 54 // c^2 = 898.7404 (mm/ns)^2 55 // 56 static constexpr double c_light = 2.99792458e+8 * m/s; 57 static constexpr double c_squared = c_light * c_light; 58 59 // 60 // h = 4.13566e-12 MeV*ns 61 // hbar = 6.58212e-13 MeV*ns 62 // hbarc = 197.32705e-12 MeV*mm 63 // 64 static constexpr double h_Planck = 6.62607015e-34 * joule*s; 65 static constexpr double hbar_Planck = h_Planck/twopi; 66 static constexpr double hbarc = hbar_Planck * c_light; 67 static constexpr double hbarc_squared = hbarc * hbarc; 68 69 // 70 // 71 // 72 static constexpr double electron_charge = - eplus; // see SystemOfUnits.h 73 static constexpr double e_squared = eplus * eplus; 74 75 // 76 // amu_c2 - atomic equivalent mass unit 77 // - AKA, unified atomic mass unit (u) 78 // amu - atomic mass unit 79 // 80 static constexpr double electron_mass_c2 = 0.510998910 * MeV; 81 static constexpr double proton_mass_c2 = 938.272013 * MeV; 82 static constexpr double neutron_mass_c2 = 939.56536 * MeV; 83 static constexpr double amu_c2 = 931.494028 * MeV; 84 static constexpr double amu = amu_c2/c_squared; 85 86 // 87 // permeability of free space mu0 = 2.01334e-16 Mev*(ns*eplus)^2/mm 88 // permittivity of free space epsil0 = 5.52636e+10 eplus^2/(MeV*mm) 89 // 90 static constexpr double mu0 = 4*pi*1.e-7 * henry/m; 91 static constexpr double epsilon0 = 1./(c_squared*mu0); 92 93 // 94 // electromagnetic coupling = 1.43996e-12 MeV*mm/(eplus^2) 95 // 96 static constexpr double elm_coupling = e_squared/(4*pi*epsilon0); 97 static constexpr double fine_structure_const = elm_coupling/hbarc; 98 static constexpr double classic_electr_radius = elm_coupling/electron_mass_c2; 99 static constexpr double electron_Compton_length = hbarc/electron_mass_c2; 100 static constexpr double Bohr_radius = electron_Compton_length/fine_structure_const; 101 102 static constexpr double alpha_rcl2 = fine_structure_const 103 *classic_electr_radius 104 *classic_electr_radius; 105 106 static constexpr double twopi_mc2_rcl2 = twopi*electron_mass_c2 107 *classic_electr_radius 108 *classic_electr_radius; 109 110 static constexpr double Bohr_magneton = (eplus*hbarc*c_light)/(2*electron_mass_c2); 111 static constexpr double nuclear_magneton = (eplus*hbarc*c_light)/(2*proton_mass_c2); 112 113 // 114 // 115 // 116 static constexpr double k_Boltzmann = 8.617333e-11 * MeV/kelvin; 117 118 // 119 // 120 // 121 static constexpr double STP_Temperature = 273.15*kelvin; 122 static constexpr double STP_Pressure = 1.*atmosphere; 123 static constexpr double kGasThreshold = 10.*mg/cm3; 124 125 // 126 // 127 // 128 static constexpr double universe_mean_density = 1.e-25*g/cm3; 129 130 } // namespace CLHEP 131 132 #endif /* HEP_PHYSICAL_CONSTANTS_H */ 133 134 135 136 137 138