関数IAPWS95_calculate_residual マニュアル

(The documentation of function IAPWS95_calculate_residual)

Last Update: 2023/9/20


◆機能・用途(Purpose)

Wagner and Pruss (2002)の表6.2の数値および表6.5の計算式を用いて 残差項を計算する。
Compute the residual part using the numerical values given in Table 6.2 and the equations given in Table 6.5 of Wagner and Pruss (2002).


◆形式(Format)

#include <IAPWS95/forward.h>
inline struct IAPWS95_residual IAPWS95_calculate_residual
(const double delta,const double tau)


◆引数(Arguments)

delta 規格化した密度(\(\delta=\rho/\rho_c\))。
The normalized density (\(\delta=\rho/\rho_c\)).
tau 規格化した温度の逆数(\(\tau=T_c/T\))。
Inverse of the normalized temperature (\(\tau=T_c/T\)).

これらの変数はWagner and Pruss (2002)の(6.4)式の直後で定義されている。 \(T_c\), \(\rho_c\)は臨界点における温度と密度で IAPWS95/macro.h で与えられている。
These variables are defined just after equation (6.4) of Wagner and Pruss (2002). \(T_c\) and \(\rho_c\) are temperature and density at the critical point, given by IAPWS95/macro.h.


◆戻り値(Return value)

引数で指定した密度・温度における残差項とその導関数の値。 戻り値のメンバの値は以下のようになる。
The values of the residual part and its derivatives at the density and temperature specified by the arguments. The values of the members of the return value are as follows.

メンバ
Member

Quantity
計算式(Wagner and Pruss (2002)の表6.5に基づく)
Formula (from Table 6.5 of Wagner and Pruss (2002))
phi_r 残差項\(\phi^r\)。
The residual part \(\phi^r\).
\[\begin{eqnarray*} & & \sum_{i=1}^7 n_i \delta^{d_i} \tau^{t_i} \nonumber \\ &+& \sum_{i=8}^{51} n_i \delta^{d_i} \tau^{t_i} \exp(-\delta^{c_i}) \nonumber \\ &+& \sum_{i=52}^{54} n_i \delta^{d_i} \tau^{t_i} \exp\left[-\alpha_i(\delta-\epsilon_i)^2 -\beta_i(\tau-\gamma_i)^2\right] \nonumber \\ &+& \sum_{i=55}^{56} n_i \Delta^{b_i}\delta\psi \end{eqnarray*}\]
phi_delta_r \(\phi_{\delta}^r \equiv \PartialDiff{\phi^r}{\delta}\) \[\begin{eqnarray*} & & \sum_{i=1}^7 n_i d_i \delta^{d_i-1} \tau^{t_i} \nonumber \\ &+& \sum_{i=8}^{51} n_i \exp(-\delta^{c_i}) \delta^{d_i-1} \tau^{t_i} (d_i-c_i\delta^{c_i}) \nonumber \\ &+& \sum_{i=52}^{54} n_i \delta^{d_i} \tau^{t_i} \exp\left[-\alpha_i(\delta-\epsilon_i)^2 -\beta_i(\tau-\gamma_i)^2\right] \nonumber \\ & & \left[\frac{d_i}{\delta}-2\alpha_i(\delta-\epsilon_i)\right] \nonumber \\ &+& \sum_{i=55}^{56} n_i\left[\Delta^{b_i} \left(\psi+\delta\PartialDiff{\psi}{\delta}\right) +\PartialDiff{\Delta^{b_i}}{\delta}\delta\psi\right] \end{eqnarray*}\]
phi_deltadelta_r \(\phi_{\delta\delta}^r \equiv \PartialDDiff{\phi^r}{\delta}\) \[\begin{eqnarray*} & & \sum_{i=1}^7 n_i d_i (d_i-1) \delta^{d_i-2} \tau^{t_i} \nonumber \\ &+& \sum_{i=8}^{51} n_i \exp(-\delta^{c_i})\delta^{d_i-2}\tau^{t_i} \left[(d_i-c_i\delta^{c_i})(d_i-1-c_i\delta^{c_i}) -c_i^2\delta^{c_i}\right] \nonumber \\ &+& \sum_{i=52}^{54} n_i \tau^{t_i} \exp\left[-\alpha_i(\delta-\epsilon_i)^2 -\beta_i(\tau-\gamma_i)^2\right] \nonumber \\ & & \left[-2\alpha_i\delta^{d_i} +4\alpha_i^2\delta^{d_i}(\delta-\epsilon_i)^2 -4d_i\alpha_i\delta^{d_i-1}(\delta-\epsilon_i)\right. \nonumber \\ & & \left.+d_i(d_i-1)\delta^{d_i-2}\right] \nonumber \\ &+& \sum_{i=55}^{56} n_i\left[ \Delta^{b_i} \left(2\PartialDiff{\psi}{\delta} +\delta\PartialDDiff{\psi}{\delta}\right) +2\PartialDiff{\Delta^{b_i}}{\delta} \left(\psi+\delta\PartialDiff{\psi}{\delta}\right) \right. \nonumber \\ & & \left. +\PartialDDiff{\Delta^{b_i}}{\delta}\delta\psi \right] \end{eqnarray*}\]
phi_tau_r \(\phi_{\tau}^r \equiv \PartialDiff{\phi^r}{\tau}\) \[\begin{eqnarray*} & & \sum_{i=1}^7 n_i t_i \delta^{d_i} \tau^{t_i-1} \nonumber \\ &+& \sum_{i=8}^{51} n_i t_i \delta^{d_i} \tau^{t_i-1}\exp(-\delta^{c_i}) \nonumber \\ &+& \sum_{i=52}^{54} n_i \delta^{d_i} \tau^{t_i} \exp\left[-\alpha_i(\delta-\epsilon_i)^2 -\beta_i(\tau-\gamma_i)^2\right] \nonumber \\ & & \left[\frac{t_i}{\tau}-2\beta_i(\tau-\gamma_i)\right] \nonumber \\ &+& \sum_{i=55}^{56} n_i \delta \left[ \PartialDiff{\Delta^{b_i}}{\tau}\psi +\Delta^{b_i}\PartialDiff{\psi}{\tau} \right] \end{eqnarray*}\]
phi_tautau_r \(\phi_{\tau\tau}^r \equiv \PartialDDiff{\phi^r}{\tau}\) \[\begin{eqnarray*} & & \sum_{i=1}^7 n_i t_i (t_i-1) \delta^{d_i} \tau^{t_i-2} \nonumber \\ &+& \sum_{i=8}^{51} n_i t_i (t_i-1) \delta^{d_i} \tau^{t_i-2} \exp(-\delta^{c_i}) \nonumber \\ &+& \sum_{i=52}^{54} n_i \delta^{d_i} \tau^{t_i} \exp\left[-\alpha_i(\delta-\epsilon_i)^2 -\beta_i(\tau-\gamma_i)^2\right] \nonumber \\ & & \left\{ \left[\frac{t_i}{\tau}-2\beta_i(\tau-\gamma_i)\right]^2 -\frac{t_i}{\tau^2}-2\beta_i \right\} \nonumber \\ &+& \sum_{i=55}^{56} n_i\delta\left[ \PartialDDiff{\Delta^{b_i}}{\tau}\psi +2\PartialDiff{\Delta^{b_i}}{\tau}\PartialDiff{\psi}{\tau} +\Delta^{b_i}\PartialDDiff{\psi}{\tau} \right] \end{eqnarray*}\]
phi_deltatau_r \(\phi_{\delta\tau}^r \equiv \PartialCrossDiff{\phi^r}{\delta}{\tau}\) \[\begin{eqnarray*} & & \sum_{i=1}^7 n_i d_i t_i \delta^{d_i-1} \tau^{t_i-1} \nonumber \\ &+& \sum_{i=8}^{51} n_i t_i \delta^{d_i-1} \tau^{t_i-1} (d_i-c_i\delta^{c_i})\exp(-\delta^{c_i}) \nonumber \\ &+& \sum_{i=52}^{54} n_i \delta^{d_i} \tau^{t_i} \exp\left[-\alpha_i(\delta-\epsilon_i)^2 -\beta_i(\tau-\gamma_i)^2\right] \nonumber \\ & & \left[\frac{d_i}{\delta}-2\alpha_i(\delta-\epsilon_i)\right] \left[\frac{t_i}{\tau}-2\beta_i(\tau-\gamma_i)\right] \nonumber \\ &+& \sum_{i=55}^{56} n_i \left[ \Delta^{b_i}\left( \PartialDiff{\psi}{\tau} +\delta\PartialCrossDiff{\psi}{\delta}{\tau} \right) +\delta\PartialDiff{\Delta^{b_i}}{\delta} \PartialDiff{\psi}{\tau} \right. \nonumber \\ & & \left. +\PartialDiff{\Delta^{b_i}}{\tau} \left(\psi+\delta\PartialDiff{\psi}{\delta}\right) +\PartialCrossDiff{\Delta^{b_i}}{\delta}{\tau}\delta\psi \right] \end{eqnarray*}\]

ここで\(\psi\), \(\Delta^{b_i}\)とその導関数は関数 IAPWS95_calculate_psi, IAPWS95_calculate_Delta_bi を用いて計算する。 \(n_i\), \(d_i\), \(t_i\), \(c_i\), \(\alpha_i\), \(\epsilon_i\), \(\beta_i\), \(\gamma_i\) (\(i=1,2,\cdots,56\))の値は Wagner and Pruss (2002)の表6.2で与えられている。
Here, \(\psi\), \(\Delta^{b_i}\), and their derivatives are computed using functions IAPWS95_calculate_psi and IAPWS95_calculate_Delta_bi. The values of \(n_i\), \(d_i\), \(t_i\), \(c_i\), \(\alpha_i\), \(\epsilon_i\), \(\beta_i\), and \(\gamma_i\) for \(i=1,2,\cdots,56\) are given in Table 6.2 of Wagner and Pruss (2002).


◆使用例(Example)

const double rho=20.0;
const double T=600.0;
struct IAPWS95_residual values =IAPWS95_calculate_residual(rho/IAPWS95_rhoc,IAPWS95_Tc/T);


◆検証(Validation)

(i)密度\(\rho=838.025\) [kg m\(^{-3}\)], 温度\(T=500\) [K] および (ii)密度\(\rho=358\) [kg m\(^{-3}\)], 温度\(T=647\) [K] の2条件で関数IAPWS95_calculate_residualを用いて残差項の計算を行い、 いずれの場合にもWagner and Pruss (2002)の表6.6と 完全に同じ値が得られることを確認した。
The residual part was computed using the function IAPWS95_calculate_residual with the following two conditions: (i) density \(\rho=838.025\) [kg m\(^{-3}\)] and temperature \(T=500\) [K]; and (ii) density \(\rho=358\) [kg m\(^{-3}\)] and temperature \(T=647\) [K]. In both cases, the results were perfectly identical to the numerical values shown in Table 6.6 of Wagner and Pruss (2002).