【このコースは誰に向けたものか?】
本コースは、Udemy講座【Pythonによる科学技術計算入門】の応用コース・専門コースにあたります。このコースでは数値流体力学にフォーカスし、流体力学とは何か?、数値流体力学の基礎、また新しい数値流体力学手法である格子ボルツマン法について特に原理的な部分を学ぶコースです。
このコースは格子ボルツマン法を体系的かつ専門に学べる世界初のコースとなります。
このコースはコースⅡになります。格子ボルツマン法の基礎的な理解・実装を完了した状態から開始し、特に乱流にフォーカスして解説・実装を行っていきます。
【こんな方に向いています】
・専門的かつハイレベルな科学技術計算に興味のある学生さんや社会人の方
・企業や国の研究機関で働いている研究員の方
・大学の修士課程や博士課程の方・ポスドクの方
・市販の数値流体力学ソフトを使うのではなく内製のソフトウェア開発をフルスクラッチで行いたい方
【フルスクラッチで一緒に実装します】
Google Colab環境でnotebook上にフルスクラッチでアルゴリズムの実装を行います。特にCupyを使ったGPUによる並列計算を採用している為、完成されたコードは実用的でそのままソフトウェア開発に活かせるレベルになります。
またGoogle Colab環境なので仮にデスクトップ + GPUという環境を用意できなかったとしても本講座を受講する事が可能です。
【数値流体力学とは?】
数値流体力学とは科学技術計算の1つの分野で流体の支配方程式であるNavier-Stokes方程式を数値的に解くことで、流体の流れをシミュレーションにより調べる手法です。
【格子ボルツマン法とは?】
格子ボルツマン法は2000年代に入って、急速に発展している数値流体力学の新しい手法となります。特に完全陽解法という性質から並列計算と相性が良く、GPUにより高速化が可能です。今回、CUDAによる実装を行いますが、逐次計算の100倍以上の高速化が可能です。
【何が学べる?】
本コースは専門コースのⅡになります。このコースでは乱流にフォーカスし、乱流とは何か?乱流と数値流体力学手法、そしてLBMと乱流について学ぶことができます。コースⅠで実装したSRTを拡張したMRT(Multiple Relaxation Time)モデルについて理論的な解説と実装を丁寧に行います。特に一見、難しそうなMRTの実装をSympyによるメタプログラミングを活用した先進的な実装に取り組みます。コースⅡの内容を修了すると2次元LBMの高いReynolds数までの計算が可能になります。
詳細についてはコース概要の動画もご覧ください。