【このコースは誰に向けたものか?】
本コースは、Udemy講座【Pythonによる科学技術計算入門】の応用コース・専門コースにあたります。このコースでは数値流体力学にフォーカスし、流体力学とは何か?、数値流体力学の基礎、また新しい数値流体力学手法である格子ボルツマン法について特に原理的な部分を学ぶコースです。
このコースは格子ボルツマン法を体系的かつ専門に学べる世界初のコースとなります。
このコースはコースⅢになります。
コースⅡで実装した2次元のMRTモデルをベースに3次元モデルに発展させていきます。
コース中ではD3Q19-MRTモデルから始まり、D3Q27-Factorized Central Momentモデル、D3Q27-Cumulantモデルを順に学んでいきます。また最終的には3次元の円柱周りの流れにおいて、Reynolds数100万という乱流域を上記のモデルを使って計算します。
【こんな方に向いています】
・専門的かつハイレベルな科学技術計算に興味のある学生さんや社会人の方
・企業や国の研究機関で働いている研究員の方
・大学の修士課程や博士課程の方・ポスドクの方
・市販の数値流体力学ソフトを使うのではなく内製のソフトウェア開発をフルスクラッチで行いたい方
【フルスクラッチで一緒に実装します】
Google Colab環境でnotebook上にフルスクラッチでアルゴリズムの実装を行います。特にCupyを使ったGPUによる並列計算を採用している為、完成されたコードは実用的でそのままソフトウェア開発に活かせるレベルになります。
またGoogle Colab環境なので仮にデスクトップ + GPUという環境を用意できなかったとしても本講座を受講する事が可能です。
【数値流体力学とは?】
数値流体力学とは科学技術計算の1つの分野で流体の支配方程式であるNavier-Stokes方程式を数値的に解くことで、流体の流れをシミュレーションにより調べる手法です。
【格子ボルツマン法とは?】
格子ボルツマン法は2000年代に入って、急速に発展している数値流体力学の新しい手法となります。特に完全陽解法という性質から並列計算と相性が良く、GPUにより高速化が可能です。今回、CUDAによる実装を行いますが、逐次計算の100倍以上の高速化が可能です。
【何が学べる?】
本コースは専門コースのⅢになります。このコースではコースⅡまでで構築した2次元のコードを3次元に拡張し、3次元の流体計算にフォーカスします。また、CascadeモデルやCumulantモデルといった格子ボルツマンの最高峰のレベルの理論解説及び実装を行っていきます。これにより、実際の産業応用上必要な乱流計算をできるモデル実装に取り組みます。この際にはコースⅡに引き続き、メタプログラミングが活躍します。
また、論文で使用する式の導出もSympyで導出を行います。これにより、仮に教科書に載っていない式でも導出などを自身で行える基礎力が身に付きます。
最後に格子ボルツマンとは直接は関係ないものの、実際の3次元の計算結果を可視化する為に有用なParaViewの使い方や可視化ファイルの作成方法についても学びます。
これら一連の学習を通じて、実際の産業に応用可能な数値計算の技術力を身に付けることができます。
詳細についてはコース概要の動画もご覧ください。