JpGU-AGU Joint Meeting 2017

講演情報

[JJ]Eveningポスター発表

セッション記号 M (領域外・複数領域) » M-IS ジョイント

[M-IS15] [JJ] 地球流体力学:地球惑星現象への分野横断的アプローチ

2017年5月24日(水) 17:15 〜 18:30 ポスター会場 (国際展示場 7ホール)

[MIS15-P01] 格子ボルツマン法による2次元流体コードの開発とcoarray並列化

*三好 淳太1陰山 聡1 (1.神戸大学)

キーワード:格子ボルツマン法、Coarray並列化、Fortran 2008

数値流体力学の比較的新しい計算手法として格子ボルツマン法 (Lattice Boltzmann Method, LBM) が近年注目を集めている. 格子ボルツマン法は多孔質材料中の流れなど, 複雑な流体を比較的簡単に解くことができることと, 大規模な並列計算に適しているという特徴がある.

格子ボルツマン法はすでに成熟した計算手法であるため, すでにオープンソースのシミュレーションコードがいくつか存在し, 典型的な応用問題に対してはそのコードを利用できる環境は整っている. しかし, 本研究ではあえてそのようなコードは利用せず, 新しい格子ボルツマン法コードをゼロから開発した. それは格子ボルツマン法の基本をしっかりと理解するために不可欠であるだけでなく, 将来, 格子ボルツマン法を新しい問題に適用するには自分で作ったコードを発展させるのが結局は効率的であると考えたためである.

本研究は, 格子ボルツマン法を応用した新しい計算手法を将来開発するための基礎研究・開発である. 2次元流体を解く基本的な格子ボルツマン法のシミュレーションコードを開発し, 定量的なテストを行い, さらに並列化も行った.

並列化は Fortran 2008 のcoarray 並列化を採用した. coarrayは格子ボルツマン法のように単純な計算格子を持つ計算手法の並列化に有効である. 実際に格子ボルツマン法コードの coarray 並列化を行ったところ, 現在標準的な並列化手法として広く採用されている MPI による並列化に比べて格段に並列化が容易であるだけでなく, 並列化後のシミュレーションコードの可読性も高いことを確認することができた.

2次元格子ボルツマン法コードのテストとして, クエット流, ポアズイユ流, 粘性の評価計算の3種類の定量的テストを行った. そしてそれぞれの解析解(理論値)と今回開発した格子ボルツマン法コードの計算結果が一致することを確認した.