読者です 読者をやめる 読者になる 読者になる

趣味で計算流砂水理

Computational Sediment Hydraulics for Fun

Re:平面二次元モデルについて

K

名前

平面2次元だと何がよいのでしょうかね。個人的には2DSWEが解りやすい気がします。

Horizontalでもわかりますが、Shallow Water Equationの方が、浅水流近似してる事が明確だから好きなのかもしれません。

1D Upwind Flux Scheme

以前頂いた1次元版のDamBreakを回してみましたが、 下流側の水深0.001mくらいなら計算できそうですね。 ここら辺の勉強はちゃんとやってないので、評価はできないのですが・・・。

2D Upwind Flux Scheme

  • Reference に記述されてた「Two-dimentional numerical simulation of Malpasset dambreak wave propagation」ってご存知ですか?って書こうと思ったら、やっぱりないんですね。 探してみたのですが、マイナーな感じのジャーナルだったので見つかりませんでした。

  • 「Two-dimensional dam break flooding simulation: a GIS-embedded approach」ありがとうございます。ちゃんと離散式が書いてあるので、参考になりそうです。空間(x方向、y方向)でSplittingはしてないんですね。ちょっと追っかけてみます。

  • 個人的にはCSLRが好きなのですが、Wuさんの本や、Yingさんの論文でも書いてあるとおり、 ただ流れを解くなら良いのですが、境界条件が複雑なので、安定性が必要ですし、 何よりシンプルなアルゴリズムの方が、うまく解けない時の原因が特定しやすいと思います。

  • 数値計算のテクニック的なところで悩むのはあまり本質的じゃないです。 (まあ、そういうの好きですが、あくまで現象を見るのが本質ですから)

境界条件

上流端

上流端はハイドロを与えるので、ディリクレ条件ではないのでしょうか?

{ \displaystyle
Q = Q_{up}
}

運動量(?)を考えるやり方があるのであれば教えて下さい。

下流端

下流端は流量の勾配0としてノイマン条件で良いかと思います。

集中格子で考えていますが、あくまでConservative Schemeなので、 コントロールボリュームを考えてあげる必要があるかと。

水際

これが一番処理が面倒くさいように思います。 私がやるなら、長田さんのやり方を踏襲するのが第一歩かな。

スキーム

結局、境界条件の煩雑さがスキームの簡便さと安定性を求める要因です。 煩雑なものを使うとかなり面倒くさい事になりそうです。

ブラックボックス

  • この議論は出て当然ですね。車輪の再発明という言われ方もありますが、ある程度理解してないと車輪は使っちゃいけないんですよね。

  • 数値計算は、物理現象、数学を用いた現象の記述、解くためのアルゴリズムの理解等々、必要な素養はたくさんあるので難しいです。

  • こういったソフトウェアは、プリポスト処理に特化するといい気がしますけどね。GUIはコード量がだいぶ増えますから。