Units
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 |