Thermodynamic Properties#
In this section, we describe how Cantera uses species and phase information to calculate thermodynamic properties.
Thermodynamic properties typically depend on information at both the species and phase
levels. Generally, the species thermodynamic model and accompanying coefficient data
specifies how the reference enthalpy and entropy values for each species are calculated
as a function of temperature. The phase model then describes how the species interact
with one another to determine phase properties and species specific properties for a
given thermodynamic state. This includes both the mechanical equation of state
(
- Species Thermodynamic Models
The models and equations that Cantera uses to calculate species thermodynamic properties, such as the NASA 7-parameter polynomial form.
- Phase Thermodynamic Models
The theory behind some of Cantera’s phase models, such as the ideal gas law.
The user must specify the thermodynamic models and provide input data to be used for both levels, and these selections must be compatible with one another. For instance, one cannot pair certain non-ideal species thermodynamic models with an ideal phase model.
The Intensive Thermodynamic State#
Cantera’s phase thermodynamic model, implemented by the C++ ThermoPhase class
and classes derived from it, works only with the intensive thermodynamic state. That is,
all extensive properties (enthalpy, entropy, internal energy, volume, etc.) are computed
for a unit quantity (on a mass or mole basis). For example, there is a method
ThermoPhase::enthalpy_mole() that returns the molar enthalpy (J/kmol), and a method
ThermoPhase::enthalpy_mass() that returns the specific enthalpy (J/kg), but no
method ThermoPhase::enthalpy()
that would return the total enthalpy (J). This is
because class ThermoPhase does not store the total amount (mass or mole) of the
phase.
The intensive state of a single-component phase in equilibrium is fully specified by the
values of any