| # Gaudi Framework, version v21r10p1 |

Home |  | Generated: 29 Jul 2010

# 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