流体力学をGoogle Colaboratoryでやります。
まずは準備編です。
#流体力学
流体力学は、物理学の一つですが、大学でやります。なので、対象は大学生以上とします。大学数学がわかっている前提ですやります。
大学卒業してから30年が経過して、当時は大型計算機、その後スーパーコンピューターと呼ばれるもので計算されていました。今では使える人も少ないfortranで書かれていたみたいです。
大学に通う子供が、流体力学を使った研究をするみたいなので、興味を持ったことがきっかけです。
今では、GPGPUでかなりのことができるようになりました。それでも、GPGPUを用いた方法は、あまり紹介されておらず、調べてもよく分からなかったので、勉強がてら触ってみようかと思ったのが動機です。
#GPGPU
Colaboratoryも、pythonを基本言語にしているので、pythonベースで考えます。
pythonの中でも、Numpyは、行列計算を容易にするものです。ほとんどNumpyだけとも言えます。そして、GPGPUで強力なのは、Cupyです。
人工知能関係でpreferred networksが作ったchainerから派生したCupyを使用すると、簡単にGPGPUを使うことができます。Google ColaboratoryにはCupyがプリインストールされているので、便利です。
Google Colaboratoryとpythonについては、ここでは詳しく書かないので、自分で調べてください。
#PySPH
流体力学の中でも計算流体力学は、CFDと呼ばれていますが、その中の一つ粒子法のSPHを当面使います。これ以外を見つけることができなかったのが理由です。