The Gaudi Framework  master (37c0b60a)
PhysicalConstants.h
Go to the documentation of this file.
1 /***********************************************************************************\
2 * (c) Copyright 1998-2024 CERN for the benefit of the LHCb and ATLAS collaborations *
3 * *
4 * This software is distributed under the terms of the Apache version 2 licence, *
5 * copied verbatim in the file "LICENSE". *
6 * *
7 * In applying this licence, CERN does not waive the privileges and immunities *
8 * granted to it by virtue of its status as an Intergovernmental Organization *
9 * or submit itself to any jurisdiction. *
10 \***********************************************************************************/
11 // -*- C++ -*-
12 // ----------------------------------------------------------------------
13 // HEP coherent Physical Constants
14 //
15 // This file has been provided by Geant4 (simulation toolkit for HEP).
16 //
17 // The basic units are :
18 // millimeter
19 // nanosecond
20 // Mega electron Volt
21 // positon charge
22 // degree Kelvin
23 // amount of substance (mole)
24 // luminous intensity (candela)
25 // radian
26 // steradian
27 //
28 // Below is a non exhaustive list of Physical CONSTANTS,
29 // computed in the Internal HEP System Of Units.
30 //
31 // Most of them are extracted from the Particle Data Book :
32 // Phys. Rev. D volume 50 3-1 (1994) page 1233
33 //
34 // ...with a meaningful (?) name ...
35 //
36 // You can add your own constants.
37 //
38 // Author: M.Maire
39 //
40 // History:
41 //
42 // 23.02.96 Created
43 // 26.03.96 Added constants for standard conditions of temperature
44 // and pressure; also added Gas threshold.
45 // 28.04.06 Imported from CLHEP into GaudiKernel -- HD
46 
47 #ifndef GAUDI_PHYSICAL_CONSTANTS_H
48 #define GAUDI_PHYSICAL_CONSTANTS_H
49 
51 
52 namespace Gaudi {
53  namespace Units {
54 
55  constexpr double pi = 3.14159265358979323846;
56  constexpr double twopi = 2 * pi;
57  constexpr double halfpi = pi / 2;
58  constexpr double pi2 = pi * pi;
59 
60  constexpr double Avogadro = 6.0221367e+23 / mole;
61 
62  //
63  // c = 299.792458 mm/ns
64  // c^2 = 898.7404 (mm/ns)^2
65  //
66  constexpr double c_light = 2.99792458e+8 * m / s;
67  constexpr double c_squared = c_light * c_light;
68 
69  //
70  // h = 4.13566e-12 MeV*ns
71  // hbar = 6.58212e-13 MeV*ns
72  // hbarc = 197.32705e-12 MeV*mm
73  //
74  constexpr double h_Planck = 6.62606896e-34 * joule * s;
75  constexpr double hbar_Planck = h_Planck / twopi;
76  constexpr double hbarc = hbar_Planck * c_light;
77  constexpr double hbarc_squared = hbarc * hbarc;
78 
79  constexpr double electron_charge = -eplus; // see SystemOfUnits.h
80  constexpr double e_squared = eplus * eplus;
81 
82  //
83  // amu_c2 - atomic equivalent mass unit
84  // amu - atomic mass unit
85  //
86  constexpr double electron_mass_c2 = 0.510998910 * MeV;
87  constexpr double proton_mass_c2 = 938.272013 * MeV;
88  constexpr double neutron_mass_c2 = 939.56536 * MeV;
89  constexpr double amu_c2 = 931.494028 * MeV;
90  constexpr double amu = amu_c2 / c_squared;
91 
92  //
93  // permeability of free space mu0 = 2.01334e-16 Mev*(ns*eplus)^2/mm
94  // permittivity of free space epsil0 = 5.52636e+10 eplus^2/(MeV*mm)
95  //
96  constexpr double mu0 = 4 * pi * 1.e-7 * henry / m;
97  constexpr double epsilon0 = 1. / ( c_squared * mu0 );
98 
99  //
100  // electromagnetic coupling = 1.43996e-12 MeV*mm/(eplus^2)
101  //
102  constexpr double elm_coupling = e_squared / ( 4 * pi * epsilon0 );
107 
109 
111 
112  constexpr double k_Boltzmann = 8.617343e-11 * MeV / kelvin;
113 
114  constexpr double STP_Temperature = 273.15 * kelvin;
115  constexpr double STP_Pressure = 1. * atmosphere;
116  constexpr double kGasThreshold = 10. * mg / cm3;
117 
118  constexpr double universe_mean_density = 1.e-25 * g / cm3;
119 
120  } // namespace Units
121 } // namespace Gaudi
122 
123 #endif /* GAUDI_PHYSICAL_CONSTANTS_H */
Gaudi::Units::electron_mass_c2
constexpr double electron_mass_c2
Definition: PhysicalConstants.h:86
Gaudi::Units::hbarc
constexpr double hbarc
Definition: PhysicalConstants.h:76
Gaudi::Units::hbar_Planck
constexpr double hbar_Planck
Definition: PhysicalConstants.h:75
Gaudi::Units::twopi_mc2_rcl2
constexpr double twopi_mc2_rcl2
Definition: PhysicalConstants.h:110
Gaudi::Units::mu0
constexpr double mu0
Definition: PhysicalConstants.h:96
Gaudi::Units::henry
constexpr double henry
Definition: SystemOfUnits.h:258
Gaudi::Units::fine_structure_const
constexpr double fine_structure_const
Definition: PhysicalConstants.h:103
Gaudi::Units::h_Planck
constexpr double h_Planck
Definition: PhysicalConstants.h:74
Gaudi::Units::STP_Pressure
constexpr double STP_Pressure
Definition: PhysicalConstants.h:115
Gaudi::Units::amu_c2
constexpr double amu_c2
Definition: PhysicalConstants.h:89
Gaudi::Units::elm_coupling
constexpr double elm_coupling
Definition: PhysicalConstants.h:102
Gaudi::Units::epsilon0
constexpr double epsilon0
Definition: PhysicalConstants.h:97
Gaudi::Units::joule
constexpr double joule
Definition: SystemOfUnits.h:173
Gaudi::Units::mg
constexpr double mg
Definition: SystemOfUnits.h:193
Gaudi::Units::c_squared
constexpr double c_squared
Definition: PhysicalConstants.h:67
Gaudi::Units::hbarc_squared
constexpr double hbarc_squared
Definition: PhysicalConstants.h:77
SystemOfUnits.h
Gaudi::Units::m
constexpr double m
Definition: SystemOfUnits.h:108
Gaudi::Units::Bohr_radius
constexpr double Bohr_radius
Definition: PhysicalConstants.h:106
Gaudi::Units::eplus
constexpr double eplus
Definition: SystemOfUnits.h:159
Gaudi::Units::c_light
constexpr double c_light
Definition: PhysicalConstants.h:66
Gaudi::Units::electron_charge
constexpr double electron_charge
Definition: PhysicalConstants.h:79
Gaudi
This file provides a Grammar for the type Gaudi::Accumulators::Axis It allows to use that type from p...
Definition: __init__.py:1
Gaudi::Units::e_squared
constexpr double e_squared
Definition: PhysicalConstants.h:80
Gaudi::Units::pi2
constexpr double pi2
Definition: PhysicalConstants.h:58
Gaudi::Units::Avogadro
constexpr double Avogadro
Definition: PhysicalConstants.h:60
Gaudi::Units::s
constexpr double s
Definition: SystemOfUnits.h:153
Gaudi::Units::k_Boltzmann
constexpr double k_Boltzmann
Definition: PhysicalConstants.h:112
Gaudi::Units::alpha_rcl2
constexpr double alpha_rcl2
Definition: PhysicalConstants.h:108
Gaudi::Units::atmosphere
constexpr double atmosphere
Definition: SystemOfUnits.h:211
Gaudi::Units::proton_mass_c2
constexpr double proton_mass_c2
Definition: PhysicalConstants.h:87
Gaudi::Units::neutron_mass_c2
constexpr double neutron_mass_c2
Definition: PhysicalConstants.h:88
Gaudi::Units::mole
constexpr double mole
Definition: SystemOfUnits.h:268
Gaudi::Units::electron_Compton_length
constexpr double electron_Compton_length
Definition: PhysicalConstants.h:105
Gaudi::Units::cm3
constexpr double cm3
Definition: SystemOfUnits.h:106
Gaudi::Units::kGasThreshold
constexpr double kGasThreshold
Definition: PhysicalConstants.h:116
Gaudi::Units::twopi
constexpr double twopi
Definition: PhysicalConstants.h:56
Gaudi::Units::MeV
constexpr double MeV
Definition: SystemOfUnits.h:176
Gaudi::Units::g
constexpr double g
Definition: SystemOfUnits.h:192
Gaudi::Units::kelvin
constexpr double kelvin
Definition: SystemOfUnits.h:263
Gaudi::Units::STP_Temperature
constexpr double STP_Temperature
Definition: PhysicalConstants.h:114
Gaudi::Units::pi
constexpr double pi
Definition: PhysicalConstants.h:55
Gaudi::Units::halfpi
constexpr double halfpi
Definition: PhysicalConstants.h:57
Gaudi::Units::amu
constexpr double amu
Definition: PhysicalConstants.h:90
Gaudi::Units::universe_mean_density
constexpr double universe_mean_density
Definition: PhysicalConstants.h:118
Gaudi::Units::classic_electr_radius
constexpr double classic_electr_radius
Definition: PhysicalConstants.h:104