【第3回】OpenFOAMで使うサザーランドの法則。設定ファイルとソースコードから粘性係数モデルを理解する
OpenFOAMで使うサザーランドの法則|設定ファイルとソースコードから粘性係数モデルを理解する
前回までの記事では、サザーランドの法則の概要と、1893年の原著論文をもとにした導出について解説しました。
サザーランドの法則は、気体の粘性係数 $\mu$ が温度 $T$ によってどのように変化するかを表すモデルです。代表的には次の式で表されます。
OpenFOAMでは、このサザーランドの法則が次の形で使われます。
この記事では、OpenFOAMの設定ファイルとソースコードの考え方を対応させながら、サザーランドの法則がOpenFOAM内部でどのように使われているのかを解説します。
- OpenFOAMでサザーランドの法則を使う意味
- 設定ファイル中の
AsとTsの意味 - OpenFOAM内部で使われる粘性係数の式
- 一定粘性係数との違い
- どのような解析でサザーランドモデルを使うべきか
- サザーランドモデルを使うときの注意点
OpenFOAMでサザーランドの法則を使う意味
OpenFOAMでは、解析で使う流体の物性値を設定ファイルで指定します。非圧縮・等温の流れであれば、動粘性係数 $\nu$ を一定値として与えることが多いです。
一方で、圧縮性流れや熱流体解析では、温度変化によって密度、比熱、熱伝導率、粘性係数などが変化します。特に気体では、温度が高くなるほど粘性係数が大きくなる傾向があります。
この温度依存性を考慮するために使われる代表的なモデルが、サザーランドの法則です。OpenFOAMでサザーランドモデルを使うと、各セルの温度 $T$ に応じて粘性係数 $\mu$ が自動的に計算されます。
つまり、温度場が変化すれば、それに合わせて粘性係数も変化します。これは、加熱された空気の流れ、自然対流、圧縮性流れ、高温ガス、冷却を伴う問題などで重要になります。
OpenFOAMで使われるサザーランドの式
OpenFOAMのサザーランドモデルでは、粘性係数は次の形で計算されます。
この式は、次のように変形できます。
ここで、$T\sqrt{T}=T^{3/2}$ なので、
となります。これは、前回の記事で導出したサザーランドの法則
と同じ形です。対応関係は、$A_s$ がサザーランド係数 $C_1$、$T_s$ がサザーランド温度 $S$ です。
設定ファイル中の As と Ts の意味
OpenFOAMでは、空気のサザーランドモデルを使う場合、例えば次のように設定します。
|
1 2 3 4 5 6 7 |
transport { transportModel sutherland; As 1.458e-06; Ts 110.4; } |
ここで、As はサザーランド係数、Ts はサザーランド温度です。空気の場合、代表的には次の値が使われます。
| 係数 | 意味 | 空気の代表値 |
|---|---|---|
As | サザーランド係数 | $1.458 \times 10^{-6}$ |
Ts | サザーランド温度 | $110.4\ \mathrm{K}$ |
この設定を使うと、OpenFOAM内部では次の式で粘性係数が計算されます。
ここで、$T$ は各セルの温度です。つまり、温度場が一様でなければ、粘性係数も空間的に一様ではなくなります。
300 Kでの粘性係数を計算してみる
実際に、OpenFOAMの設定値を使って $T=300\ \mathrm{K}$ の空気の粘性係数を計算してみます。式は次の通りです。
ここに、$A_s=1.458 \times 10^{-6}$、$T_s=110.4\ \mathrm{K}$、$T=300\ \mathrm{K}$ を代入します。
計算すると、
となります。これは、常温付近の空気の粘性係数としてよく知られている値に近いです。
OpenFOAMのソースコードとの対応
OpenFOAMのサザーランドモデルは、ソースコード上では sutherlandTransport というクラスとして実装されています。このクラスは、サザーランドの式を使って動的粘性係数 $\mu$ を計算するtransportモデルです。
ソースコードガイドでは、粘性係数の式は次のように示されています。
これは先ほど確認したように、次の式と同じです。
OpenFOAMのソースコードを読むときには、次の対応を押さえておくと理解しやすくなります。
| OpenFOAMでの名前 | 意味 | 数式上の対応 |
|---|---|---|
mu | 動的粘性係数 | $\mu$ |
T | 温度 | $T$ |
As | サザーランド係数 | $A_s$ または $C_1$ |
Ts | サザーランド温度 | $T_s$ または $S$ |
OpenFOAMでは、設定ファイルから As と Ts を読み込み、温度 $T$ を使って各セルの $\mu$ を計算します。そのため、サザーランドモデルを使う場合、粘性係数は固定値ではなく温度場に依存した量になります。
動的粘性係数と動粘性係数の違い
OpenFOAMを使うときに混乱しやすいのが、動的粘性係数 $\mu$ と動粘性係数 $\nu$ の違いです。両者の関係は次の通りです。
ここで、$\rho$ は密度です。単位は次のようになります。
| 記号 | 名称 | 単位 |
|---|---|---|
| $\mu$ | 動的粘性係数 | $\mathrm{Pa \cdot s}$ または $\mathrm{kg/(m \cdot s)}$ |
| $\nu$ | 動粘性係数 | $\mathrm{m^2/s}$ |
| $\rho$ | 密度 | $\mathrm{kg/m^3}$ |
非圧縮ソルバーでは、transportProperties に動粘性係数 $\nu$ を直接指定することが多いです。一方、圧縮性流れや熱流体解析では、動的粘性係数 $\mu$ を温度から計算し、それを密度 $\rho$ と組み合わせて動粘性係数 $\nu$ に相当する量が扱われます。
そのため、サザーランドの法則を理解するときには、まず「OpenFOAMのサザーランドモデルは $\mu$ を計算するモデルである」と押さえておくと分かりやすいです。
一定粘性係数との違い
粘性係数を一定値として扱う場合、解析領域内のどの場所でも同じ粘性係数を使います。例えば、常温付近の空気であれば、次のような値を固定値として使うことがあります。
温度差が小さい流れであれば、このような一定値でも大きな問題にならない場合があります。しかし、温度差が大きい流れでは、粘性係数の温度依存性を無視できなくなることがあります。
サザーランドモデルを使うと、温度が高い領域では粘性係数が大きくなり、温度が低い領域では粘性係数が小さくなります。つまり、温度場に応じて粘性係数も空間的に変化します。
これにより、熱流体解析において、より現実に近い物性値を使った解析が可能になります。
サザーランドモデルを使うべき解析
サザーランドモデルは、特に気体の温度変化が大きい解析で有効です。例えば、次のような解析ではサザーランドモデルを検討する価値があります。
- 加熱された空気の流れ
- 自然対流解析
- 圧縮性流れ
- 高温ガスの流れ
- 冷却を伴う流れ
- エンジンや燃焼器まわりの流れ
- ノズル流れ
- 外部流れで温度変化を考慮する場合
一方で、温度変化がほとんどない等温流れであれば、一定粘性係数でも十分な場合があります。大切なのは、「温度による粘性変化が解析結果に影響するか」を考えることです。
温度差が小さい問題であれば一定値でもよく、温度差が大きい問題であればサザーランドモデルを使う方が物理的に自然です。
使うときの注意点
サザーランドモデルは便利ですが、どのような流体にも使えるわけではありません。基本的には、空気や窒素、酸素などの気体に対して使われるモデルです。
液体の粘性係数は、気体とは温度依存性の傾向が異なります。液体では温度が上がると粘性が下がることが多いため、サザーランドの法則をそのまま使うのは適切ではありません。
また、極端な高温、低温、高圧、化学反応を伴う流れ、多成分混合気体などでは、より詳細な物性モデルが必要になる場合があります。
さらに、OpenFOAMはFoundation版、OpenCFD版、バージョンによって設定ファイルの書き方や辞書の階層が異なる場合があります。そのため、実際に設定する場合は、自分が使っているOpenFOAMのバージョンのチュートリアルやドキュメントを確認することが重要です。
設定時に確認したいポイント
OpenFOAMでサザーランドモデルを使うときは、次の点を確認するとよいです。
- 使用しているソルバーが熱流体・圧縮性流れに対応しているか
- 温度場 $T$ を解いているか
- 物性モデルで
sutherlandを指定しているか AsとTsの値が対象気体に合っているか- 単位系がSI単位系になっているか
- 一定粘性係数と比較して結果がどの程度変わるか
特に、As と Ts は気体ごとに異なります。空気の値を水蒸気やヘリウムなどにそのまま使うと、物性値が不適切になります。解析対象の気体に対応した係数を使うことが重要です。
OpenFOAMでの理解のポイント
OpenFOAMでサザーランドモデルを理解するうえで重要なのは、設定ファイルの値と数式の対応を押さえることです。設定ファイルでは、次のように書きます。
|
1 2 |
As 1.458e-06; Ts 110.4; |
これは、数式では次の意味です。
したがって、OpenFOAM内部では次の式で $\mu$ が計算されます。
この対応が分かると、OpenFOAMの設定値が単なる数字ではなく、サザーランドの法則の係数であることが理解できます。
第1回・第2回とのつながり
第1回では、サザーランドの法則の概要と、気体の粘性係数が温度によって変化する理由を解説しました。第2回では、分子運動論と分子間力の考え方から、なぜ次の形の式が現れるのかを導出しました。
そして第3回であるこの記事では、その式がOpenFOAMでは次の形で実装されていることを確認しました。
つまり、OpenFOAMの As と Ts は、サザーランドの法則の係数そのものです。サザーランドの法則を単に「設定ファイルに書く値」として覚えるのではなく、分子運動論、導出、OpenFOAMの実装までつなげて理解すると、物性モデルの意味がかなり明確になります。
まとめ
- OpenFOAMでは、サザーランドモデルを使って温度依存の動的粘性係数 $\mu$ を計算できる。
- OpenFOAMで使われる式は $\mu=A_s\sqrt{T}/(1+T_s/T)$ である。
- この式は $\mu=A_sT^{3/2}/(T+T_s)$ と同じである。
Asはサザーランド係数、Tsはサザーランド温度に対応する。- 空気では代表的に
As 1.458e-06;、Ts 110.4;が使われる。 - 温度差が大きい熱流体解析では、一定粘性係数よりもサザーランドモデルの方が物理的に自然である。
- ただし、液体や極端な条件、多成分混合気体では別の物性モデルが必要になる場合がある。
OpenFOAMの設定ファイルに出てくる As や Ts は、単なる経験的な係数ではなく、サザーランドの法則に基づいた粘性係数モデルのパラメータです。
第1回で式の意味を理解し、第2回で導出を追い、第3回でOpenFOAMの設定とソースコードに対応させることで、サザーランドの法則を「使うだけ」ではなく「意味を理解して使う」ことができます。
参考文献
- W. Sutherland, “LII. The viscosity of gases and molecular force,” Philosophical Magazine Series 5, Vol. 36, Issue 223, pp. 507–531, 1893.
- OpenFOAM Source Code Guide:sutherlandTransport
- OpenFOAM User Guide / thermophysical models

