Contents
This module implements a general form of a cubic equation of state which can be used for most cubic-type equations of state. The following forms are currently supported:
- Peng-Robinson
- Soave-Redlich-Kwong
All equations come from "The Properties of Gases and Liquids, 4th Edition" by Reid, Prausnitz and Poling. The general cubic equation of state is represented by the following equations:
An equivalent form of the previous equation is:
0 = Z3 − (1 + B − uB)Z2 + (A − uB − (u − w)B2)Z − AB − wB2 − wB3
where Z is the compressibility factor of the mixture, am and bm are properties of the mixture and u and w are parameters which depend on the specific equation of state being used as show in the table below.
Equation | u | w | ΩA | ΩB | αj |
---|---|---|---|---|---|
Peng-Robinson | 2 | -1 | 0.45724 | 0.07780 | (1 + (1 − Tr2)(0.37464 + 1.54226ωj − 0.26992ωj2))2 |
Soave-Redlich-Kwong | 1 | 0 | 0.42748 | 0.08664 | (1 + (1 − Tr2)(0.48 + 1.574ωj − 0.176ωj2))2 |
The properties am and bm are calculated from component specific properties aj and bj as shown below:
am = ∑i∑jyiyj(aiaj)1/2(1 − κij)
bm = ∑iyibi
where Pc, j and Tc, j are the component critical pressures and temperatures, yj is the mole fraction of component j, κij are a set of binary interaction parameters which are specific to the equation of state and ΩA, ΩB and αj are taken from the table above. ωj is the Pitzer acentric factor of each component.
The cubic equation of state is solved for each phase via a call to an external function which automatically identifies the correct root of the cubic and returns the value of Z as a function of A and B along with the first and second partial derivatives.
When using the general cubic equation of state module, users must specify the type of cubic to use. This is done by providing a type option in the equation_of_state_options argument in the Phase definition, as shown in the example below.
from idaes.generic_models.properties.core.eos.ceos import Cubic, CubicType
configuration = {
"phases": {
"Liquid": {
"type": LiquidPhase,
"equation_of_state": Cubic,
"equation_of_state_options": {
"type": CubicType.PR}}}
Cubic equations of state require the following parameters to be defined:
- omega (Pitzer acentricity factor) needs to be defined for each component (in the parameter_data for each component).
- kappa (binary interaction parameters) needs to be defined for each component pair in the system. This parameter needs to be defined in the general parameter_data argument for the overall property package (as it can be used in multiple phases).
Many thermophysical properties are calculated using an ideal and residual term, such that:
p = p0 + pr
The residual term is derived from the partial derivatives of the cubic equation of state, whilst the ideal term is determined using pure component properties for the ideal gas phase defined for each component.
The following equation is used for both liquid and vapor phases, where p indicates a given phase:
ρmass, p = ρmol, p × MWp
where MWp is the mixture molecular weight of phase p.
Molar density is calculated using the following equation
The residual enthalpy term is given by:
The ideal component is calculated from the weighted sum of the (ideal) component molar enthalpies.
Component molar enthalpies by phase are calculated using the pure component method provided by the users in the property package configuration arguments.
The ideal molar isobaric heat capcity term is calculated from the weighted sum of the (ideal) component molar isobaric heat capacity:
Cp, ig0 = ∑jyjCp, ig, j
The residual molar isobaric heat capcity term is given by:
K2 = (u − 1)B − 1
K3 = A − uB − (u − w)B2
K4 = − [AB + wB2 + wB3]
The molar isochoric heat capacity is determined from the value of molar isobaric heat capacity using
where V denotes the molar volume of the mixture,
The residual entropy term is given by:
The ideal component is calculated from the weighted sum of the (ideal) components molar enthalpies.
Component molar entropies by phase are calculated using the pure component methods provided by the users in the property package configuration arguments.
Fugacity is calculated from the system pressure and fugacity coefficients as follows:
The fugacity coefficient is calculated from the departure function of the cubic equation of state as shown below:
For both liquid and vapor phases, the molar Gibbs energy is calculated as the weighted sum of the component molar Gibbs energies for the given phase:
gmol, p = ∑jxp, j × gmol, p, j
where xp, j is the mole fraction of component j in the phase p.
Component molar Gibbs energies are calculated using the definition of Gibbs energy:
gmol, p, j = hmol, p, j − smol, p, j × T
The heat capacity ratio (γ) is given by:
The isothermal speed of sound (cT) can be obtained from
where ρ denotes the mass density of the mixture.
The isentropic speed of sound (cs) is determined from
cs2 = γcT2