これはいけました.ドライベットです.
流速0かつ凸または凹の処理は,中央差分の限界かもしれないですね.
何とか一工夫して使えるようにしたいです.
なお,gifはここにあげるために強烈に画質を落としてます.
これはいけました.ドライベットです.
流速0かつ凸または凹の処理は,中央差分の限界かもしれないですね.
何とか一工夫して使えるようにしたいです.
なお,gifはここにあげるために強烈に画質を落としてます.
H(i-1)=H(i+1)=0.0,H(i)=1.0の場合,dH/dx=0 これは、各水面勾配の重みが0.5となり、打ち消しあって0になるようですね。
物理現象からすると、iの地点においてi+1とi-1の地点にそれぞれ流れが発生するようになるはずですが、 集中格子が原因でダメですね。
ちょうど、非圧縮生流体の解析のように、集中格子の場合のチェッカーボードの振動のようですね。
非圧縮生流体の場合、不等間隔格子を使うとチェッカーボードの振動は入らないようですが、 そもそもの解決になっていないように思います。
質量保存がどうなるかわかりませんが、水位をうまく割り振るしかないのかなと思います。 あまりスマートではないですね。
前回の記事で,二次元水面に山のような地形が残る要因がわかりました.
凸地形のdH/dxの処理です.流速が0の場合,中央差分としておりますが,H(i-1)=H(i+1)=0.0,H(i)=1.0の場合,dH/dxは0となってしまいます.このような場合,どういう処理が一般的がご存知ですか?
多分凹地形でもどうようの処理が必要なはずです.
2次元ダムブレーク
私も書いてみました.
振動は無いのですが,水面が不安定です.多分どこか間違ってます.
gifをあげたいのですが,重くて駄目です.
gifはDBにおいておきます.結構凄いですよ.ぜひ見て下さい.
完成したらgistに上げますがちょっとまだですね.
ちなみにドライベットだと飛びます.
ついにGithubを立ち上げました
いまいち使い方をわかっておりません. 最近はJupyterばかりなので,「Jupyter Hydraulics」と題して,ソースをGistにあげようかと思ってます.アカウント情報はDBに置いておきます.やり過ぎていたら止めて下さい.
とりあえず,昨日のコードです.