VBAで粒子法を勉強中スマートフォン用の表示で見るVBAで粒子法を勉強中メッシュレスで数値解析できるという、粒子法に興味を持ち、勉強中です。プログラムのスキルが無い為、ExcelとVBAでのプログラム作成を目指しています。この広告は、90日以上更新していないブログに表示しています。密度と圧力の計算モジュール各粒子の粒子密度を求めます。粒子密度は、他の粒子との距離rに応じて重み係数Wを乗じたものになります。重み係数はカーネル係数とも呼ばれますが、SPH粒子法でよく使用されるのは6次関数で、以下の形をしています。変わった形の式ですが、この値を関数グラフにした場合、その勾配(グラフの傾き)やラプラシアン(グラフの曲率の様なもの)がシンプルであり各種計算に都合がよいのでSPH粒子法ではよく利用されます。グラフにすると、以下の様です。グラフ赤線が重み係数Wです。SPH粒子法では、近傍粒子の距離rに応じた重み係数Wの値を合計し、これに粒子質量を乗じたものを粒子密度ρとします。求めた粒子密度ρと定常密度との間に差異がある場合、差異に応じて圧力Pが発生するものとします。上記をプログラムにすると、以下の様になります。