格子気体法
格子気体法(こうしきたいほう、英語:Lattice Gas Cellular Automata)とは、セル・オートマトンに基づくモデルを用いた流体シミュレーション法である。計算空間および流体をそれぞれ格子および粒子で離散化し、粒子に対して衝突および並進と呼ばれる演算を施してその状態を時間発展させることにより、流体の運動を模擬する。格子の形状および衝突ルールの異なるいくつかのバージョンが存在する。
HPPモデル
編集HPPモデルは、1973年にHardy、Pomeau、de Pazzisにより開発されたもので、格子気体セルオートマトンの原型とも言うべきものである。このモデルの特徴は以下の通りである。
このモデルにおける衝突ルールは、「一つの格子に二つの粒子が存在し、それらの速度の方向が互いに平行な時にのみ、二つの粒子の速度が90度回転する」(2体衝突)であり、並進ルールは「すべての粒子は1時間ステップで、その速度の方向のノイマン近傍格子に移動する」である。これらのルールは運動量保存則および質量保存則を模したものである。
FHPモデル
編集FHPモデルは1986年にFrisch、ハシュラヒャー、Pomeauにより開発されたもので、上記HPPモデルの改良である。このモデルではHPPモデルが抱えていたテンソル等方性などの問題が解消されており、現在では格子気体法と言えば通常はこのFHPモデルを用いたもののことを指す。HPPモデルと比較したFHPモデルの特徴は以下の通り。
- 格子は正六角形である。
- 各格子の最大粒子数は7個(初期のバージョンでは6個)である。
- 粒子の速度は正六角形中心から各頂点へ向かう6種および0の合計7種であり、同一格子に存在する二つ以上の粒子は必ず合い異なる速度を持つ。
衝突ルールは運動量保存則を模したものであるが、2体衝突以外にも3~5体衝突が規定されている。
格子気体法によるシミュレーションは、すべて整数演算あるいは真偽値演算から構成することが可能であるため、安定でかつ一般に高速である。