proton_constants.hpp 4.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798
  1. // Boost.Units - A C++ library for zero-overhead dimensional analysis and
  2. // unit/quantity manipulation and conversion
  3. //
  4. // Copyright (C) 2003-2008 Matthias Christian Schabel
  5. // Copyright (C) 2008 Steven Watanabe
  6. //
  7. // Distributed under the Boost Software License, Version 1.0. (See
  8. // accompanying file LICENSE_1_0.txt or copy at
  9. // http://www.boost.org/LICENSE_1_0.txt)
  10. #ifndef BOOST_UNITS_CODATA_PROTON_CONSTANTS_HPP
  11. #define BOOST_UNITS_CODATA_PROTON_CONSTANTS_HPP
  12. #include <boost/units/quantity.hpp>
  13. #include <boost/units/static_constant.hpp>
  14. #include <boost/units/systems/detail/constants.hpp>
  15. #include <boost/units/systems/si/amount.hpp>
  16. #include <boost/units/systems/si/area.hpp>
  17. #include <boost/units/systems/si/electric_charge.hpp>
  18. #include <boost/units/systems/si/energy.hpp>
  19. #include <boost/units/systems/si/frequency.hpp>
  20. #include <boost/units/systems/si/length.hpp>
  21. #include <boost/units/systems/si/mass.hpp>
  22. #include <boost/units/systems/si/magnetic_flux_density.hpp>
  23. #include <boost/units/systems/si/time.hpp>
  24. #include <boost/units/systems/si/wavenumber.hpp>
  25. #include <boost/units/systems/si/codata/typedefs.hpp>
  26. /// \file
  27. /// CODATA recommended values of fundamental atomic and nuclear constants
  28. /// CODATA 2006 values as of 2007/03/30
  29. namespace boost {
  30. namespace units {
  31. namespace si {
  32. namespace constants {
  33. namespace codata {
  34. /// CODATA recommended values of the fundamental physical constants: NIST SP 961
  35. /// proton mass
  36. BOOST_UNITS_PHYSICAL_CONSTANT(m_p,quantity<mass>,1.672621637e-27*kilograms,8.3e-35*kilograms);
  37. /// proton-electron mass ratio
  38. BOOST_UNITS_PHYSICAL_CONSTANT(m_p_over_m_e,quantity<dimensionless>,1836.15267247*dimensionless(),8.0e-7*dimensionless());
  39. /// proton-muon mass ratio
  40. BOOST_UNITS_PHYSICAL_CONSTANT(m_p_over_m_mu,quantity<dimensionless>,8.88024339*dimensionless(),2.3e-7*dimensionless());
  41. /// proton-tau mass ratio
  42. BOOST_UNITS_PHYSICAL_CONSTANT(m_p_over_m_tau,quantity<dimensionless>,0.528012*dimensionless(),8.6e-5*dimensionless());
  43. /// proton-neutron mass ratio
  44. BOOST_UNITS_PHYSICAL_CONSTANT(m_p_over_m_n,quantity<dimensionless>,0.99862347824*dimensionless(),4.6e-10*dimensionless());
  45. /// proton charge to mass ratio
  46. BOOST_UNITS_PHYSICAL_CONSTANT(e_over_m_p,quantity<electric_charge_over_mass>,9.57883392e7*coulombs/kilogram,2.4e0*coulombs/kilogram);
  47. /// proton molar mass
  48. BOOST_UNITS_PHYSICAL_CONSTANT(M_p,quantity<mass_over_amount>,1.00727646677e-3*kilograms/mole,1.0e-13*kilograms/mole);
  49. /// proton Compton wavelength
  50. BOOST_UNITS_PHYSICAL_CONSTANT(lambda_C_p,quantity<length>,1.3214098446e-15*meters,1.9e-24*meters);
  51. /// proton rms charge radius
  52. BOOST_UNITS_PHYSICAL_CONSTANT(R_p,quantity<length>,0.8768e-15*meters,6.9e-18*meters);
  53. /// proton magnetic moment
  54. BOOST_UNITS_PHYSICAL_CONSTANT(mu_p,quantity<energy_over_magnetic_flux_density>,1.410606662e-26*joules/tesla,3.7e-34*joules/tesla);
  55. /// proton-Bohr magneton ratio
  56. BOOST_UNITS_PHYSICAL_CONSTANT(mu_p_over_mu_B,quantity<dimensionless>,1.521032209e-3*dimensionless(),1.2e-11*dimensionless());
  57. /// proton-nuclear magneton ratio
  58. BOOST_UNITS_PHYSICAL_CONSTANT(mu_p_over_mu_N,quantity<dimensionless>,2.792847356*dimensionless(),2.3e-8*dimensionless());
  59. /// proton g-factor
  60. BOOST_UNITS_PHYSICAL_CONSTANT(g_p,quantity<dimensionless>,5.585694713*dimensionless(),4.6e-8*dimensionless());
  61. /// proton-neutron magnetic moment ratio
  62. BOOST_UNITS_PHYSICAL_CONSTANT(mu_p_over_mu_n,quantity<dimensionless>,-1.45989806*dimensionless(),3.4e-7*dimensionless());
  63. /// shielded proton magnetic moment
  64. BOOST_UNITS_PHYSICAL_CONSTANT(mu_p_prime,quantity<energy_over_magnetic_flux_density>,1.410570419e-26*joules/tesla,3.8e-34*joules/tesla);
  65. /// shielded proton-Bohr magneton ratio
  66. BOOST_UNITS_PHYSICAL_CONSTANT(mu_p_prime_over_mu_B,quantity<dimensionless>,1.520993128e-3*dimensionless(),1.7e-11*dimensionless());
  67. /// shielded proton-nuclear magneton ratio
  68. BOOST_UNITS_PHYSICAL_CONSTANT(mu_p_prime_over_mu_N,quantity<dimensionless>,2.792775598*dimensionless(),3.0e-8*dimensionless());
  69. /// proton magnetic shielding correction
  70. BOOST_UNITS_PHYSICAL_CONSTANT(sigma_p_prime,quantity<dimensionless>,25.694e-6*dimensionless(),1.4e-8*dimensionless());
  71. /// proton gyromagnetic ratio
  72. BOOST_UNITS_PHYSICAL_CONSTANT(gamma_p,quantity<frequency_over_magnetic_flux_density>,2.675222099e8/second/tesla,7.0e0/second/tesla);
  73. /// shielded proton gyromagnetic ratio
  74. BOOST_UNITS_PHYSICAL_CONSTANT(gamma_p_prime,quantity<frequency_over_magnetic_flux_density>,2.675153362e8/second/tesla,7.3e0/second/tesla);
  75. } // namespace codata
  76. } // namespace constants
  77. } // namespace si
  78. } // namespace units
  79. } // namespace boost
  80. #endif // BOOST_UNITS_CODATA_PROTON_CONSTANTS_HPP