| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

In This Package:

PhysicalConstants.h

Go to the documentation of this file.
00001 // -*- C++ -*-
00002 // $Id: PhysicalConstants.h,v 1.1 2006/05/02 13:03:03 hmd Exp $
00003 // ----------------------------------------------------------------------
00004 // HEP coherent Physical Constants
00005 //
00006 // This file has been provided by Geant4 (simulation toolkit for HEP).
00007 //
00008 // The basic units are :
00009 //              millimeter  
00010 //              nanosecond  
00011 //              Mega electron Volt  
00012 //              positon charge 
00013 //              degree Kelvin
00014 //              amount of substance (mole)
00015 //              luminous intensity (candela)
00016 //              radian  
00017 //              steradian 
00018 //
00019 // Below is a non exhaustive list of Physical CONSTANTS,
00020 // computed in the Internal HEP System Of Units.
00021 //
00022 // Most of them are extracted from the Particle Data Book :
00023 //        Phys. Rev. D  volume 50 3-1 (1994) page 1233
00024 // 
00025 //        ...with a meaningful (?) name ...
00026 //
00027 // You can add your own constants.
00028 //
00029 // Author: M.Maire
00030 //
00031 // History:
00032 //
00033 // 23.02.96 Created
00034 // 26.03.96 Added constants for standard conditions of temperature
00035 //          and pressure; also added Gas threshold.
00036 // 28.04.06 Imported from CLHEP into GaudiKernel -- HD
00037 
00038 #ifndef GAUDI_PHYSICAL_CONSTANTS_H
00039 #define GAUDI_PHYSICAL_CONSTANTS_H
00040 
00041 #include "GaudiKernel/SystemOfUnits.h"
00042 
00043 namespace Gaudi {
00044   namespace Units {
00045 
00046     static const double     pi  = 3.14159265358979323846;
00047     static const double  twopi  = 2*pi;
00048     static const double halfpi  = pi/2;
00049     static const double     pi2 = pi*pi;
00050     
00051     static const double Avogadro = 6.0221367e+23/mole;
00052     
00053     //
00054     // c   = 299.792458 mm/ns
00055     // c^2 = 898.7404 (mm/ns)^2 
00056     //
00057     static const double c_light   = 2.99792458e+8 * m/s;
00058     static const double c_squared = c_light * c_light;
00059 
00060     //
00061     // h     = 4.13566e-12 MeV*ns
00062     // hbar  = 6.58212e-13 MeV*ns
00063     // hbarc = 197.32705e-12 MeV*mm
00064     //
00065     static const double h_Planck      = 6.6260755e-34 * joule*s;
00066     static const double hbar_Planck   = h_Planck/twopi;
00067     static const double hbarc         = hbar_Planck * c_light;
00068     static const double hbarc_squared = hbarc * hbarc;
00069 
00070     static const double electron_charge = - eplus; // see SystemOfUnits.h
00071     static const double e_squared = eplus * eplus;
00072 
00073     //
00074     // amu_c2 - atomic equivalent mass unit
00075     // amu    - atomic mass unit
00076     //
00077     static const double electron_mass_c2 = 0.51099906 * MeV;
00078     static const double   proton_mass_c2 = 938.27231 * MeV;
00079     static const double  neutron_mass_c2 = 939.56563 * MeV;
00080     static const double           amu_c2 = 931.49432 * MeV;
00081     static const double              amu = amu_c2/c_squared;
00082 
00083     //
00084     // permeability of free space mu0    = 2.01334e-16 Mev*(ns*eplus)^2/mm
00085     // permittivity of free space epsil0 = 5.52636e+10 eplus^2/(MeV*mm)
00086     //
00087     static const double mu0      = 4*pi*1.e-7 * henry/m;
00088     static const double epsilon0 = 1./(c_squared*mu0);
00089     
00090     //
00091     // electromagnetic coupling = 1.43996e-12 MeV*mm/(eplus^2)
00092     //
00093     static const double elm_coupling           = e_squared/(4*pi*epsilon0);
00094     static const double fine_structure_const   = elm_coupling/hbarc;
00095     static const double classic_electr_radius  = elm_coupling/electron_mass_c2;
00096     static const double electron_Compton_length = hbarc/electron_mass_c2;
00097     static const double Bohr_radius = electron_Compton_length/fine_structure_const;
00098     
00099     static const double alpha_rcl2 = fine_structure_const
00100       *classic_electr_radius
00101       *classic_electr_radius;
00102     
00103     static const double twopi_mc2_rcl2 = twopi*electron_mass_c2
00104       *classic_electr_radius
00105       *classic_electr_radius;
00106     
00107     static const double k_Boltzmann = 8.617385e-11 * MeV/kelvin;
00108 
00109     static const double STP_Temperature = 273.15*kelvin;
00110     static const double STP_Pressure    = 1.*atmosphere;
00111     static const double kGasThreshold   = 10.*mg/cm3;
00112 
00113     static const double universe_mean_density = 1.e-25*g/cm3;
00114 
00115   }  // namespace Units
00116 } // namespace Gaudi
00117 
00118 
00119 #endif /* GAUDI_PHYSICAL_CONSTANTS_H */
00120 
00121 
00122 
00123 
00124 
| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

Generated on Mon Apr 11 19:56:58 2011 for GaudiKernel by doxygen 1.4.7