#ifndef u #error "SIunits/consts.dat unnecessarily included" #endif // u // ---------------------------------------------------------------------- // // consts.dat - provide units and constants of nature // //-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-\\ // \\ // NOTICE: \\ // This file is part of "The SI Library of Unit-Based Computation." \\ // See "doc/README" for copyright, license, and other information. \\ // \\ //-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-\\ // // This is a data file, intended for dual use in declaring and defining // the named identifiers. This centralizes all information and so // helps to ensure consistency and to simplify updates and additions. // // The syntax used herein is that of a (sigh!) macro, u, which is defined // so as to declare these names properly in one (header) file, yet // defined elsewhere (in a non-header) so as to instantiate (allocate // storage for and properly initialize) the objects named here. // // History: // 17-Apr-1998 WEB Initial draft, inspired by CLHEP (v1.2) files // SystemOfUnits.h and PhysicalConstants.h, originally provided by // Geant4 (simulation toolkit for HEP) and authored by M.Maire (1996) // as modified by E.Tcherniaev (1997); strong type-checking applied // uniformly to all units and values; most values taken from the // Particle Data Book: Phys. Rev. D, v 50, #3, part I (1 August // 1994), pp 1233-4 // 19-Jun-1998 WEB Additional units and values taken from Horvath, // Ari L: Conversion Tables of Units in Science & Engineering. The // Macmillan Press Ltd, 1986. ISBN 0-444-01150-1 // 22-Jun-1998 WEB Reorganized for easier scanning // 29-Jul-1998 WEB Use d() macro only for abbreviations, not for // synonymous definitions; simplify configuration to allow/disallow // abbreviations // 31-Jul-1998 WEB Removed conditional values // 12-Aug-1998 WEB Perfected abbreviation usage; added more units // from Horvath (inspired by Mathematica documentation) // 20-Oct-1998 WEB Added units inspired by data file accompanying // GNU units conversion program (Version 1.11) by Adrian Mariano // 26-Oct-1998 WEB Added units and proofed against Rowlett, Russ: // How Many? A Dictionary of Units of Measurement, found at // www.unc.edu/~rowlett/units/index.html // 09-Nov-1998 WEB Added information from Klein, H Arthur: The World // of Measurements. Simon and Schuster, 1974. SBN 671-21565-5 // 11-Nov-1998 WEB Reorganized to acknowledge the 1986 CODATA- // recommended values of fundamental physical constants; also // updated with information from Taylor, Barry N: Guide for the Use // of the International System of Units (SI). NIST Special // Publication 811, 1995 Edition // // ---------------------------------------------------------------------- // ====================================================================== // // Local notational conveniences: // // ====================================================================== #define per / #define reciprocal 1.0 / #define sq(unit) ( (unit) * (unit) ) #define cub(unit) ( (unit) * (unit) * (unit) ) #define d(type,name,abbrev,value) \ u(type,name,value) \ a(type,abbrev,name) // ====================================================================== // // Standard SI prefixes used to form multiples of SI units: // // ====================================================================== d( Number, deka_ , da_, 1e+01 ) // deka (Greek) "ten" d( Number, hecto_, h_ , 1e+02 ) // hekaton (Greek) "hundred" d( Number, kilo_ , k_ , 1e+03 ) // chilioi (Greek) "thousand" u( Number, myria_, 1e+04 ) // myrioi (Greek) "10 000" (not SI) d( Number, mega_ , M_ , 1e+06 ) // megas (Greek) "large" d( Number, giga_ , G_ , 1e+09 ) // gigas (Greek) "giant" d( Number, tera_ , T_ , 1e+12 ) // teras (Greek) "monster" d( Number, peta_ , P_ , 1e+15 ) // pente (Greek) "five" d( Number, exa_ , E_ , 1e+18 ) // hex (Greek) "six" d( Number, zetta_, Z_ , 1e+21 ) // septem (Latin) "seven" d( Number, yotta_, Y_ , 1e+24 ) // octo (Latin or Greek) "eight" // ====================================================================== // // Standard SI prefixes used to form sub-multiples of SI units: // // ====================================================================== d( Number, deci_ , d_, 1e-01 ) // decimus (Latin) "tenth" d( Number, centi_, c_, 1e-02 ) // centum (Latin) "hundred" d( Number, milli_, m_, 1e-03 ) // mille (Latin) "thousand" d( Number, micro_, u_, 1e-06 ) // micro (Latin) or mikros (Greek) "small" d( Number, nano_ , n_, 1e-09 ) // nanus (Latin) or nanos (Greek) "dwarf" d( Number, pico_ , p_, 1e-12 ) // pico (Spanish) "bit" d( Number, femto_, f_, 1e-15 ) // femten (Danish and Norwegian) "fifteen" d( Number, atto_ , a_, 1e-18 ) // atten (Danish and Norwegian) "eighteen" d( Number, zepto_, z_, 1e-21 ) // septem (Latin) "seven" d( Number, yocto_, y_, 1e-24 ) // octo (Latin or Greek) "eight" // ====================================================================== // // Base (default) SI units // for the basic measurable quantities (dimensions): // // ====================================================================== d( Length, meter, m, WV::scale_(WV::dimLength) ) // metrum (Latin) and metron (Greek) "measure" d( Mass, kilogram, kg, WV::scale_(WV::dimMass) ) d( Time, second, s, WV::scale_(WV::dimTime) ) // minuta secundam (Latin) "second small one" d( Current, ampere, A, WV::scale_(WV::dimCurrent) ) // --- honors Andre-Marie Ampere (1775-1836) d( Temperature, kelvin, K, WV::scale_(WV::dimTemp) ) // --- honors William Thomson, Baron Kelvin (1824-1907) d( AmountOfSubstance, mole, mol, WV::scale_(WV::dimSubst) ) d( LuminousIntensity, candela, cd, WV::scale_(WV::dimLI) ) // ====================================================================== // // Supplementary SI units having special symbols: // // ====================================================================== d( PlaneAngle, radian, rad, meter per meter ) d( SolidAngle, steradian, sr, sq(meter) per sq(meter) ) // ====================================================================== // // Derived SI units having special symbols: // // ====================================================================== d( Frequency, hertz, Hz, reciprocal second ) // --- honors Heinrich Rudolf Hertz (1857-1894) d( Force, newton, N, meter * kg per sq(second) ) // --- honors Sir Isaac Newton (1642-1727) d( Pressure, pascal, Pa, newton per sq(meter) ) // --- honors Blaise Pascal (1623-1662) d( Energy, joule, J, newton * meter ) // --- honors James Prescott Joule (1818-1889) d( Power, watt, W, joule per second ) // --- honors James Watt (1736-1819) d( ElectricCharge, coulomb, C, ampere * second ) // --- honors Charles-Augustin de Coulomb (1736-1806) d( ElectricPotential, volt, V, joule per coulomb ) // --- honors Count Alessandro Volta (1745-1827) u( ElectricResistance, ohm, volt per ampere ) // --- honors Georg Simon Ohm (1787-1854) d( ElectricConductance, siemens, S, reciprocal ohm ) // --- honors Ernst Werner von Siemens (1816-1892) // --- or his brother William (Wilhelm von) Siemens (1823-1883) d( ElectricCapacitance, farad, F, coulomb per volt ) // --- honors Michael Faraday (1791-1867) d( MagneticFluxDensity, tesla, T, volt * second per sq(meter) ) // --- honors Nikola Tesla (1856-1943) d( MagneticFlux, weber, Wb, volt * second ) // --- honors Wilhelm Eduard Weber (1804-1891) d( Inductance, henry, H, weber per ampere ) // --- honors Joseph Henry (1797-1878) d( LuminousFlux, lumen, lm, candela * steradian ) d( Illuminance, lux, lx, lumen per sq(meter) ) d( Radioactivity, becquerel, Bq, reciprocal second ) // --- honors Antoine-Henri Becquerel (1852-1908) d( SpecificEnergy, gray, Gy, joule per kilogram ) // --- honors Louis Harold Gray, F.R.S. (1905-1965) d( DoseEquivalent, sievert, Sv, joule per kilogram ) // ====================================================================== // // CODATA Task Group on Fundamental Constants 1986 recommended values: // // ====================================================================== // ----- Mathematical constants: // u( Number, pi, 3.14159265358979323846 ) u( Number, twopi, 2. * pi ) u( Number, halfpi, 0.5 * pi ) u( Number, pi2, sq(pi) ) u( Number, e, 2.7182818284590452354 ) u( Number, gamma, 0.577215664901532861 ) // ----- Universal, electromagnetic, atomic, and physico-chemical constants: // d( Velocity, lightspeed, c, 299792458. * meter per second ) a( Velocity, c_0, c ) d( SpecificEnergy, lightspeedsquared, c2, sq(c) ) d( Permeability, freespacepermeability, mu_0, 4e-7*pi * N per (A*A) ) u( Permeability, vacuumpermeability, freespacepermeability ) d( Permittivity, freespacepermittivity, epsilon_0, reciprocal (mu_0 * c2) ) u( Permittivity, vacuumpermittivity, freespacepermittivity ) d( GravitationalConstant, gravitationconstant, G_N, 6.67259e-11*cub(m)/(kg*sq(s)) ) u( GravitationalConstant, newtoniangravitationconstant, gravitationconstant ) d( Acceleration, gravity, G, 9.80665 * meter per sq(second) ) u( Acceleration, gravitationalacceleration, gravity ) u( Acceleration, force, gravity ) u( Acceleration, fors, gravity ) d( Action, reducedplanck, hBar, 1.05457266e-34 * joule * second ) d( Action, planckconstant, h, hBar * twopi ) // --- both honor Max Planck (1858-1947) d( Charge, elementarycharge, ePlus, 1.60217733e-19 * coulomb ) u( Charge, positroncharge, elementarycharge ) d( EnergyLength, electromagneticcoupling, elmCoupling, sq(ePlus) / (4.*pi * epsilon_0 ) ) d( MagneticFlux, magneticfluxquantum, Phi_0, h / (2.*ePlus) ) d( Mass, electronrestmass, m_e, 9.1093897e-31 * kilogram ) d( Mass, protonrestmass, m_p, 1.6726231e-27 * kilogram ) d( Mass, neutronrestmass, m_n, 1.6749286e-27 * kilogram ) d( Mass, deuteronmass, m_d, 3.3435860e-27 * kilogram ) d( Mass, muonmass, m_mu, 1.8835327e-28 * kilogram ) d( Number, finestructureconstant, alpha, elmCoupling / (hBar*c ) ) d( WaveNumber, rydbergconstant, R_inf, m_e * c * sq(alpha) / (2.*h) ) u( Energy, rydbergenergy, h * c * R_inf ) // --- both honor Janne Rydberg (1845-1919) d( InverseMolarity, avogadroconstant, N_A, 6.0221367e+23 per mole ) // --- honors Amedeo Avogadro (1776-1856) u( QuantityOfCharge, faradayconstant, /* F, */ N_A * ePlus ) // --- honors Michael Faraday (1791-1867) d( MolarEntropy, molargasconstant, R, 8.314510 * joule per (mole*kelvin) ) d( Entropy, boltzmannconstant, k, R / N_A ) // --- honors Ludwig Boltzmann (1844-1906) d( StefanBoltzmannConstant, stefanboltzmannconstant, sigma, pi2 * sq(sq(k)) / (60. * c2 * cub(hBar)) ) d( Energy, electronvolt, eV, ePlus * volt ) d( Mass, atomicmassunit, amu, 1.6605402e-27 * kilogram ) a( Mass, m_u, amu ) d( Mass, dalton, Da, amu ) // --- honors John Dalton (1766-1844) u( Mass, amu_chem, 1.66026e-27 * kilogram ) u( Mass, amu_phys, 1.65981e-27 * kilogram ) d( MagneticDipoleMoment, bohrmagneton, mu_B, ePlus * hBar / (2. * m_e) ) // --- honors Niels Bohr (1885-1962) d( MagneticDipoleMoment, nuclearmagneton, mu_N, ePlus * hBar / (2. * m_p) ) d( Mass, planckmass, m_P, sqrt( hBar * c per G_N) ) d( Length, plancklength, l_P, hBar / (m_P * c) ) d( Time, plancktime, t_P, l_P / c ) // --- all three honor Max Planck (1858-1947) d( Energy, hartree, E_h, 2. * R_inf * h * c ) // --- honors D. R. Hartree (1897-1958) d( Length, classicalelectronradius, r_e, elmCoupling / (m_e*c2 ) ) d( Length, comptonwavelength, lambdaBar_C, r_e / alpha ) d( Length, bohrradius, a_0, lambdaBar_C / alpha ) a( Length, a_inf, bohrradius ) // --- both honor Niels Bohr (1885-1962) d( Area, thomsoncrosssection, sigma_e, 8.*pi * sq(r_e) / 3. ) d( MagneticDipoleMoment, muonmagneticmoment, mu_mu, 4.4904514 * joule per tesla ) d( MagneticDipoleMoment, protonmagneticmoment, mu_P, 1.41060761 * joule per tesla ) d( MagneticDipoleMoment, neutronmagneticmoment, mu_n, 0.96623707 * joule per tesla ) d( MagneticDipoleMoment, deuteronmagneticmoment, mu_d, 0.43307375 * joule per tesla ) u( Temperature, standardtemperature, 273.15 * kelvin ) u( Temperature, icepoint, standardtemperature ) u( Temperature, triplepoint, standardtemperature ) u( Pressure, standardpressure, atmosphere ) u( MolarVolume, idealgasvolume, R * icepoint / atmosphere ) // ====================================================================== // // Selected dimensionless constants and units: // // ====================================================================== // ----- Simple fractions: // u( Number, semi_, 0.5 ) u( Number, hemi_, 0.5 ) u( Number, demi_, 0.5 ) u( Number, half_, 0.5 ) u( Number, quarter_, 0.25 ) // ----- Other simple numbers: // u( Number, one, 1. ) u( Number, dozen, 12. ) u( Number, score, 20. ) // skor (Norse) "notch cut in a stick" u( Number, flock, 40. ) u( Number, gross, sq(dozen) ) u( Number, bakersdozen, 13. ) u( Number, greatgross, 12. * gross ) u( Number, quire, 25. ) u( Number, ream, 20. * quire ) // rizmah (Arabic) "bundle" u( Number, hundred, 100. ) u( Number, thousand, 1000. ) u( Number, million, 1000000. ) u( Number, googol, 1e+100 ) // ----- US big numbers (17th century origin): // u( Number, billion, 1e+09 ) u( Number, trillion, 1e+12 ) u( Number, quadrillion, 1e+15 ) u( Number, quintillion, 1e+18 ) u( Number, sextillion, 1e+21 ) u( Number, septillion, 1e+24 ) u( Number, octillion, 1e+27 ) u( Number, nonillion, 1e+30 ) u( Number, decillion, 1e+33 ) // ----- UK big numbers are successive powers of million (16th century): // u( Number, milliard, billion ) u( Number, brbillion, million * million ) u( Number, brtrillion, brbillion * million ) u( Number, brquadrillion, brtrillion * million ) u( Number, brquintillion, brquadrillion * million ) u( Number, brsextillion, brquintillion * million ) u( Number, brseptillion, brsextillion * million ) u( Number, broctillion, brseptillion * million ) u( Number, brnonillion, broctillion * million ) u( Number, brdecillion, brnonillion * million ) // ----- Concentrations and proportions: // u( Number, percent, reciprocal hundred ) u( Number, perthousand, reciprocal thousand ) d( Number, permillion, ppm, reciprocal million ) d( Number, perbillion, ppb, reciprocal billion ) d( Number, pertrillion, ppt, reciprocal trillion ) d( Number, proof, prf, reciprocal 200. ) u( Number, karat, /*kt,*/ reciprocal 24. ) u( Number, caratgold, karat ) u( Number, basispoint, 0.01 * percent ) u( Number, brix, percent ) // --- honors Adolph Brix ( -1870) d( Number, fineness, fine, 0.001 ) u( Number, mill, 0.001 ) // ----- PlaneAngle units: // u( PlaneAngle, centrad, centi_ * radian ) d( PlaneAngle, milliradian, mrad, milli_ * radian ) d( PlaneAngle, revolution, rev, twopi * radian ) u( PlaneAngle, turn, revolution ) d( PlaneAngle, circle, cir, revolution ) d( PlaneAngle, degree, deg, circle / 360. ) d( PlaneAngle, arcdegree, arcdeg, degree ) d( PlaneAngle, arcminute, arcmin, arcdegree / 60. ) d( PlaneAngle, arcsecond, arcsec, arcminute / 60. ) u( PlaneAngle, rightangle, 90. * degree ) u( PlaneAngle, quadrant, circle / 4. ) u( PlaneAngle, sextant, circle / 6. ) u( PlaneAngle, sign, circle / 12. ) u( PlaneAngle, dekan, circle / 36. ) u( PlaneAngle, milangle, circle / 6400. ) d( PlaneAngle, grade, grd, rightangle / 100. ) u( PlaneAngle, gon, rightangle / 100. ) u( PlaneAngle, centesimalminute, grade / 100. ) u( PlaneAngle, centesimalsecond, centesimalminute / 100. ) // ----- SolidAngle units: // u( SolidAngle, sphere, 4. * pi * steradian ) u( SolidAngle, space, 4. * pi * steradian ) u( SolidAngle, hemisphere, hemi_ * sphere ) u( SolidAngle, octant, sphere / 8. ) u( SolidAngle, sphericalrightangle, halfpi * steradian ) u( SolidAngle, squareDegree, pi2 * steradian / sq(180.) ) u( SolidAngle, squareMinute, squareDegree / sq(60.) ) u( SolidAngle, squareArcmin, squareMinute ) u( SolidAngle, squareSecond, squareMinute / sq(60.) ) u( SolidAngle, squareArcsec, squareSecond ) // ----- Computing units: // u( Number, bit, 1. ) u( Number, nybble, 4. * bit ) u( Number, byte, 8. * bit ) d( Number, kilobyte, Kbyte, 1024. * byte ) d( Number, megabyte, Mbyte, 1024. * kilobyte ) a( Number, meg, megabyte ) d( Number, gigabyte, Gbyte, 1024. * megabyte ) a( Number, gig, gigabyte ) d( Number, terabyte, Tbyte, 1024. * gigabyte ) d( Number, petabyte, Pbyte, 1024. * terabyte ) d( Number, exabyte, Xbyte, 1024. * petabyte ) // ====================================================================== // // Selected single-dimension units: // // ====================================================================== // ----- Linear measure (metric): // u( Length, metre, meter ) u( Length, decameter, deka_ * meter ) d( Length, kilometer, km, kilo_ * meter ) u( Length, spat, tera_ * meter ) d( Length, nauticalmile, NM, 1852. * meter ) u( Length, geographicalmile, nauticalmile ) u( Length, cable, nauticalmile / 10. ) u( Length, braccio, 0.7 * meter ) u( Length, decimeter, deci_ * meter ) d( Length, centimeter, cm, centi_ * meter ) d( Length, millimeter, mm, milli_ * meter ) u( Length, French, millimeter / 3. ) u( Length, micrometer, micro_ * meter ) u( Length, micron, micro_ * meter ) // meter / million d( Length, nanometer, nm, nano_ * meter ) u( Length, bicron, pico_ * meter ) // meter / brbillion u( Length, fermi, femto_ * meter ) // --- honors Enrico Fermi (1901-1954) u( Length, angstrom, 1e-10 * meter ) // --- honors Anders Jon Angstrom (1814-1874) u( Length, rowland, angstrom ) d( Length, Xunit, Xu, 1.00202e-13 * meter ) u( Length, siegbahn, Xunit ) // honors Karl Manne Georg Siegbahn (1886- ) d( Length, astronomicalunit, AU, 1.4959787066e+11 * meter ) a( Length, au, astronomicalunit ) d( Length, parsec, pc, AU per arcsecond ) d( Length, megaparsec, Mpc, mega_ * parsec ) // ----- Linear measure (English): // d( Length, inch, in, 2.54 * centimeter ) u( Length, caliber, 0.01 * inch ) u( Length, mil, 0.001 * inch ) u( Length, digit, 0.75 * inch ) // digitus (Latin) finger u( Length, fingerbreadth, 0.875 * inch ) u( Length, barleycorn, inch / 3. ) u( Length, em, inch / 6. ) u( Length, pica, inch / 6. ) u( Length, point, inch / 72. ) u( Length, nail, 2.25 * inch ) u( Length, palm, 3. * inch ) u( Length, hand, 4. * inch ) u( Length, fingerlength, 4.5 * inch ) u( Length, span, 9. * inch ) u( Length, USpalm, 9. * inch ) u( Length, quarter, 9. * inch ) u( Length, breadth, 9. * inch ) d( Length, foot, ft, 12. * inch ) u( Length, engineerslink, foot ) u( Length, ramsdenslink, engineerslink ) u( Length, cubit, 18. * inch ) // cubitum (Latin) "elbow" u( Length, pace, 30. * inch ) u( Length, USmilitarypace, pace ) u( Length, USdoubletimepace, 36. * inch ) u( Length, geometricpace, 5. * foot ) d( Length, yard, yd, 3. * foot ) u( Length, goad, 4.5 * foot ) u( Length, thread, 4.5 * foot ) u( Length, standardguage, 4. * foot + 8.5 * inch ) u( Length, engineerschain, 100. * foot ) u( Length, ramsdenschain, engineerschain ) u( Length, bolt, 120. * foot ) u( Length, skein, 360. * foot ) d( Length, mile, mi, 5280. * foot ) // milia passuum (Latin) "thousand paces" u( Length, seamile, 6000. * foot ) u( Length, marathon, 26.*mile+385.*yard ) u( Length, spindle, 14400. * yard ) u( Number, USsurvey_, 1200/3937 * meter per foot ) u( Length, fathom, 6. * USsurvey_ * foot ) u( Length, rod, 16.5 * USsurvey_ * foot ) u( Length, pole, rod ) u( Length, perch, rod ) u( Length, link, 0.04 * rod ) d( Length, chain, ch, 4. * rod ) u( Length, furlong, 40. * rod ) u( Length, statutemile, USsurvey_ * mile ) u( Length, league, 3. * statutemile ) u( Length, surveychain, chain ) u( Length, gunterschain, chain ) // ----- Quadratic measure (metric): // d( Area, squaremeter, m2, sq( meter) ) d( Area, squaremillimeter, mm2, sq(millimeter) ) d( Area, squarecentimeter, cm2, sq(centimeter) ) d( Area, squarekilometer, km2, sq( kilometer) ) u( Area, are, /*a,*/ sq(10. * meter) ) d( Area, hectare, ha, hecto_ * are ) d( Area, centitare, ca, centi_ * are ) u( Area, barn, 1e-28 * sq(meter) ) d( Area, millibarn, mbarn, milli_ * barn ) u( Area, microbarn, micro_ * barn ) u( Area, nanobarn, nano_ * barn ) u( Area, shed, 1e-52 * sq(meter) ) u( FluidFlowPermeability, darcy, 9.8692327e-13 * sq(meter) ) // --- honors H. P. G. Darcy (1803-1858) // ----- Quadratic measure (English): // u( Area, acre, 160. * sq(rod) ) u( Area, rood, 0.25 * acre ) u( Area, section, sq(statutemile) ) u( Area, homestead, 0.25 * section ) u( Area, quartersection, 0.25 * section ) d( Area, township, twp, 36. * section ) // ----- Cubic measure (metric): // d( Volume, cubicMeter, m3, cub( m) ) u( Volume, stere, cub( m) ) // stereos (Greek) "solid" d( Volume, cubicMillimeter, mm3, cub(mm) ) d( Volume, cubicCentimeter, cm3, cub(cm) ) u( Volume, cc, cub(cm) ) d( Volume, cubicKilometer, km3, cub(km) ) d( Volume, liter, L, 1e-3 * m3 )// litra (Latin) u( Volume, litre, liter ) u( Volume, deciliter, deci_ * liter ) d( Volume, centiliter, cL, centi_ * liter ) d( Volume, milliliter, mL, milli_ * liter ) u( Volume, oldliter, 1.000028 * cub(decimeter) ) u( Volume, split, 200. * milliliter ) u( Volume, magnum, 1.5 * liter ) u( Volume, immi, 1.5 * liter ) u( Volume, jeroboam, 2. * magnum ) u( Volume, rehoboam, 3. * magnum ) u( Volume, methuselah, 4. * magnum ) u( Volume, salmanazar, 6. * magnum ) u( Volume, balthazar, 8. * magnum ) u( Volume, nebuchadnezzar, 10. * magnum ) // ----- Cubic measure (US, dry): // u( Volume, drypint, /*pt,*/ 33.60 * cub(inch) ) u( Volume, dryquart, /*qt,*/ 2. * drypint ) u( Volume, drygallon, 4. * dryquart ) d( Volume, peck, pk, 8. * dryquart ) d( Volume, bushel, bu, 4. * peck ) u( Volume, strike, 2. * bushel ) u( Volume, sack, 3. * bushel ) u( Volume, coomb, 4. * bushel ) u( Volume, seam, 8. * bushel ) d( Volume, chaldron, chd, 36. * bushel ) u( Volume, wey, 40. * bushel ) u( Volume, last, 80. * bushel ) u( Volume, drybarrel, 210. * drypint ) d( Volume, boardfoot, fbm, foot * foot * inch ) u( Volume, cordfoot, 4.*1.*4. * cub(foot) ) u( Volume, cord, 4.*8.*4. * cub(foot) ) u( Volume, faggot, (3./pi) * cub(foot) ) u( Volume, acrefoot, acre * USsurvey_ * foot ) u( Volume, barrelbulk, 5. * cub(foot) ) u( Volume, freightton, 8. * barrelbulk ) u( Volume, shippington, freightton ) u( Volume, registerton, 20. * barrelbulk ) // ----- Cubic measure (US, liquid): // d( Volume, gallon, gal, 231. * cub(inch) ) // galeta (Latin) "pailful" u( Volume, firkin, 9. * gallon ) u( Volume, liquidbarrel, 3.5 * firkin ) d( Volume, petroleumbarrel, bbl, 42. * gallon ) u( Volume, hogshead, 2. * liquidbarrel ) u( Volume, pipe, 2. * hogshead ) u( Volume, butt, 2. * hogshead ) // buttis (Latin) "a large cask" u( Volume, tun, 2. * pipe ) u( Volume, fifth, gallon / 5. ) d( Volume, quart, qt, gallon / 4. ) d( Volume, pint, pt, quart / 2. ) u( Volume, cup, pint / 2. ) d( Volume, gill, gi, cup / 2. ) u( Volume, noggin, gill ) d( Volume, fluidounce, floz, gill / 4. ) u( Volume, jigger, 1.5 * fluidounce ) d( Volume, tablespoon, tbsp, fluidounce / 2. ) d( Volume, teaspoon, tsp, tablespoon / 3. ) u( Volume, coffeespoon, teaspoon / 2. ) d( Volume, dessertspoon, dsp, teaspoon * 2. ) u( Volume, pinch, teaspoon / 8. ) u( Volume, dash, pinch / 2. ) d( Volume, fluidram, fldr, fluidounce / 8. ) u( Volume, minim, /*min,*/ fluidram / 60. ) // minimus (Latin) "small" d( Volume, drop, gtt, minim ) // gutta (Latin) "drop" a( Volume, CCF, 100. * cub(foot) ) // ----- Inverse length: // u( WaveNumber, kayser, reciprocal centimeter ) // --- honors J. H. G. Kayser (1853-1940) u( WaveNumber, balmer, reciprocal centimeter ) // --- honors J. J. Balmer (1825-1898) d( LensRefraction, diopter, dpt, reciprocal meter ) u( LensRefraction, dioptre, diopter ) // ----- Fuel utilization: // u( Mileage, mpg, mile per gallon ) // ----- Mass measure (metric): // u( Mass, gramme, gram ) d( Mass, gram, g, milli_ * kilogram ) d( Mass, centigram, cg, centi_ * gram ) d( Mass, milligram, mg, milli_ * gram ) d( Mass, carat, ct, 200. * milligram ) u( Mass, metriccarat, carat ) u( Mass, metricgrain, carat / 4. ) u( Mass, crith, .089885 * gram ) u( Mass, metricounce, 25. * gram ) u( Mass, mounce, metricounce ) u( Mass, metricslug, 9.80665 * kilogram ) u( Mass, hyl, 9.80665 * kilogram ) a( Mass, key, kilogram ) u( Mass, myriagram, 10. * kilogram ) d( Mass, quintal, q, 100. * kilogram ) d( Mass, zentner, Ztr, 50. * kilogram ) d( Mass, doppelzentner, Dz, 100. * kilogram ) u( Mass, metricton, mega_ * gram ) u( Mass, tonne, metricton ) // ----- Mass measure (avoirdupois): // d( Mass, grain, gr, 6.479891e-5 * kilogram ) d( Mass, pound, lb, 7000. * grain ) // libra (Latin) "scale" d( Mass, ounce, oz, pound / 16. ) // onza (old Italian) "ounce" d( Mass, dram, dr, ounce / 16. ) u( Mass, avoirdupoispound, pound ) u( Mass, avoirdupoisounce, ounce ) u( Mass, avoirdupoisdram, dram ) u( Mass, shorthundredweight, 100. * pound ) d( Mass, hundredweight, cwt, shorthundredweight ) d( Mass, cental, cH, shorthundredweight ) u( Mass, ton, 2000. * pound ) u( Mass, shortton, ton ) u( Mass, clove, 7. * pound ) u( Mass, stone, 14. * pound ) u( Mass, longhundredweight, 112. * pound ) u( Mass, UKton, 2240. * pound ) u( Mass, longton, UKton ) u( Mass, slug, 32.1740 * pound ) u( Mass, geepound, slug ) d( Mass, assayton, AT, 29.1667 * gram ) u( Mass, UKassayton, 32.667 * gram ) // ----- Mass measure (troy): // u( Mass, troygrain, grain ) d( Mass, pennyweight, pwt, 24. * troygrain ) a( Mass, dwt, pennyweight ) d( Mass, troyounce, ozt, 20. * pennyweight ) d( Mass, troypound, lbt, 12. * troyounce ) u( Mass, jewelerspoint, carat / 100. ) // ----- Mass measure (apothecaries'): // d( Mass, apothecariesgrain, apgr, grain ) u( Mass, scruple, /*s,*/ 20. * apothecariesgrain ) d( Mass, apothecariesdram, apdr, 3. * scruple ) d( Mass, apothecariesounce, apoz, 8. * apothecariesdram ) d( Mass, apothecariespound, aplb, 12. * apothecariesounce ) // = troypound // ----- Time measure: // d( Time, millisecond, ms, milli_ * second ) d( Time, microsecond, us, micro_ * second ) d( Time, nanosecond, ns, nano_ * second ) d( Time, picosecond, ps, pico_ * second ) u( Time, shake, 1e-8 * second ) u( Time, svedberg, /*S,*/ 0.1 * picosecond ) // --- honors Theodor Svedberg (1884-1971) d( Time, minute, min, 60. * second ) // minuta primam (Latin) "first small one" d( Time, hour, hr, 60. * minute ) // hora (ancient Greek) "season" d( Time, day, da, 24. * hour ) d( Time, week, wk, 7. * day ) u( Time, sennight, 7. * day ) u( Time, fortnight, 14. * day ) // "fourteen nights" u( Time, lunarmonth, 29.5305555 * day ) u( Time, synodicmonth, lunarmonth ) d( Time, calendaryear, a, 365. * day ) u( Time, commonyear, calendaryear ) u( Time, tropicalyear, 365.242198781 * day ) u( Time, solaryear, tropicalyear ) d( Time, year, yr, tropicalyear ) u( Time, lunaryear, 12. * lunarmonth ) u( Time, leapyear, 366. * day ) u( Time, julianyear, 365.25 * day ) u( Time, gregorianyear, 365.2425 * day ) d( Time, month, mo, year / 12. ) u( Time, olympiad, 4. * year ) u( Time, decade, 10. * year ) u( Time, century, 100. * year ) u( Time, millenium, 1000. * year ) u( Time, saros, 223. * lunarmonth ) u( Time, watch, 4. * hour ) u( Time, bell, watch / 8. ) u( Time, biennium, 2. * year ) a( Time, Ma, mega_ * year ) a( Time, Ga, giga_ * year ) d( Time, aeon, Ta, tera_ * year ) u( Time, siderealsecond, 0.99726956 * second ) u( Time, siderealminute, 60. * siderealsecond ) u( Time, siderealhour, 60. * siderealminute ) u( Time, siderealday, 24. * siderealhour ) u( Time, siderealmonth, 27.321661 * day ) u( Time, siderealyear, 3.155815e+7 * second ) u( Time, blink, 1e-05 * day ) u( Time, ce, 0.01 * day ) u( Time, cron, 1e+06 * year ) d( TimeSquared, second2, s2, sq(second) ) u( Frequency, cycle, hertz ) d( Frequency, kilohertz, kHz, kilo_ * hertz ) d( Frequency, megahertz, MHz, mega_ * hertz ) d( Frequency, baudrate, baud, bit per second ) // --- honors J. M. E. Baudot (1845-1903) u( Frequency, bps, baudrate ) u( Frequency, rpm, revolution per minute ) u( Frequency, fresnel, tera_ * hertz ) // --- honors Augustin Jean Fresnel (1788-1827) u( Frequency, pulsatance, radian per second ) u( Frequency, perannum, reciprocal year ) d( Frequency, perdiem, QD, reciprocal day ) // quaque diem (Latin) a( Frequency, QH, reciprocal hour ) // quaque hora (Latin) d( Activity, rutherford, Rd, mega_ * becquerel ) // --- honors Ernest, Lord Rutherford (1871-1937) d( Activity, curie, Ci, 3.7e+10 * becquerel ) // --- honors Pierre (1859-1906) and Marie Sklodowska (1867-1934) Curie d( Activity, millicurie, mCi, milli_ * curie ) d( Activity, microcurie, uCi, micro_ * curie ) // ----- Current measure: // a( Current, amp, ampere ) u( Current, galvat, ampere ) // --- honors Luigi Galvani (1737-1798) d( Current, abampere, aA, 10. * ampere ) a( Current, abamp, abampere ) d( Current, biot, Bi, abampere ) // --- honors J. B. Biot (1774-1862) d( Current, statampere, statamp, 3.335635e-10 * ampere ) d( Current, gilbert, Gb, (2.5 / pi) * ampere * turn ) // --- honors William Gilbert (1540-1603) // ----- Temperature measure: // u( InverseTemperature, mired, reciprocal (micro_ * kelvin) ) // ----- LuminousIntensity measure: // u( LuminousIntensity, candle, candela ) // ====================================================================== // // Selected dimension-pair units: // // ====================================================================== // ----- Length-Mass: // u( LineDensity, tex, milligram per meter ) u( LineDensity, drex, deci_ * tex ) u( LineDensity, denier, tex / 9. ) // ----- Length-Time: // u( Velocity, benz, meter per second ) u( Velocity, kine, centimeter per second ) d( Velocity, mach, M, 331.46 * meter per second ) // --- honors Ernst Mach (1838-1916) u( Velocity, mph, mile per hour ) d( Velocity, knot, kt, nauticalmile per hour ) d( Acceleration, Galileo, Gal, centimeter per sq(second) ) // --- honors Galileo Galilei (1564-1642) u( Acceleration, leo, 10. * meter per sq(second) ) u( AccelerationChange, jerk, foot per cub(second) ) u( SpecificEnergy, radiationdose, /*rad,*/ centi_ * gray ) d( DoseEquivalent, rem, Rem, centi_ * sievert ) d( DoseEquivalent, millirem, mRem, milli_ * rem ) d( DoseEquivalent, microrem, uRem, micro_ * rem ) d( KinematicViscosity, stokes, St, sq(centimeter) per second ) // UK // --- honors Sir George Gabriel Stokes (1819-1903) u( KinematicViscosity, stoke, stokes ) // US u( KinematicViscosity, lentor, stokes ) u( VolumeRateOfFlow, cusec, cub(foot ) per second ) u( VolumeRateOfFlow, cumec, cub(meter) per second ) u( RadioactiveConcentration, eman, 1.e-7 * curie per cub(meter) ) u( RadioactiveConcentration, mache, 3.7e-7 * curie per cub(meter) ) // ----- Length-Current: // d( MagneticFieldStrength, oersted, Oe, gilbert per centimeter ) // --- honors Hans Christian Oersted (1777-1851) // ----- Length-AmountOfSubstance: // u( VolumeConcentration, molar, mole per liter ) // ----- Length-LuminousIntensity: // d( Illuminance, phot, ph, lumen per sq(cm) ) d( Illuminance, stilb, sb, candela per sq(centimeter) ) d( Illuminance, apostilb, asb, candela per sq(meter) / pi ) u( Illuminance, blondel, candela per sq(meter) / pi ) // --- honors A. Blondel (1863-1938) d( Illuminance, lambert, Lb, lumen per sq(cm) ) // --- honors Johann Lambert (1728-1777) d( Illuminance, millilambert, mLb, milli_ * lambert ) u( Illuminance, nit, candela per sq(meter) ) // nitere (Latin) "to shine" u( Illuminance, nox, 0.001 * lux ) d( Illuminance, footcandle, ftcd, lumen per sq(foot) ) // ----- Mass-Time: // u( EnergySurfaceDensity, langley, 41840. * joule per sq(meter) ) // --- honors Samuel Pierpont Langley (1834-1906) d( SignalStrength, jansky, Jy, 1e-26 * watt per sq(meter) per hertz ) // --- honors Karl Guthe Jansky (1905-1950) u( SignalStrength, fluxunit, jansky ) u( Metabolism, met, 58.15 * watt per sq(meter) ) u( Irradiance, finsenunit, 1e+5 * watt per sq(meter) ) // --- honors N. R. Finsen (1860-1904) // ----- Mass-AmountOfSubstance: // u( MassConcentration, molal, mole per kilogram ) // ----- Time-Current: // u( Charge, esu, coulomb / 2.99792458e+9 ) d( Charge, abcoulomb, abcoul, 10. * coulomb ) d( Charge, statcoulomb, statcoul, statampere * second ) d( Charge, franklin, Fr, statcoulomb ) // ----- Time-LuminousIntensity: // u( LuminousEnergy, talbot, lumen * second ) // honors William Henry Fox Talbot (1800-1877) u( LuminousEnergy, lumberg, talbot ) // ====================================================================== // // Selected dimension-triple units: // // ====================================================================== // ----- Length-Mass-Time: // u( Momentum, bole, gram * centimeter per second ) d( Force, kilonewton, kN, kilo_ * newton ) d( Force, sthene, sn, kilonewton ) // sthenos (Greek) "strength" u( Force, funal, sthene ) d( Force, meganewton, MN, mega_ * newton ) d( Force, dyne, dyn, 1.e-05 * newton ) // dynamis (Greek) "power" d( Force, gramforce, gf, gram * gravity ) d( Force, kilogramforce, kgf, kilogram * gravity ) u( Force, pond, gram * gravity ) d( Force, kilopond, kp, kilogram * gravity ) d( Force, ounceforce, ozf, ounce * gravity ) d( Force, poundforce, lbf, pound * gravity ) u( Force, kip, kilo_ * poundforce ) u( Force, tonforce, ton * gravity ) u( Force, UKtonforce, UKton * gravity ) u( Force, metrictonforce, metricton * gravity ) d( Force, poundal, pdl, slug * gravity ) u( Fluidity, rhe, 10. per pascal per second ) u( Action, planck, joule * second ) // --- honors Max Planck (1858-1947) d( Energy, kilojoule, kJ, kilo_ * joule ) d( Energy, megajoule, MJ, mega_ * joule ) d( Energy, gigajoule, GJ, giga_ * joule ) u( Energy, erg, dyne * centimeter ) // ergon (Greek) "work" d( Energy, kiloelectronvolt, keV, kilo_ * electronvolt ) d( Energy, megaelectronvolt, MeV, mega_ * electronvolt ) d( Energy, gigaelectronvolt, GeV, giga_ * electronvolt ) d( Energy, teraelectronvolt, TeV, tera_ * electronvolt ) d( Energy, calorie_IT, cal_IT, 4.1868 * joule ) // International Table d( Energy, calorie_th, cal_th, 4.184 * joule ) // thermochemical d( Energy, calorie_15, cal_15, 4.18580 * joule ) // 14.5 -> 15.5 degC d( Energy, calorie_20, cal_20, 4.18190 * joule ) // 19.5 -> 20.5 degC d( Energy, calorie_mean, cal_mean, 4.19002 * joule ) // 0 -> 100 degC / 100 d( Energy, calorie, cal, calorie_IT ) // calor (Latin) "heat" u( Energy, thermcalorie, calorie_th ) d( Energy, Calorie, kcal, kilo_ * calorie ) u( Energy, foodcalorie, Calorie ) d( Energy, thermie, th, 1e+6 * calorie_15 ) d( Heat, britishthermalunit, BTU, 1.055056e+3 * joule ) a( Heat, btu_IT, britishthermalunit ) u( Heat, therm, 1.055e+8 * joule ) u( GasFlow, sccm, atmosphere * cub(centimeter) per minute ) u( GasFlow, sccs, atmosphere * cub(centimeter) per second ) u( GasFlow, scfh, atmosphere * cub(ft) per hour ) u( GasFlow, scfm, atmosphere * cub(ft) per minute ) u( GasFlow, slpm, atmosphere * liter per minute ) u( Power, poncelet, 100. * watt ) // --- honors Jean Victor Poncelet (1788-1867) d( Power, kilowatt, kW, kilo_ * watt ) d( Power, megawatt, MW, mega_ * watt ) d( Power, gigawatt, GW, giga_ * watt ) // hurray, Marty McFly! u( Power, abwatt, 0.1 * micro_ * watt ) u( Power, statwatt, 1e-07 * watt ) d( Power, horsepower, hp, 550. * foot * pound * force per second ) u( Power, metrichorsepower, 75. * kilogram * force * meter per second ) u( Power, electrichorsepower, 746. * watt ) u( Power, boilerhorsepower, 9809.50 * watt ) u( Power, waterhorsepower, 746.043 * watt ) u( Power, brhorsepower, 745.70 * watt ) u( Power, donkeypower, 250. * watt ) u( Pressure, bar, 100. * kilo_ * pascal ) d( Pressure, kilobar, kbar, kilo_ * bar ) d( Pressure, millibar, mbar, milli_ * bar ) u( Pressure, vac, millibar ) d( Pressure, atmosphere, atm, 101325. * pascal ) d( Pressure, technicalatmosphere, at, kgf per sq(centimeter) ) d( Pressure, torr, Torr, atm / 760. ) // --- honors Evangelista Torricelli (1608-1647) d( Pressure, barye, ba, dyn per sq(centimeter) ) u( Pressure, barie, barye ) u( Pressure, barad, barye ) u( Pressure, psi, poundforce per sq(inch) ) u( Pressure, ksi, kip per sq(inch) ) d( Pressure, pieze, pz, sthene per sq(meter) ) // piezein (Greek) "press" d( DynamicViscosity, poise, P, gram per centimeter per second ) d( DynamicViscosity, poiseuille, Pl, newton * second per sq(meter) ) // --- both honor Jean Louis Marie Poiseuille (1799-1869) u( DynamicViscosity, reyn, poundforce * second per sq(inch) ) // --- honors Osborne Reynolds (1842-1912) // ----- Length-Time-Current: // d( ElectricDipoleMoment, debye, D, 3.33564e-30 * coulomb * meter ) // --- honors Peter J. W. Debye (1884-1966) // ----- Length-Time-Temperature: // u( SpecificHeat, mayer, joule per gram per kelvin ) // ----- Mass-Time-Current: // d( MagneticFluxDensity, gauss, Gs, abvolt * second per sq(cm) ) // --- honors Karl Friedrich Gauss (1777-1855) u( MagneticFluxDensity, abtesla, gauss ) d( MagneticFluxDensity, kilogauss, kGs, kilo_ * gauss ) u( Exposure, roentgen, /*R,*/ 2.58e-4 * coulomb per kilogram ) // --- honors Wilhelm Konrad Rontgen (1845-1923) u( Exposure, rontgen, roentgen ) // ----- Mass-Time-Temperature: // u( ThermalInsulance, clo, 0.155 * sq(meter) * kelvin per watt ) // ====================================================================== // // Selected dimension-4tuple units: // // ====================================================================== // ----- Length-Mass-Time-Current: // u( MagneticFlux, abweber, 1e-8 * weber ) d( MagneticFlux, maxwell, Mx, abweber ) // --- honors James Clerk Maxwell (1831-1879) u( MagneticFlux, unitpole, 4. * pi * maxwell ) u( MagneticFlux, kappline, 6000. * maxwell ) // --- named by and for Gilbert Kapp u( Inductance, abhenry, nano_ * henry ) u( Inductance, stathenry, 8.987584e+11 * henry ) u( Elastance, daraf, reciprocal farad ) d( Potential, kilovolt, kV, kilo_ * volt ) d( Potential, megavolt, MV, mega_ * volt ) u( Potential, crocodile, megavolt ) u( Potential, abvolt, 10. * nano_ * volt ) u( Potential, statvolt, 299.7930 * volt ) u( Resistance, abohm, nano_ * ohm ) u( Resistance, statohm, 8.987584e+11 * ohm ) u( ElectricResistivity, preece, 1e+13 * ohm * meter ) // honors William Henry Preece (1834-1913) u( Reluctance, sturgeon, reciprocal henry ) u( Conductance, mho, reciprocal ohm ) // = siemens u( Conductance, abmho, reciprocal abohm ) u( Conductance, statmho, 1.112646e-12 * mho ) u( Conductance, absiemens, giga_ * siemens ) d( Capacitance, millifarad, mF, milli_ * farad ) d( Capacitance, microfarad, uF, micro_ * farad ) d( Capacitance, nanofarad, nF, nano_ * farad ) d( Capacitance, picofarad, pF, pico_ * farad ) u( Capacitance, abfarad, giga_ * farad ) u( Capacitance, statfarad, 1.112646e-12 * farad ) u( Capacitance, jar, kilo_ * statfarad ) // ----- Length-Mass-Time-Temperature: // d( Entropy, clausius, Cl, Calorie per kelvin ) // --- honors Rudolf Julius Emanuel Clausius (1822-1888) // ====================================================================== // // Selected dimension-5tuple units: // // ====================================================================== // ----- Length-Mass-Time-Temperature-AmountOfSubstance: // u( MolarHeatCapacity, Clausius, joule per mole per kelvin ) // ====================================================================== // // Miscellaneous constants and units: // // ====================================================================== d( Length, lightyear, ly, lightspeed * julianyear ) u( Length, lightminute, lightspeed * minute ) u( Length, lightsecond, lightspeed * second ) u( Length, hubble, giga_ * lightyear ) // --- honors Edwin Hubble (1889-1953) u( Density, kGasThreshold, cg per cm3 ) d( Area, electroncrosssection, alpha_rcl2, alpha * sq(r_e) ) u( EnergyArea, twopi_mc2_rcl2, twopi * r_e * r_e * m_e * c2 ) u( LuminousEfficacy, luminousEfficacy540, 683. * watt per steradian per candela ) // ====================================================================== // // Undo local notational conveniences: // // ====================================================================== #undef d #undef cub #undef sq #undef reciprocal #undef per // ----------------------------------------------------------------------