steam, a Fortran90 code which computes various physical properties of water, related to temperature, pressure and density.

Most of these routines use a standard set of SI units. The original routines were written in FORTRAN77. This FORTRAN90 version has been extensively rewritten, with some additional routines for computing quantities such as the viscosity, thermal conductivity, and the Prandtl number.


The computer code and data files described and made available on this web page are distributed under the GNU LGPL license.


steam is available in a FORTRAN90 version.

Related Data and Programs:


STEAM_INTERACT, a FORTRAN90 program which queries the NBS steam table package;

TEST_VALUES, a FORTRAN90 library which stores selected test values of various functions, including certain functions approximated by the steam library.


  1. Lester Haar, John Gallagher, George Kell,
    NBS/NRC Steam Tables: Thermodynamic and Transport Properties and Computer Programs for Vapor and Liquid States of Water in SI Units,
    Hemisphere Publishing Corporation, Washington, 1984,
    LC: TJ270.H3
  2. C A Meyer, R B McClintock, G J Silvestri, R C Spencer,
    ASME Steam Tables: Thermodynamic and Transport Properties of Steam,
    American Society of Mechanical Engineers,
    Fifth Edition, 1983, LC: TJ270.A75.

Source Code:

Last revised on 17 December 2023.