# Physical Constants

This chapter describes macros for the values of physical constants, such as the speed of light, c, and gravitational constant, G. The values are available in different unit systems, including the standard MKSA system (meters, kilograms, seconds, amperes) and the CGSM system (centimeters, grams, seconds, gauss), which is commonly used in Astronomy.

The definitions of constants in the MKSA system are available in the file gsl_const_mksa.h'. The constants in the CGSM system are defined in gsl_const_cgsm.h'. Dimensionless constants, such as the fine structure constant, which are pure numbers are defined in gsl_const_num.h'.

The full list of constants is described briefly below. Consult the header files themselves for the values of the constants used in the library.

## Fundamental Constants

GSL_CONST_MKSA_SPEED_OF_LIGHT
The speed of light in vacuum, c.
GSL_CONST_MKSA_VACUUM_PERMEABILITY
The permeability of free space, \mu_0. This constant is defined in the MKSA system only.
GSL_CONST_MKSA_VACUUM_PERMITTIVITY
The permittivity of free space, \epsilon_0. This constant is defined in the MKSA system only.
GSL_CONST_MKSA_PLANCKS_CONSTANT_H
Planck's constant, h.
GSL_CONST_MKSA_PLANCKS_CONSTANT_HBAR
Planck's constant divided by 2\pi, \hbar.
GSL_CONST_NUM_AVOGADRO
GSL_CONST_MKSA_FARADAY
The molar charge of 1 Faraday.
GSL_CONST_MKSA_BOLTZMANN
The Boltzmann constant, k.
GSL_CONST_MKSA_MOLAR_GAS
The molar gas constant, R_0.
GSL_CONST_MKSA_STANDARD_GAS_VOLUME
The standard gas volume, V_0.
GSL_CONST_MKSA_STEFAN_BOLTZMANN_CONSTANT
GSL_CONST_MKSA_GAUSS
The magnetic field of 1 Gauss.

## Astronomy and Astrophysics

GSL_CONST_MKSA_ASTRONOMICAL_UNIT
The length of 1 astronomical unit (mean earth-sun distance), au.
GSL_CONST_MKSA_GRAVITATIONAL_CONSTANT
The gravitational constant, G.
GSL_CONST_MKSA_LIGHT_YEAR
The distance of 1 light-year, ly.
GSL_CONST_MKSA_PARSEC
The distance of 1 parsec, pc.
GSL_CONST_MKSA_GRAV_ACCEL
The standard gravitational acceleration on Earth, g.
GSL_CONST_MKSA_SOLAR_MASS
The mass of the Sun.

## Atomic and Nuclear Physics

GSL_CONST_MKSA_ELECTRON_CHARGE
The charge of the electron, e.
GSL_CONST_MKSA_ELECTRON_VOLT
The energy of 1 electron volt, eV.
GSL_CONST_MKSA_UNIFIED_ATOMIC_MASS
The unified atomic mass, amu.
GSL_CONST_MKSA_MASS_ELECTRON
The mass of the electron, m_e.
GSL_CONST_MKSA_MASS_MUON
The mass of the muon, m_\mu.
GSL_CONST_MKSA_MASS_PROTON
The mass of the proton, m_p.
GSL_CONST_MKSA_MASS_NEUTRON
The mass of the neutron, m_n.
GSL_CONST_NUM_FINE_STRUCTURE
The electromagnetic fine structure constant \alpha.
GSL_CONST_MKSA_RYDBERG
The Rydberg constant, Ry, in units of energy. This is related to the Rydberg inverse wavelength R_\infty by Ry = h c R_\infty.
GSL_CONST_MKSA_BOHR_RADIUS
GSL_CONST_MKSA_ANGSTROM
The length of 1 angstrom.
GSL_CONST_MKSA_BARN
The area of 1 barn.
GSL_CONST_MKSA_BOHR_MAGNETON
The Bohr Magneton, \mu_B.
GSL_CONST_MKSA_NUCLEAR_MAGNETON
The Nuclear Magneton, \mu_N.
GSL_CONST_MKSA_ELECTRON_MAGNETIC_MOMENT
The absolute value of the magnetic moment of the electron, \mu_e. The physical magnetic moment of the electron is negative.
GSL_CONST_MKSA_PROTON_MAGNETIC_MOMENT
The magnetic moment of the proton, \mu_p.
GSL_CONST_MKSA_THOMSON_CROSS_SECTION
The Thomson cross section, \sigma_T.
GSL_CONST_MKSA_DEBYE
The electric dipole moment of 1 Debye, D.

## Measurement of Time

GSL_CONST_MKSA_MINUTE
The number of seconds in 1 minute.
GSL_CONST_MKSA_HOUR
The number of seconds in 1 hour.
GSL_CONST_MKSA_DAY
The number of seconds in 1 day.
GSL_CONST_MKSA_WEEK
The number of seconds in 1 week.

## Imperial Units

GSL_CONST_MKSA_INCH
The length of 1 inch.
GSL_CONST_MKSA_FOOT
The length of 1 foot.
GSL_CONST_MKSA_YARD
The length of 1 yard.
GSL_CONST_MKSA_MILE
The length of 1 mile.
GSL_CONST_MKSA_MIL
The length of 1 mil (1/1000th of an inch).

## Speed and Nautical Units

GSL_CONST_MKSA_KILOMETERS_PER_HOUR
The speed of 1 kilometer per hour.
GSL_CONST_MKSA_MILES_PER_HOUR
The speed of 1 mile per hour.
GSL_CONST_MKSA_NAUTICAL_MILE
The length of 1 nautical mile.
GSL_CONST_MKSA_FATHOM
The length of 1 fathom.
GSL_CONST_MKSA_KNOT
The speed of 1 knot.

## Printers Units

GSL_CONST_MKSA_POINT
The length of 1 printer's point (1/72 inch).
GSL_CONST_MKSA_TEXPOINT
The length of 1 TeX point (1/72.27 inch).

## Volume, Area and Length

GSL_CONST_MKSA_MICRON
The length of 1 micron.
GSL_CONST_MKSA_HECTARE
The area of 1 hectare.
GSL_CONST_MKSA_ACRE
The area of 1 acre.
GSL_CONST_MKSA_LITER
The volume of 1 liter.
GSL_CONST_MKSA_US_GALLON
The volume of 1 US gallon.
GSL_CONST_MKSA_CANADIAN_GALLON
The volume of 1 Canadian gallon.
GSL_CONST_MKSA_UK_GALLON
The volume of 1 UK gallon.
GSL_CONST_MKSA_QUART
The volume of 1 quart.
GSL_CONST_MKSA_PINT
The volume of 1 pint.

## Mass and Weight

GSL_CONST_MKSA_POUND_MASS
The mass of 1 pound.
GSL_CONST_MKSA_OUNCE_MASS
The mass of 1 ounce.
GSL_CONST_MKSA_TON
The mass of 1 ton.
GSL_CONST_MKSA_METRIC_TON
The mass of 1 metric ton (1000 kg).
GSL_CONST_MKSA_UK_TON
The mass of 1 UK ton.
GSL_CONST_MKSA_TROY_OUNCE
The mass of 1 troy ounce.
GSL_CONST_MKSA_CARAT
The mass of 1 carat.
GSL_CONST_MKSA_GRAM_FORCE
The force of 1 gram weight.
GSL_CONST_MKSA_POUND_FORCE
The force of 1 pound weight.
GSL_CONST_MKSA_KILOPOUND_FORCE
The force of 1 kilopound weight.
GSL_CONST_MKSA_POUNDAL
The force of 1 poundal.

## Thermal Energy and Power

GSL_CONST_MKSA_CALORIE
The energy of 1 calorie.
GSL_CONST_MKSA_BTU
The energy of 1 British Thermal Unit, btu.
GSL_CONST_MKSA_THERM
The energy of 1 Therm.
GSL_CONST_MKSA_HORSEPOWER
The power of 1 horsepower.

## Pressure

GSL_CONST_MKSA_BAR
The pressure of 1 bar.
GSL_CONST_MKSA_STD_ATMOSPHERE
The pressure of 1 standard atmosphere.
GSL_CONST_MKSA_TORR
The pressure of 1 torr.
GSL_CONST_MKSA_METER_OF_MERCURY
The pressure of 1 meter of mercury.
GSL_CONST_MKSA_INCH_OF_MERCURY
The pressure of 1 inch of mercury.
GSL_CONST_MKSA_INCH_OF_WATER
The pressure of 1 inch of water.
GSL_CONST_MKSA_PSI
The pressure of 1 pound per square inch.

## Viscosity

GSL_CONST_MKSA_POISE
The dynamic viscosity of 1 poise.
GSL_CONST_MKSA_STOKES
The kinematic viscosity of 1 stokes.

## Light and Illumination

GSL_CONST_MKSA_STILB
The luminance of 1 stilb.
GSL_CONST_MKSA_LUMEN
The luminous flux of 1 lumen.
GSL_CONST_MKSA_LUX
The illuminance of 1 lux.
GSL_CONST_MKSA_PHOT
The illuminance of 1 phot.
GSL_CONST_MKSA_FOOTCANDLE
The illuminance of 1 footcandle.
GSL_CONST_MKSA_LAMBERT
The luminance of 1 lambert.
GSL_CONST_MKSA_FOOTLAMBERT
The luminance of 1 footlambert.

GSL_CONST_MKSA_CURIE
The activity of 1 curie.
GSL_CONST_MKSA_ROENTGEN
The exposure of 1 roentgen.
GSL_CONST_MKSA_RAD
The absorbed dose of 1 rad.

## Force and Energy

GSL_CONST_MKSA_NEWTON
The SI unit of force, 1 Newton.
GSL_CONST_MKSA_DYNE
The force of 1 Dyne = 10^-5 Newton.
GSL_CONST_MKSA_JOULE
The SI unit of energy, 1 Joule.
GSL_CONST_MKSA_ERG
The energy 1 erg = 10^-7 Joule.

## Prefixes

These constants are dimensionless scaling factors.

GSL_CONST_NUM_YOTTA
10^24
GSL_CONST_NUM_ZETTA
10^21
GSL_CONST_NUM_EXA
10^18
GSL_CONST_NUM_PETA
10^15
GSL_CONST_NUM_TERA
10^12
GSL_CONST_NUM_GIGA
10^9
GSL_CONST_NUM_MEGA
10^6
GSL_CONST_NUM_KILO
10^3
GSL_CONST_NUM_MILLI
10^-3
GSL_CONST_NUM_MICRO
10^-6
GSL_CONST_NUM_NANO
10^-9
GSL_CONST_NUM_PICO
10^-12
GSL_CONST_NUM_FEMTO
10^-15
GSL_CONST_NUM_ATTO
10^-18
GSL_CONST_NUM_ZEPTO
10^-21
GSL_CONST_NUM_YOCTO
10^-24

## Examples

The following program demonstrates the use of the physical constants in a calculation. In this case, the goal is to calculate the range of light-travel times from Earth to Mars.

The required data is the average distance of each planet from the Sun in astronomical units (the eccentricities and inclinations of the orbits will be neglected for the purposes of this calculation). The average radius of the orbit of Mars is 1.52 astronomical units, and for the orbit of Earth it is 1 astronomical unit (by definition). These values are combined with the MKSA values of the constants for the speed of light and the length of an astronomical unit to produce a result for the shortest and longest light-travel times in seconds. The figures are converted into minutes before being displayed.

#include <stdio.h>
#include <gsl/gsl_const_mksa.h>

int
main (void)
{
double c  = GSL_CONST_MKSA_SPEED_OF_LIGHT;
double au = GSL_CONST_MKSA_ASTRONOMICAL_UNIT;
double minutes = GSL_CONST_MKSA_MINUTE;

/* distance stored in meters */
double r_earth = 1.00 * au;
double r_mars  = 1.52 * au;

double t_min, t_max;

t_min = (r_mars - r_earth) / c;
t_max = (r_mars + r_earth) / c;

printf ("light travel time from Earth to Mars:\n");
printf ("minimum = %.1f minutes\n", t_min / minutes);
printf ("maximum = %.1f minutes\n", t_max / minutes);

return 0;
}


Here is the output from the program,

light travel time from Earth to Mars:
minimum = 4.3 minutes
maximum = 21.0 minutes
`