IAPWS95/given_TP.h マニュアル

(The documentation of IAPWS95/given_TP.h)

Last Update: 2023/9/19


IAPWS95/given_TP.hでは 温度と圧力を与えて他の熱力学変数を計算する関数が定義されている。
Functions to compute thermodynamic properties using given values of temperature and pressure are defined in IAPWS95/given_TP.h.

IAPWS-95の状態方程式は密度と温度が独立変数になっている。 温度と圧力を与えて他の熱力学変数を計算するにはまず密度を求める必要がある。 密度を求める問題は方程式の根を求める問題である。
The IAPWS-95 equation of state uses the density and temperature as the independent variables. Therefore, computation of thermodynamic variables for given temperature and pressure requires computation of the density first. It is a problem of solving the root of an equation.

図1に密度\(\rho\)と温度\(T\)の関数としての圧力\(P\)を示す。 いくつかの温度において、密度の関数としての圧力を示したのが図2-4である。
Fig. 1 shows the pressure \(P\) as a function of the density \(\rho\) and temperature \(T\). Figs. 2-4 show the pressure as a function of the density at several temperatures.



図1. 密度\(\rho\)と温度\(T\)の関数としての圧力\(P\)。
Fig. 1. The pressure \(P\) as a function of the density \(\rho\) and temperature \(T\).

臨界温度よりも高い700 [K]の場合、圧力は密度の単調増加関数になっている(図2)。 したがって、与えられた圧力に対応する密度を数値的に求めるのは容易であり、 例えば2分法によって求められる。
For a temperature of 700 [K] that is higher than that of the critical point, the pressure increases monotonically with the density (Fig. 2). Therefore, it is easy to numerically solving for the density at a given pressure, and this task can be implemented by, for example, the bisection method.

(a) (b)

図2. 温度\(T=700\) [K]における密度\(\rho\)の関数としての圧力\(P\)。
Fig. 2. The pressure \(P\) as a function of the density \(\rho\) at a temperature \(T=700\) [K].

臨界温度よりも低い600 [K]の場合、 密度\(\rho\)を増やしていくと圧力\(P\)は 増加→減少→増加→減少→増加 というパターンを示す(図3)。 したがって圧力によっては最大5つの密度が解の候補となる。 その中の最小の解が気相に対応し、 最初の\(\PartialDiff{P}{\rho}>0\)の区間内にある。 また、最大の解が液相に対応し、 最後の\(\PartialDiff{P}{\rho}>0\)の区間内にある。
For a temperature of 600 [K] that is lower than that of the critical point, the pressure \(P\) shows a pattern of increase → decrease → increase → decrease → increase for an increasing density \(\rho\) (Fig. 3). Therefore, at maximum five solutions of the density are present, dependent on the given pressure. The minimum and maximum solutions correspond to the gas and liquid phases, respectively, which are in the first and last \(\PartialDiff{P}{\rho}>0\) sections.

(a) (b)

図3. 温度\(T=600\) [K]における密度\(\rho\)の関数としての圧力\(P\)。
Fig. 3. The pressure \(P\) as a function of the density \(\rho\) at a temperature \(T=600\) [K].

温度\(T=300\) [K]の場合においても 基本的な特徴は600 [K]の場合と同様であるが、 気相でも液相でもない領域での圧力の変動幅が著しく大きくなる(図4)。
For a temperature \(T=300\) [K], the same characteristics as that of 600 [K] is observed, although the variation of the pressure is significantly large in the regions other than the gas and liquid phases (Fig. 4).

(a) (b)

図4. 温度\(T=300\) [K]における密度\(\rho\)の関数としての圧力\(P\)。
Fig. 4. The pressure \(P\) as a function of the density \(\rho\) at a temperature \(T=300\) [K].

以上の特徴を模式的に示したのが図5である。 温度\(T\)が低い場合、密度\(\rho\)と圧力\(P\)の関係は 図5の黒線のようになり、 \(\PartialDiff{P}{\rho}\)の符号に応じて1-5で示した5つの領域に分かれる。 この黒線と、指定された圧力(図5赤線あるいは青線)との交点の密度が解である。 図5青線のように指定された圧力が十分に高い場合には解が1つだけという場合もありうるが、 多くの場合は図5赤線のように密度-圧力曲線と5箇所で交差し、 したがって密度の解は5つある。 その中の最小の解(領域1)が気相、最大の解(領域5)が液相に対応する。 領域2, 4では\(\PartialDiff{P}{\rho}<0\)となって熱力学不等式を満たさない。 すなわち不安定領域である。 領域3では\(\PartialDiff{P}{\rho}>0\)であるが、 恐らくこれは実在する相ではなく、 気相領域と液相領域を1つの状態方程式で表現した結果として出てきた 人為的なものと思われる。
These characteristics are shown schematically in Fig. 5. In case of a low temperature \(T\), the relation between the density \(\rho\) and pressure \(P\) is like the black line in Fig. 5, which is divided to five regions (labeled as 1-5 in this figure) based on the sign of \(\PartialDiff{P}{\rho}\). The intersections of this curve and the given pressure (red or blue lines in Fig. 5) are the solutions for the density. In some cases where the pressure is high enough, there may be only one solution, as in the case of the blue line in Fig. 5. However, in usual situation, there are five intersections (solutions), as in the case of the red line in Fig. 5. The minimum solution in the region 1 and the maximum one in the region 5 corresponds to the gas and liquid phases, respectively. The regions 2 and 4 are unstable, as the thermodynamic inequality is not satisfied (\(\PartialDiff{P}{\rho}<0\)). Although \(\PartialDiff{P}{\rho}>0\) in the region 3, it seems not correspond to an actual phase; rather, it seems to be an artifact caused by the use of a single equation of state to express both the gas and liquid phases.



図5. 一定温度での密度と圧力の関係の模式図。
Fig. 5. A schematic view of the relation between the density and pressure at a constant temperature.

以上の特徴を踏まえて、IAPWS95/given_TP.hでは 指定された温度・圧力に対応する密度の 最小値(気相)や最大値(液相)を求める関数を用意している。 当初作成した関数が IAPWS95_calculate_min_density_givenTP, IAPWS95_calculate_max_density_givenTP であるが、これらは温度・圧力によっては 密度を正しく求められないことが発覚したので 使用を非推奨とする(図6)。 代わりに作成した関数が IAPWS95_calculate_density_givenTP_liquid, IAPWS95_calculate_density_givenTP_gas, IAPWS95_calculate_density_givenTP_supercritical であり、これらを用いることで液相、気相、超臨界状態での密度を計算できる(図7)。
Based on these features, IAPWS95/given_TP.h provides functions to solve for the minimum and maximum densities, which correspond to the gas and liquid phases, respectively, for a given temperature and pressure. In old days, functions IAPWS95_calculate_min_density_givenTP and IAPWS95_calculate_max_density_givenTP have been developed and used. However, these functions do not return the correct densities for some temperature and pressure (Fig. 6). Therefore, the uses of these functions are discouraged. Instead, use functions IAPWS95_calculate_density_givenTP_liquid, IAPWS95_calculate_density_givenTP_gas, and IAPWS95_calculate_density_givenTP_supercritical to compute the densities for the liquid, gas, and supercritical phases, respectively (Fig. 7).



図6. 古い関数IAPWS95_calculate_min_density_givenTP (気相), IAPWS95_calculate_max_density_givenTP (液相・超臨界流体) を用いて計算した各温度\(T\), 圧力\(P\)での密度\(\rho\)。 黒線は気液相境界。 低温の気体や低圧の超臨界流体において密度が正しく求まっていない。
Fig. 6. The densities \(\rho\) for each temperature \(T\) and pressure \(P\) calculated with old functions IAPWS95_calculate_min_density_givenTP (for the gas phase) and IAPWS95_calculate_max_density_givenTP (for the liquid phase and supercritical fluid). The black line is the liquid-gas boundary. The densities are not correct for low-temperature gas and low-pressure supercritical fluid.



図7. 改良した関数IAPWS95_calculate_density_givenTP_liquid (液相), IAPWS95_calculate_density_givenTP_gas (気相), IAPWS95_calculate_density_givenTP_supercritical (超臨界流体) を用いて計算した各温度\(T\), 圧力\(P\)での密度\(\rho\)。 黒線は気液相境界。
Fig. 7. The densities \(\rho\) for each temperature \(T\) and pressure \(P\) calculated with improved functions IAPWS95_calculate_density_givenTP_liquid (for the liquid phase), IAPWS95_calculate_density_givenTP_gas (for the gas phase), and IAPWS95_calculate_density_givenTP_supercritical (for the supercritical fluid). The black line is the liquid-gas boundary.

このヘッダファイル内で定義されている関数を以下に示す。 各関数の詳細は関数名をクリックしてリンク先を参照のこと。
Functions defined in this header file are listed below. For details of individual functions, click the links.

関数名
Function name
機能・用途
Purpose
IAPWS95_calculate_min_density_givenTP 【使用非推奨】 [Discouraged to use] Wagner and Pruss (2002)の状態方程式を用いて 指定された温度・圧力を与える最小の密度を計算する。
Compute the minimum density which satisfies the given temperature and pressure using the equation of state of Wagner and Pruss (2002).
IAPWS95_calculate_max_density_givenTP 【使用非推奨】 [Discouraged to use] Wagner and Pruss (2002)の状態方程式を用いて 指定された温度・圧力を与える最大の密度を計算する。
Compute the maximum density which satisfies the given temperature and pressure using the equation of state of Wagner and Pruss (2002).
IAPWS95_calculate_density_givenTP_liquid Wagner and Pruss (2002)の状態方程式を用いて 指定された温度・圧力を与える密度(液相)を計算する。
Compute the density of the liquid phase for given temperature and pressure using the equation of state of Wagner and Pruss (2002).
IAPWS95_calculate_density_givenTP_gas Wagner and Pruss (2002)の状態方程式を用いて 指定された温度・圧力を与える密度(気相)を計算する。
Compute the density of the gas phase for given temperature and pressure using the equation of state of Wagner and Pruss (2002).
IAPWS95_calculate_density_givenTP_supercritical Wagner and Pruss (2002)の状態方程式を用いて 指定された温度・圧力を与える密度(超臨界流体)を計算する。
Compute the density of the supercritical fluid for given temperature and pressure using the equation of state of Wagner and Pruss (2002).
IAPWS95_calculate_density_givenTP Wagner and Pruss (2002)の状態方程式を用いて 指定された温度・圧力を与える密度を計算する。 相は温度・圧力に基づいて自動で判定する。
Compute the density for given temperature and pressure using the equation of state of Wagner and Pruss (2002). The phase is automatically identified from the given temperature and pressure.