1 /***************************************************************************
5 * Author: CLHEP (see below)
6 ***************************************************************************
8 * Description: Taken as-is from CLHEP.
9 * Modified original CVS-Id to retain version info.
10 ***************************************************************************
13 * Revision 1.1.1.1 2007/04/25 15:38:41 panos
14 * Importing the HBT code dir
16 * Revision 1.1.1.1 2007/03/07 10:14:49 mchojnacki
17 * First version on CVS
19 * Revision 1.2 1999/02/22 16:52:47 didenko
22 * Revision 1.1 1999/01/30 03:58:59 fisyak
23 * Root Version of StarClassLibrary
25 * Revision 1.1 1999/01/23 00:27:34 ullrich
28 **************************************************************************/
30 #ifndef HEP_PHYSICAL_CONSTANTS_H
31 #define HEP_PHYSICAL_CONSTANTS_H
33 #include "SystemOfUnits.h"
35 #ifndef ST_NO_NAMESPACES
37 using namespace units;
46 #define M_PI 3.14159265358979312
50 //extern const double pi; // from <math.h>
52 static const double pi = M_PI; // from <math.h>
54 static const double twopi = 2*pi;
55 static const double halfpi = pi/2;
56 static const double pi2 = pi*pi;
61 static const double Avogadro = 6.0221367e+23/mole;
64 // c = 299.792458 mm/ns
65 // c^2 = 898.7404 (mm/ns)^2
67 static const double kCLight = 2.99792458e+8 * meter/second;
68 static const double kCSquared = kCLight * kCLight;
71 // h = 4.13566e-12 MeV*ns
72 // hbar = 6.58212e-13 MeV*ns
73 // hbarc = 197.32705e-12 MeV*mm
75 static const double h_Planck = 6.6260755e-34 * joule*second;
76 static const double hbar_Planck = h_Planck/twopi;
77 static const double hbarc = hbar_Planck * kCLight;
78 static const double hbarcSquared = hbarc * hbarc;
83 static const double electron_charge = - eplus; // see SystemOfUnits.h
84 static const double e_squared = eplus * eplus;
88 // amu_c2 - atomic equivalent mass unit
89 // amu - atomic mass unit
91 static const double kElectronMassC2 = 0.51099906 * MeV;
92 static const double kProtonMassC2 = 938.27231 * MeV;
93 static const double kNeutronMassC2 = 939.56563 * MeV;
94 static const double kAmuC2 = 931.49432 * MeV;
95 //static const double amu = kAmuC2/cSquared;
97 static const double kKaon0ShortMassC2 = 497.672 * MeV;
98 static const double kPionPlusMassC2 = 139.5700 * MeV;
99 static const double kPionMinusMassC2 = 139.5700 * MeV;
100 static const double kLambdaMassC2 = 1115.684 * MeV;
101 static const double kAntiLambdaMassC2 = 1115.684 * MeV;
102 static const double kXiMinusMassC2 = 1321.32 * MeV;
106 // permeability of free space mu0 = 2.01334e-16 Mev*(ns*eplus)^2/mm
107 // permittivity of free space epsil0 = 5.52636e+10 eplus^2/(MeV*mm)
109 static const double mu0 = 4*pi*1.e-7 * henry/meter;
110 static const double epsilon0 = 1./(cSquared*mu0);
113 // electromagnetic coupling = 1.43996e-12 MeV*mm/(eplus^2)
115 static const double elm_coupling = e_squared/(4*pi*epsilon0);
116 static const double fine_structure_const = elm_coupling/hbarc;
117 static const double classic_electr_radius = elm_coupling/kElectronMassC2;
118 static const double electron_Compton_length = hbarc/kElectronMassC2;
119 static const double Bohr_radius = electron_Compton_length/fine_structure_const;
121 static const double alpha_rcl2 = fine_structure_const
122 *classic_electr_radius
123 *classic_electr_radius;
125 static const double twopi_mc2_rcl2 = twopi*kElectronMassC2
126 *classic_electr_radius
127 *classic_electr_radius;
131 static const double k_Boltzmann = 8.617385e-11 * MeV/kelvin;
136 static const double STP_Temperature = 273.15*kelvin;
137 static const double STP_Pressure = 1.*atmosphere;
138 static const double kGasThreshold = 1.e-2*gram/centimeter3;
141 #endif /* HEP_PHYSICAL_CONSTANTS_H */