pro physconstants ;+ ; NAME: ; physconstants ; PURPOSE: (one line) ; Add a structure of physical constants as a non-standard system variable ; DESCRIPTION: ; This is just a simple way to collect the physical constants (cgs) together. ; 1998 CODATA recommended values ; The new set of recommended values is available on the World Wide Web at ; physics.nist.gov/constants. ; ; Journal of Physical and Chemical Reference Data, Vol. 28, No. 6, 1999 and in the ; Reviews of Modern Physics, Vol. 72, No. 2, 2000. ; CODATA Recommended Values of the Fundamental Physical Constants: 1998 ; Peter J. Mohr and Barry N. Taylor ; ; CATEGORY: ; Astronomy ; CALLING SEQUENCE: ; physconstants ; INPUTS: ; none ; OPTIONAL INPUT PARAMETERS: ; none ; KEYWORD INPUT PARAMETERS: ; none ; KEYWORD OUTPUT PARAMETERS: ; none ; OUTPUTS: ; None. ; COMMON BLOCKS: ; None. ; SIDE EFFECTS: ; Defines the system variable !phys using defsysv ; RESTRICTIONS: ; PROCEDURE: ; MODIFICATION HISTORY: ; Written 2000 April, by Leslie Young, SwRI ; Added to "layoung" library 2000 October, by Leslie Young, SwRI ; 2004 Apr 5 move to CODATA 2002, added sigma, added some units, ; fixed sign error in exponent for eV. LAY SwRI ; 2006 Apr 28. Make constants doubles. LAY ;- on_error, 2 ; Don't add it if it already exists. DEFSYSV, '!phys', EXISTS = i IF i EQ 1 THEN return defsysv, '!phys', $ { $ source: '2002 CODATA values', $ system: 'cgs', $ m_u_name: 'atomic mass constant', m_u: 1.66053886d-24, m_u_unit: 'g',$ N_a_name: 'Avogadro constant', N_a: 6.0221415d23, N_a_unit: 'mol^-1',$ k_name: 'Boltzmann constant', k: 1.3806505d-16, k_unit: 'erg K^-1', $ me_name: 'electron mass', m_e: 9.1093826d-28, m_e_unit: 'g', $ eV_name: 'electron volt', eV: 1.60217653d-12, eV_unit: 'erg', $ c_name: 'speed of light', c: 2.99792458d10, c_unit: 'cm s^-1', $ h_name: 'Plank constant', h: 6.6260693d-27, h_unit: 'erg s', $ sigma_name: 'Stefan-Boltzmann constant', $ sigma: 5.670400e-5, sigma_unit: 'erg cm^-2 K^-4 s^-1', $ G_name: 'gravitational constant',G: 6.6742e-8 $ }, 1 message, $ 'Physical constants system variable (!phys) have been added', /inf end