ThermoC is a modular program package for calculating thermodynamic data (pVT data, caloric data, phase equilibria) of pure fluids and fluid mixtures from equations of state:

  • ThermoC can handle any reasonable equation of state—cubic, non-cubic semiempirical, or multi-parameter reference equations.
  • ThermoC can handle any reasonable mixing rule or mixing theory—1-fluid theory (of course!), mean-density approximation, density-dependent 1-fluid theory, …
    (See here a list of the recently implemented equations of state.)
    Is an equation of state or mixing rule missing that you would like to see included? You can add an equation yourself (and, if you like, send us the source files for inclusion in future releases) or you can contact us.
  • ThermoC can easily be extended to accommodate new equations of state and/or mixing theories. It is a useful tool for developers of thermodynamic theories.
  • ThermoC can calculate a wide range of thermodynamic properties.
    (See here a list of the implemented properties and a few examples.)
  • ThermoC programs can be run in 4 different ways:
    • from the command line: This makes it possible to run them in batch mode or to invoke them through shell scripts, which is useful if large amounts of data must be handled.
    • by means of a shell script that provides some user guidance.
    • through a graphical user interface (GUI) realized with an Internet browser: This can be used for remote computing; the ThermoC programs have to be installed on the web server only.
    • through a graphical user interface interacting with an X server (a somewhat experimental feature).

Click here for a demonstration of ThermoC!

Installation requirements

ThermoC reads and writes ASCII files. It does not use any features specific to an operating system.

The only requirements for installing ThermoC are:

  • a good C++ compiler which is able to handle dynamic libraries (GNU g++ is known to work)
  • the make command (a standard feature of UNIX and Linux)
  • a POSIX compatible command shell (e.g., HP-UX: sh, Linux: bash)
    [optional: This is required for the interactive input script only. The batch commands do not need it.]
  • a web server with PHP5 capabilities (e.g., Apache)
    [optional: This is required for the “web interface” only, the handling of input by means of an Internet browser. The batch commands and the interactive script do not need it.]
  • the mathC library (available here)

How to obtain …?

Send an email message to Ulrich Deiters!
There is no charge for academic institutions.


  1. Install the mathC library (unpack and follow the instructions in math/C++/README)!
  2. Unpack the ThermoC parameter files:
    		gzip -cd thermoc_data.tar.gz | tar -xvf -
  3. Unpack the ThermoC archive:
    		gzip -cd thermoc.tar.gz | tar -xvf -
  4. Make platform-specific changes:
    		cd thermoc
  5. Build the executables:

Note: The recent configure script recognizes Linux and MacOS (Darwin) only. If you have a different operating system, you may have to modify the configure script. Please send us your configure script, and we will build your changes into the official distribution.

The installation of the ThermoC web interface and the GUI require additional steps, which are explained in the documentation accompanying the program package. These features, however, are not necessary for using ThermoC.