MPS法

圧縮性流体を取り扱うために提案されたSPH法に対して, 粒子法で非圧縮性流体を取り扱えるように提案されたのが Moving Particle Semi-implicit (MPS)法&note{Koshizuka1996:S. Koshizuka, H. Tamako and Y. Oka, A particle method for incompressible viscous flow with fluid fragmentation, Comput. Fluid Dynamics J., 29(4), 1996.};である. MPS法では粒子数密度を導入し,この密度が一定となるように陰解法で圧力のポアソン方程式を解く. これにより,グローバルに非圧縮性を強制する. 一部分に陰解法を使っているので,Semi-implicitである.

非圧縮性流れの支配方程式

非圧縮流れの支配方程式であるナビエ・ストークス方程式は以下である.

mps.eq1.gif

ここで,mps.eq2.gifは流体の速度,mps.eq3.gifは液体の密度,mps.eq4.gifは粘度,mps.eq5.gifは外力を表す.

粒子間相互作用モデル

MPS法では勾配,発散,ラプラシアン等の微分演算子を,粒子間相互作用モデルに基づき離散化する. まず重み関数mps.eq6.gifを以下のように定義する.

mps.eq7.gif

ここで,mps.eq8.gifは粒子間距離,mps.eq9.gifは有効半径を表す. この式は粒子間距離がmps.eq9.gifより小さい粒子同士でのみ相互作用を及ぼすことを表している. 重み関数mps.eq6.gifを用いて,非圧縮性を強制するために次式で粒子数密度を定義する.

mps.eq10.gif

ここで,mps.eq11.gifは粒子mps.eq12.gifとその近傍粒子mps.eq13.gifの位置ベクトルを表している. 粒子数密度の初期値mps.eq14.gifを特に初期粒子数密度と呼ぶ.

非圧縮性流れにおいて液体の密度は一定である. MPS法では各粒子の粒子数密度mps.eq15.gifmps.eq14.gifとなるようにすることで非圧縮条件を強制する.

粒子間相互作用モデルによる勾配,発散,ラプラシアンの離散化は以下.

  • 勾配 勾配は粒子mps.eq12.gifの位置に対して勾配ベクトルを与える演算子である.
    mps.eq16.gif
    ここで,mps.eq17.gifは次元数mps.eq14.gifは初期粒子数密度である.
  • 発散 発散はベクトルに作用しスカラーを得る演算子である.
    mps.eq18.gif
  • ラプラシアン ラプラシアンは粒子mps.eq12.gifの変数量(ここでは速度,圧力等の物理量)を, 近傍の粒子mps.eq13.gifに重み関数の分布で分配する演算子である.
    mps.eq19.gif
    ここで,mps.eq20.gifは以下.
    mps.eq21.gif

MPS法による粒子位置更新

ナビエ・ストークス方程式(質量保存式と運動量保存式)を離散化する.

mps.eq22.gif

上付は用いる物理量のステップ数を示す. 圧力勾配項は陰的に計算するため,mps.eq23.gifの値を用いる. 粘性項,重力項については陽的に計算する.

まず,粘性項と重力項を計算し,粒子の仮の速度mps.eq24.gif,仮の位置mps.eq25.gifを得る.

mps.eq26.gif
mps.eq27.gif

粘性項mps.eq28.gifはラプラシアンであるので以下のように離散化する.

mps.eq29.gif

粒子位置mps.eq30.gifでの粒子数密度をmps.eq31.gifとし,以下の圧力のポアソン方程式を解くことでmps.eq32.gifを得る.

mps.eq33.gif

粘性項と同様に右辺を離散化すると, mps.eq34.gifに関する線形システムを得る.

mps.eq35.gif

Aは対称疎行列であり,不完全コレスキー分解付共役勾配法(Incomplete Cholesky Decomposition Conjugate Gradient method)などで解くことができる.求めたmps.eq32.gifから,mps.eq36.gifmps.eq37.gifを求める.

mps.eq38.gif
mps.eq39.gif

計算アルゴリズム

MPS法では以下の手順でシミュレーションを進める.

  1. 流れの初期条件を設定
  2. 仮の速度と位置を陽的に計算
  3. 粒子数密度を計算
  4. 圧力のポアソン方程式を解く
  5. 圧力勾配項で速度と位置を修正
  6. 2に戻る

添付ファイル: filemps.eq36.gif 929件 [詳細] filemps.eq37.gif 992件 [詳細] filemps.eq38.gif 973件 [詳細] filemps.eq39.gif 1029件 [詳細] filemps.eq4.gif 981件 [詳細] filemps.eq5.gif 962件 [詳細] filemps.eq6.gif 978件 [詳細] filemps.eq7.gif 979件 [詳細] filemps.eq8.gif 1020件 [詳細] filemps.eq9.gif 1014件 [詳細] filemps.eq24.gif 997件 [詳細] filemps.eq25.gif 955件 [詳細] filemps.eq26.gif 979件 [詳細] filemps.eq27.gif 1008件 [詳細] filemps.eq28.gif 952件 [詳細] filemps.eq29.gif 984件 [詳細] filemps.eq3.gif 972件 [詳細] filemps.eq30.gif 1323件 [詳細] filemps.eq31.gif 950件 [詳細] filemps.eq32.gif 1085件 [詳細] filemps.eq33.gif 932件 [詳細] filemps.eq34.gif 1223件 [詳細] filemps.eq35.gif 986件 [詳細] filemps.eq11.gif 1120件 [詳細] filemps.eq12.gif 1026件 [詳細] filemps.eq13.gif 1041件 [詳細] filemps.eq14.gif 1113件 [詳細] filemps.eq15.gif 1010件 [詳細] filemps.eq16.gif 880件 [詳細] filemps.eq17.gif 946件 [詳細] filemps.eq18.gif 1002件 [詳細] filemps.eq19.gif 1009件 [詳細] filemps.eq2.gif 908件 [詳細] filemps.eq20.gif 923件 [詳細] filemps.eq21.gif 970件 [詳細] filemps.eq22.gif 1042件 [詳細] filemps.eq23.gif 1015件 [詳細] filemps.eq1.gif 1220件 [詳細] filemps.eq10.gif 957件 [詳細]

トップ   編集 凍結 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2024-03-08 (金) 18:06:05