Skip to content

polykin.properties.vaporization¤

PL_Ambrose_Walton ¤

PL_Ambrose_Walton(
    T: float, Tc: float, Pc: float, w: float
) -> float

Estimate the vapor pressure of a pure compound using the Ambrose-Walton form of the Pitzer equation.

\[ \ln \frac{P_{vap}}{P_c} = f^{(0)}(T_r) + \omega f^{(1)}(T_r) + \omega^2 f^{(2)}(T_r) \]

where \(P_{vap}\) is the vapor pressure, \(P_c\) is the critical pressure, \(\omega\) is the acentric factor, and \(f^{(0)}\), \(f^{(1)}\) and \(f^{(2)}\) are empirical functions of the reduced temperature.

References

  • BE Poling, JM Prausniz, and JP O'Connell. The properties of gases & liquids, 5th edition, 2001, p. 235.
PARAMETER DESCRIPTION
T

Temperature [K].

TYPE: float

Tc

Critical temperature [K].

TYPE: float

Pc

Critical pressure [Pa].

TYPE: float

w

Acentric factor.

TYPE: float

RETURNS DESCRIPTION
float

Vapor pressure [Pa].

Examples:

Estimate the vapor pressure of butadiene at 268.7 K.

>>> from polykin.properties.vaporization import PL_Ambrose_Walton
>>> pvap = PL_Ambrose_Walton(268.7, Tc=425.0, Pc=43.3e5, w=0.195)
>>> print(f"{pvap:.1e} Pa")
1.0e+05 Pa
Source code in src/polykin/properties/vaporization/pvap.py
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
def PL_Ambrose_Walton(
    T: float,
    Tc: float,
    Pc: float,
    w: float
) -> float:
    r"""Estimate the vapor pressure of a pure compound using the Ambrose-Walton 
    form of the Pitzer equation.

    $$ \ln \frac{P_{vap}}{P_c} 
       = f^{(0)}(T_r) + \omega f^{(1)}(T_r) + \omega^2 f^{(2)}(T_r) $$

    where $P_{vap}$ is the vapor pressure, $P_c$ is the critical pressure,
    $\omega$ is the acentric factor, and $f^{(0)}$, $f^{(1)}$ and $f^{(2)}$ are
    empirical functions of the reduced temperature.

    **References**

    *   BE Poling, JM Prausniz, and JP O'Connell. The properties of gases & 
        liquids, 5th edition, 2001, p. 235.

    Parameters
    ----------
    T : float
        Temperature [K].
    Tc : float
        Critical temperature [K].
    Pc : float
        Critical pressure [Pa].
    w : float
        Acentric factor.

    Returns
    -------
    float
        Vapor pressure [Pa].

    Examples
    --------
    Estimate the vapor pressure of butadiene at 268.7 K.
    >>> from polykin.properties.vaporization import PL_Ambrose_Walton
    >>> pvap = PL_Ambrose_Walton(268.7, Tc=425.0, Pc=43.3e5, w=0.195)
    >>> print(f"{pvap:.1e} Pa")
    1.0e+05 Pa
    """
    Tr = T/Tc
    t = 1.0 - Tr
    f0 = (-5.97616*t + 1.29874*t**1.5 - 0.60394*t**2.5 - 1.06841*t**5)/Tr
    f1 = (-5.03365*t + 1.11505*t**1.5 - 5.41217*t**2.5 - 7.46628*t**5)/Tr
    f2 = (-0.64771*t + 2.41539*t**1.5 - 4.26979*t**2.5 + 3.25259*t**5)/Tr
    return Pc*exp(f0 + w*f1 + (w**2)*f2)