SPH のソースを書き換えようとして、ふと気づきました。
粒子法では計算中に水面を取得するのが面倒?
計算中にどの粒子のどのあたりを自由表面とすべきかがわかりません。なので他の手法のように水深から容易に静水圧を出せません。いえ、post 処理で使っている方法があるので可能ではあるのですが、計算量が多くなります。
で、どうしているかというと、状態方程式から出すようです。
例えば、
「Modelling multi-phase liquid-sediment scour and resuspension
induced by rapid flows using Smoothed Particle Hydrodynamics (SPH)
accelerated with a Graphics Processing Unit (GPU)」
「Smoothed Particle Hydrodynamics: A Meshfree Particle Method」ソース:p408, 409, 400, 本文:137
P=B((ρ/ρ0)^γ-1)
P=c^2ρ
簡単な流儀ですが、慣れるまで時間がかかりそうです。
これまで MPS の解説に触れる機会はあったものの、SPH は多くなかったように思われます。良書が国内になく、また過去の経緯もあり個人的には国内の SPH に良い印象を持っていませんでした。
が、先月から文献や洋書を読み進めていたところ、 比較的新しい研究が多いことに気づかされました。実装も他の手法に比べ容易ですし、プレはCAD + DualSPHysics + Python で済みます。これ、使えるのでは?と思うようになってきました。海外の動向に目を向けず、食わず嫌いだったのかもしれません。
あとは経験でしょうか。
しばらく手を動かしてみましょう。