code-saturne / code-saturne/code_saturne

Compressible module: boundary faces emit a spurious wave in 9.2.0

オープン
#170 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る
主要言語
C++
スター
307
フォーク
102
PR マージ指標
30日以内にマージされた PR はありません

説明

With an identical setup.xml and no user routine, the compressible module (constant gamma) gives a correct Sod shock tube in 9.1.0 and a corrupted one in 9.2.0. Both runs are pure first order upwind, all six boundaries are symmetry, and the time step is fixed and identical, so nothing on the input side differs between the two runs.

The corruption is entirely localised at the boundaries. The rarefaction, the contact discontinuity and the shock are unchanged, and agree with the exact Riemann solution in both versions. What 9.2.0 adds is a spurious wave emitted by each wall at the first time step, which then travels into the domain at the local speed of sound (see figure below).

The case is here, if you want to run it as is: [Sod tube](https://github.com/simvia-tech/tutorials-code_saturne/tree/main/30_compressible/Comp_Sod_Tube)

Image

コントリビューションガイド

コントリビューションガイドを開く

調査の方向性

tutorials-code_saturne/30_compressible/Comp_Sod_Tube のリンクされた Sod チューブケースを、同一の setup.xml を使って 9.1.0 と 9.2.0 で実行し、最初のステップの境界挙動を比較します。compressible モジュールの対称境界の処理を追跡します。9.2.0 の実行でスプリアスな壁波が出力されなくなり、正しい Sod 解が維持されれば完了です。

索引モデルが issue の本文から書いたものです。

評価

技術スタック
cpp
領域
hpc
issue の種類
バグ
難易度
4/5
見積もり時間
3〜5日
活発さ
活発
明瞭さ
おおむね明確
初心者へのやさしさ
45/100

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。