1
2 package org.lcsim.units.clhep;
3
4 import static org.lcsim.units.clhep.SystemOfUnits.MeV;
5 import static org.lcsim.units.clhep.SystemOfUnits.atmosphere;
6 import static org.lcsim.units.clhep.SystemOfUnits.cm3;
7 import static org.lcsim.units.clhep.SystemOfUnits.eplus;
8 import static org.lcsim.units.clhep.SystemOfUnits.henry;
9 import static org.lcsim.units.clhep.SystemOfUnits.joule;
10 import static org.lcsim.units.clhep.SystemOfUnits.kelvin;
11 import static org.lcsim.units.clhep.SystemOfUnits.m;
12 import static org.lcsim.units.clhep.SystemOfUnits.mg;
13 import static org.lcsim.units.clhep.SystemOfUnits.mole;
14 import static org.lcsim.units.clhep.SystemOfUnits.s;
15
16
17
18
19
20
21
22
23
24 public final class PhysicalConstants
25 {
26 public static final double pi = 3.14159265358979323846;
27 public static final double twopi = 2*pi;
28 public static final double halfpi = pi/2;
29 public static final double pi2 = pi*pi;
30
31
32
33
34 public static final double Avogadro = 6.0221367e+23/mole;
35
36
37
38
39
40 public static final double c_light = 2.99792458e+8 * m/s;
41 public static final double c_squared = c_light * c_light;
42
43
44
45
46
47
48 public static final double h_Planck = 6.6260755e-34 * joule*s;
49 public static final double hbar_Planck = h_Planck/twopi;
50 public static final double hbarc = hbar_Planck * c_light;
51 public static final double hbarc_squared = hbarc * hbarc;
52
53
54
55
56 public static final double electron_charge = - eplus;
57 public static final double e_squared = eplus * eplus;
58
59
60
61
62
63 public static final double electron_mass_c2 = 0.51099906 * MeV;
64 public static final double proton_mass_c2 = 938.27231 * MeV;
65 public static final double neutron_mass_c2 = 939.56563 * MeV;
66 public static final double amu_c2 = 931.49432 * MeV;
67 public static final double amu = amu_c2/c_squared;
68
69
70
71
72
73 public static final double mu0 = 4*pi*1.e-7 * henry/m;
74 public static final double epsilon0 = 1./(c_squared*mu0);
75
76
77
78
79 public static final double elm_coupling = e_squared/(4*pi*epsilon0);
80 public static final double fine_structure_const = elm_coupling/hbarc;
81 public static final double classic_electr_radius = elm_coupling/electron_mass_c2;
82 public static final double electron_Compton_length = hbarc/electron_mass_c2;
83 public static final double Bohr_radius = electron_Compton_length/fine_structure_const;
84
85 public static final double alpha_rcl2 = fine_structure_const
86 *classic_electr_radius
87 *classic_electr_radius;
88
89 public static final double twopi_mc2_rcl2 = twopi*electron_mass_c2
90 *classic_electr_radius
91 *classic_electr_radius;
92
93
94
95 public static final double k_Boltzmann = 8.617385e-11 * MeV/kelvin;
96
97
98
99
100 public static final double STP_Temperature = 273.15*kelvin;
101 public static final double STP_Pressure = 1.*atmosphere;
102 public static final double kGasThreshold = 10.*mg/cm3;
103 }