Units of measure of a dimensional quantity (e.g., length = a dimensional quanitity , unit of length = meter)


International System of Units (SI) from NIST Reference

The standard SI units are predefined in The International System of Units (NIST Special Publication 330).

Appendix B.8 of NIST Special NIST Guide for use of the SI (Publication 811) lists many non-SI conversion factors.

SI Base Units of the 7 Base Quantities:

Base Quantity Name Symbol
length meter m
mass kilogram kg
time second s
electric current ampere A
thermodynamic temperature kelvin K
amount of substance mole mol
luminous intensity candela cd

Note an anomaly: the basic unit of mass (kg) has a prefix, so have to tolerate g as basic unit also.

Other quantities, called derived quantities, are defined in terms of the seven base quantities via a system of quantity equations.

A useful primer: McKnight, J.G. "Quantities, units, letter symbols, and abbreviations", J. Audio Eng. Soc. 24 (1976) 40-44

A classic text: P.W. Bridgeman, Dimensional Analysis, New Haven: Yale Univ. Press 1922

Software for encoding and converting units

Conversion of units of measurement (html paper) (Lisp)

by GS Novak Jr 1995. See software package at http://www.cs.utexas.edu/~novak/units.html

IEEE Transactions on Software Engineering, vol. 21, no. 8 (August 1995), pp. 651-661


A package for handling units of measure in Lisp

by R Cunis 1992

ACM SIGPLAN Lisp Pointers Homepage archive Volume V Issue 2, April-June 1992 Pages 21 - 25 PDF


Lisp Ontology of Physical Quantities

Greg R. Olsen and Thomas R. Gruber An Ontology for Engineering Mathematics In Jon Doyle, Piero Torasso, & Erik Sandewall, Eds., Fourth International Conference on Principles of Knowledge Representation and Reasoning, Gustav Stresemann Institut, Bonn, Germany, Morgan Kaufmann, 1994.

"The physical-quantities theory defines the basic vocabulary for describing physical quantities in a general form, making explicit the relationships between magnitudes of various orders, units of measure and physical dimensions. It defines the general class physical-quantity and a set of algebraic operators that are total over all physical quantities. Specializations of the physical-quantity class and the operators are defined in other theories (which use this theory).

The theory also describes specific language for physical units such as meters, inches, and pounds, and physical dimensions such as length, time, and mass. The theory provides representational vocabulary to compose units and dimensions from basis sets and to describe the basic relationships between units and physical dimensions. This theory helps support the consistent use of units in expressions relating physical quantities, and it also supports conversion of units needed in calculations."


GNU Units

"GNU Units converts quantities expressed in various systems of measurement to their equivalents in other systems of measurement. Like many similar programs, it can handle multiplicative scale changes. It can also handle nonlinear conversions such as Fahrenheit to Celsius or wire gauge, and it can convert from and to sums of units, such as converting between meters and feet plus inches.

Beyond simple unit conversions, GNU Units can be used as a general-purpose scientific calculator that keeps track of units in its calculations. You can form arbitrary complex mathematical expressions of dimensions including sums, products, quotients, powers, and even roots of dimensions. Thus you can ensure accuracy and dimensional consistency when working with long expressions that involve many different units that may combine in complex ways."

Noted in TCL library (see below): "The ideas behind implementation of this package [TCL] is based in part on code written in 1993 by Adrian Mariano which performed dimensional analysis of unit strings using fixed size tables of C structs. After going missing in the late 1990's, Adrian's code has reappeared in the GNU Units program at http://www.gnu.org/software/units/"


Units of Measure in F#

"Floating point and signed integer values in F# can have associated units of measure, which are typically used to indicate length, volume, mass, and so on. By using quantities with units, you enable the compiler to verify that arithmetic relationships have the correct units, which helps prevent programming errors."


UniData Units

"The UDUNITS-2 package provides support for units of physical quantities. Its three main components are: 1) a C library for units of physical quantities; 2) a utility; for obtaining the definition of a unit and for converting numeric values between compatible units; and 3) an extensive database of units."


TCL libraries

Robert W. Techentin, summary of NIST Spec. Pbul 330 and 811 for use with TCL libraries:

"This library provides a conversion facility from a variety of scientific and engineering shorthand notations into floating point numbers. This allows application developers to easily convert values with different units into uniformly scaled numbers. The units conversion facility is also able to convert between compatible units. If, for example, a application is expecting a value in ohms (Resistance), and the user specifies units of milliwebers/femtocoulomb, the conversion routine will handle it appropriately. An error will be generated if an incorrect conversion is attempted.

Values are scaled from one set of units to another by dimensional analysis. Both the value units and the target units are reduced into primitive units and a scale factor. Units are checked for compatibility, and the scale factors are applied by multiplication and division. This technique is extremely flexible and quite robust.

New units and new unit abbreviations can be defined in terms of existing units and abbreviations. It is also possible to define a new primitive unit, although that will probably be unnecessary. New units will most commonly be defined to accommodate non-SI measurement systems, such as defining the unit inch as 2.54 cm."

"The ideas behind implementation of this package [TCL] is based in part on code written in 1993 by Adrian Mariano which performed dimensional analysis of unit strings using fixed size tables of C structs. After going missing in the late 1990's, Adrian's code has reappeared in the GNU Units program at http://www.gnu.org/software/units/"

Units of Length

Unit Abbr meter point note
pixel px 3.527778E-04 1 this is actualy device dependent, smallest size element that can be drawn on the screen. We’ll set it to 1 point for the moment
point pt 3.527778E-04 1 DTP or postscript point
pica pc 4.233333E-03 12
line ll 2.116667E-03 6
thou, mil 0.000025 0.072
inch [inches] in 0.025400 72
foot [feet] ft 0.304800 864
yard yd 0.914400 2592 3 feet, defined in 1959 to be 0.9144 m
fathom ftm 1.828800 5184
mile, statute mile mi 1,609.344000 4561920 80 chains
nautical mile NM, nmi 1852.000000 5.249764E+06 one minute of arc of latitude; 1 knot = 1 nmi/hour
league 4828.000000 13685760 3 miles
angstrom Å, A 1.000000E-10 2.834646E-07 Unicode: C5, UTF-8: c3 85, html: Å, option-shift-A; Note: should allow lowercase a or å for unit matching as well
micrometer,micron µm,um 1.000000E-06 2.834646E-03
millimeter mm 1.000000E-03 2.834646E+00
centimeter cm 1.000000E-02 2.834646E+01
meter m 1 2.834646E+03
kilometer km 1,000 2.834646E+06
smoot 1.7018000 4824
astronomical unit au 1.495979E+11 4E+14
light year ly 9.460730E+15 3E+19
parsec pc 3.085678E+16 9E+19
furlong fur 201.1680000 570,240 10 chains
peninkulma 10,688.4000000 3.029783E+07 10.6884 km = distance a barking dog can be heard in still air (Finnish)
poronkusema 7,500.0000000 2.125984E+07 7.5 km = distance a reindeer can travel before needing to stop to urinate
Lego duplex unit LDU 0.0040000 11.338583 the spacing between the centres of two adjacent Lego studs is defined as exactly 20 LDU; http://webstaff.itn.liu.se/~stegu/lego/LDUlength.pdf
chain 20.1168000 57,024 22 yards, 4 rods. There are 10 chains in a furlong, and 80 chains in one statute mile. An acre is the area of 10 square chains
rod, pole, perch 5.0292000 14,256 5.5 feet
Earth radius R⊕ 6.371000E+06 1.805953E+10
Hubble length cH0-1 1.305581E+17 3.700859E+20 13.8 billion light years
lunar distance LD 3.844000E+08 1.089638E+12
Bohr radius a0 5.291772E-11 1.500030E-07
natural unit of length λC 3.861593E-13 1.094625E-09
Planck length p 1.616199E-35 4.581351E-32 speed of light is 1 Planck length/1 Planck time
football field 91.4400000 2.592000E+05
football pitch 105.000000 2.976378E+05 approximate; pitch is not standardized
rack unit U 0.0444500 126 1.75 inches
hand h, hh 0.1016000 288 4 inches
nose nse Smallest advantage a horse can win by; http://www1.drf.com/help/help_glossary.html
Short head sh English term; http://www1.drf.com/help/help_glossary.html
head hd http://www1.drf.com/help/help_glossary.html
Short neck snk intermediate between a head and a neck; http://www1.drf.com/help/help_glossary.html
neck nk 0.6096000 1,728 2 feet, a quarter of a length ; http://www1.drf.com/help/help_glossary.html
horse length 1L 2.4384000 6,912 8 feet; http://www1.drf.com/help/help_glossary.html
distance dst 73.1520000 207,360 240 feet; 30 lengths