This Article 
 Bibliographic References 
 Add to: 
Conversion of Units of Measurement
August 1995 (vol. 21 no. 8)
pp. 651-661
Algorithms are presented for converting units of measurement from a given form to a desired form. The algorithms are fast, are able to convert any combination of units to any equivalent combination, and perform dimensional analysis to ensure that the conversion is legitimate. Algorithms are also presented for simplification of symbolic combinations of units. Application of these techniques to perform automatic unit conversion and unit checking in a programming language is described.

[1] M. Abramowitz and I. Segun,Handbook of Mathematical Functions. National Bureau of Standards, 1964; New York: Dover, 1968.
[2] R.A. Ackley,Physical Measurements and the International (SI) System of Units.San Diego, Calif.: Technical Publications, 1970.
[3] A.V. Aho, R. Sethi, and J.D. Ullman, Compilers, Principles, Techniques and Tools.New York: Addison-Wesley, 1985.
[4] American National Standard for Metric Practice, ANSI/IEEE Standard 268-1992, 1992.
[5] IEEE Standard C/ATLAS, IEEE Standard 716-1982.
[6] P.W. Bridgman,Dimensional Analysis.New Haven, Conn.: Yale Univ. Press, 1922.
[7] R.-J. Chang,“Cliche-based modeling for expert problem-solving systems,” PhD diss., Computer Science Dept., Univ. of Texas at Austin, 1992.
[8] R. Cunis,“A package for handling units of measure in Lisp,” ACM Lisp Pointers, vol. 5, no. 2, 1992.
[9] T.R. Gruber and G.R. Olsen,“An ontology for engineering mathematics,” Proc. Fourth Int’l Conf. on Principles of Knowledge Representation and Reasoning.San Mateo, Calif.: Morgan Kaufmann, 1994.
[10] N. Gehani,“Units of measure as a data attribute,” Computing Languages, vol. 2, no. 3, pp. 93-111, 1977.
[11] M. Herlihy and B. Liskov, "A Value Transmission Method for Abstract Data Types," ACM Trans. Program Languages System, vol. 4, no. 4, pp. 527-551, Oct. 1982.
[12] P.N. Hilfinger,“An Ada package for dimensional analysis.” ACM Trans. Programming Languages Syst., vol. 10, no. 2, pp. 189-203, 1988.
[13] A.L. Horvath,Conversion Tables of Units in Science and Engineering.New York: Elsevier, 1986.
[14] Quantities and Units, ISO Standards Handbook, 3rd ed. Geneva, Switzerland: International Organization for Standardization, 1993.
[15] M. Karr and D.B. Loveman,“Incorporation of units into programming languages,” Comm. ACM, vol. 21, no. 5, pp. 385-391, May 1978.
[16] D. Lamb, "IDL: Sharing Intermediate Representations," ACM Trans. Programming Languages and Systems vol. 9, no. 3, pp. 267-318, July 1987.
[17] R. Neches et al., "Enabling Technology for Knowledge Sharing," AI Magazine, Fall 1991, pp. 36-56.
[18] “The International System of Units (SI),” National Inst. Standards Tech. Special Publication 330. Washington, D.C.: U.S. Govt. Printing Office, 1991.
[19] G. Novak,“GLISP: A LISP-based programming system with data abstraction,” AI Magazine, vol. 4, no. 3, pp. 37-47, Fall 1983.
[20] G. Novak,“GLISP user’s manual,” Tech. Rep. STAN-CS-82-895, Computer Science Dept., Stanford Univ., 1982; TR-83-25, A.I. Lab, Computer Science Dept.,Univ. of Texas at Austin.
[21] G. Novak, F. Hill, M. Wan, and B. Sayrs, "Negotiated Interfaces for Software Reuse," IEEE Trans. Software Eng., vol. 18, no. 7, July 1992.
[22] G. Novak, "Software Reuse through View Type Clusters," Proc. Seventh Knowledge-Based Software Engineering Conf., IEEE CS Press, pp. 70-79, 1992.
[23] G. Novak,“Software reuse by specialization of generic procedures through views,” submitted for publication, 1995.
[24] G. Novak, "Generating Programs from Connections of Physical Models," Proc. 10th Conf. Artificial Intelligence for Applications, IEEE CS Press, pp. 224-230, 1994.
[25] F.D. Rossini,Fundamental Measures and Constants for Science and Technology.Cleveland, Ohio: CRC Press, 1974.
[26] C.A. Schulz,“Writing applications for uniform operation on a mainframe or PC: A metric conversion program,” APL Quote Quad, vol. 20, no. 4, pp. 348-361, July 1990.
[27] W.J. Semioli and P.B. Schubert,Conversion Tables for SI Metrication.New York: Industrial Press, 1974.
[28] G. Steele,Common Lisp. Digital Press, 1990.
[29] T. Wildi,Metric Units and Conversion Charts: A Metrication Handbook for Engineers, Technologists, and Scientists, 2nd ed. Piscataway, N.J.: IEEE Press, 1995.

Index Terms:
Unit conversion, unit of measurement, dimensional analysis, data type.
Gordon S. Novak, Jr., "Conversion of Units of Measurement," IEEE Transactions on Software Engineering, vol. 21, no. 8, pp. 651-661, Aug. 1995, doi:10.1109/32.403789
Usage of this product signifies your acceptance of the Terms of Use.