趣味で計算流砂水理

Computational Sediment Hydraulics for Fun

平面二次元計算による急拡水路の河床変動

久しぶりに完全に趣味で計算しました.

急拡水路の河床変動計算を平面二次元でやってみました.

計算条件

  • 掃流砂のみ,M.P.M.式
  • 単一粒径 5mm 無次元掃流力は1くらい
  • 初期水深は上流端で1mくらい.上流端流量は一定,平衡給砂
  • 下流端は等流
  • dt:0.02sec,dx,dy:5m
  • 計算時間は500時間

計算結果

初期 f:id:SedimentHydraulics:20190803164708p:plain 500時間後 f:id:SedimentHydraulics:20190803164731p:plain

詳細な計算結果はこちら

  • まだまだ平衡状態には至ってない感じですね.
  • 河道中央に想像以上に堆積します.
  • 以下の記事による簡易式だと拡幅部の堆積量は35cmになります.もうちょっと流し続ければいいのかな.
  • ソースとかはgithubに上げました.

github.com

その他

  • 計算時間は私のPC(後述)で23時間かかりました.
  • CFLはかなり余裕を持ってます.流れだけだとdtを5倍くらいにできます.でも,河床変動の場合,大きくするとたまにドライベッドがでるのでそのときに跳ねてしまいます.上手くdtを可変にすればかなり速度はあがると思います.
  • 部分的にはかなりの急勾配がでてます.崩落モデルをいれると変わるかも.
  • 乱流モデルによっては剥離域の形状は変わるかも.

新しいPC(ubuntu18.04 インテル® Core™ i9-9900K)が引くほど早い.ノートPCのi7-8550Uと比較すると,シングルコアの計算で40%程度速くなります.並列化が楽しみです.