関数IAPWS95_iceI_gas_boundary_forward マニュアル

(The documentation of function IAPWS95_iceI_gas_boundary_forward)

Last Update: 2023/9/14


◆機能・用途(Purpose)

指定された温度における氷Iと気体の相境界の圧力を陽関数により計算する。
Compute the pressure on the boundary between the ice I and gas at a given temperature using an explicit function.


◆形式(Format)

#include <IAPWS95/phase.h>
inline double IAPWS95_iceI_gas_boundary_forward(const double T)


◆引数(Arguments)

T 温度 [K]。
A temperature [K].


◆戻り値(Return value)

温度Tにおける氷Iと気体の相境界の圧力P。
The pressure P on the boundary between the liquid I and gas at temperature T.


◆使用例(Example)

double T=260.0;
double P=IAPWS95_iceI_gas_boundary_forward(T);


◆計算式(Formula)

Wagner and Pruss (2002)の(2.21)式 \[\begin{equation} \ln\left(\frac{P}{P_t}\right) =a_1(1-\theta^{-1.5})+a_2(1-\theta^{-1.25}) \label{eq.P} \end{equation}\] \[\begin{equation} \theta=\frac{T}{T_t} \label{eq.theta} \end{equation}\] により相境界の圧力\(P\)を計算する。 ここで\(T_t\), \(P_t\)は 水の3重点の温度・圧力 であり、係数\(a_1\), \(a_2\)は下表の通り与える。
Compute the pressure \(P\) on the phase boundary using Eqs. (\ref{eq.P}) and (\ref{eq.theta}) that are from Eq. (2.21) of Wagner and Pruss (2002), where \(T_t\) and \(P_t\) are the temperature and pressure of the triple point of water, respectively, and the coefficients \(a_1\) and \(a_2\) are given in the table below.

係数
Coefficient

Value
\(a_1\)-13.928169
\(a_2\)34.7078238

この関数では氷Iと気体の相境界の圧力を求めるのであるから 昇華が起きる温度圧力条件でなければならず、 そのためには温度は\(T \leq T_t\)を満たさなければならない。
Because this function computes the pressure on the boundary between the ice I and gas phases, the temperature and pressure must be in the range where the sublimation occurs. This requirement leads to a condition for the temperature \(T \leq T_t\).

Wagner and Pruss (2002)では (\ref{eq.P})式が適用できる温度の下限については明示されていない。 同論文の図2.1に示されているのは\(T\geq 200\) [K]の範囲であり、 この温度範囲において相境界は\(dP/dT>0\)になっている(下に示す図1参照)。 極端な低温になると(\ref{eq.P})式から計算される圧力は \(dP/dT<0\)となって図1のイメージと合わなくなる。 更に温度を下げると相境界の圧力が著しく増大し、 \(T\rightarrow 0\)の極限で\(P\rightarrow\infty\)となる。
The lower limit temperature for the valid range of Eq. (\ref{eq.P}) is not clear in Wagner and Pruss (2002). Fig. 2.1 of that paper shows a temperature range \(T\geq 200\) [K]; see Fig. 1 below. In this temperature range, \(dP/dT>0\) holds along the phase boundary. At an extremely low temperature, the presure computed from Eq. (\ref{eq.P}) increases by decreasing temperature (\(dP/dT < 0\)); this sign is not consistent with Fig. 1. Further lowering the temperature results in a significant increase in the pressure along the phase boundary. At the limit of \(T\rightarrow 0\), the pressure grows to infinity (\(P\rightarrow\infty\)) according to Eq. (\ref{eq.P}).



図1. IAPWS-95に基づく水の相図。
Fig. 1. The phase diagram of water based on IAPWS-95.

この関数では\(dP/dT>0\)が成り立つ温度範囲を (\ref{eq.P})式の適用可能範囲と考える。 \(X\equiv \ln(P/P_t)\)とおくと\(dP/dT\)と\(dX/d\theta\)は同符号である。 この\(X\)を用いて(\ref{eq.P})式は \[\begin{equation} X=a_1(1-\theta^{-1.5})+a_2(1-\theta^{-1.25}) \label{eq.X} \end{equation}\] と書き直せる。これより \[\begin{equation} \frac{dX}{d\theta} =1.5a_1\theta^{-2.5}+1.25a_2\theta^{-2.25} \label{eq.dXdtheta} \end{equation}\] であり、\(dX/d\theta > 0\)となるのは \[\begin{equation} 1.5a_1\theta^{-2.5}+1.25a_2\theta^{-2.25} > 0 \label{eq.positive_dXdtheta.condition} \end{equation}\] すなわち \[\begin{equation} \theta^{0.25} > -\frac{1.5a_1}{1.25a_2}=-\frac{6a_1}{5a_2} \label{eq.positive_dXdtheta.solution} \end{equation}\] の温度範囲である。温度について明示的に解くと \[\begin{equation} T=T_t\theta > T_t \left(-\frac{6a_1}{5a_2}\right)^4 \sim 14.695 \mbox{ [K]} \label{eq.positive_dPdT.solution} \end{equation}\] となる。
This function assumes that Eq. (\ref{eq.P}) is valid for a temperature range where \(dP/dT>0\). Let us introduce \(X\equiv \ln(P/P_t)\). Then the signs of \(dP/dT\) and \(dX/d\theta\) are identical. Using this \(X\), Eq. (\ref{eq.P}) is rewritten as (\ref{eq.X}), and its differentiation is (\ref{eq.dXdtheta}). A condition for \(dX/d\theta > 0\) is thus (\ref{eq.positive_dXdtheta.condition}), which can be solved for \(\theta\) as (\ref{eq.positive_dXdtheta.solution}). The corresponding temperature range is calculated as Eq. (\ref{eq.positive_dPdT.solution}).

結論として、 \[\begin{equation} T_t\left(-\frac{6a_1}{5a_2}\right)^4 < T \leq T_t \label{eq.T.condition} \end{equation}\] がこの関数を適用可能な温度範囲となる。 この条件が満たされない場合はプログラムをエラー終了する。
In conclusion, Eq. (\ref{eq.T.condition}) gives the valid temperature range for this function. If this requirement is not satisfied, the program finishes as an error.