高次精度のTVD/QUICKスキーム

350 views
Skip to first unread message

OKUYAMA

unread,
Sep 8, 2017, 1:45:01 AM9/8/17
to OpenFOAM
TVDスキームやQUICKスキームで、3次以上の精度に対応したものがあるという話を聞いたのですが、OpenFOAMで使うことは可能でしょうか。

また、
  $FOAM_SRC/finiteVolume/interpolation/surfaceInterpolation/limitedSchemes
の下にあるスキームが、TVD/NVDスキームのどちらか、および何次の精度であるかを知りたいのですが、調べる方法はあるでしょうか。

基礎的な質問で申し訳ございませんが、よろしくお願いいたします。


すもも

unread,
Sep 13, 2017, 2:55:16 AM9/13/17
to OpenFOAM
簡単な説明が Gamma/Gamma.H などのヘッダーファイルの先頭のコメントに書いてあります。

TVD/NVDのどちらであるかは、実装に r を使っているか phict を使っているかで判断できそうです。
phict を使っているのは Gamma と SFCD のようです。
(Gamma が NVD なのは Jasak 氏の論文を見ればわかります。)

2次精度TVDは『数値流体力学 [第2版]』にリストがあるので、それを見ればどれかわかります。
それ以外のものは、原著があればそれに当たればよいですが、オリジナルのものもあります。

挙動からすると limitedCubic が 3 次精度なのかな?と思っていますが、確証は得ていません。
(すぐ発散するし、素性もわからないので怖くて使えませんが)

OKUYAMA

unread,
Sep 15, 2017, 2:12:57 AM9/15/17
to OpenFOAM
すももさん、

 ご回答いただき、ありがとうございました。
 どうやら、何次精度かは明確には分からないもののようですね。
 (ソースを細かく追えば分るのかもしれませんが、残念ながら自分の能力を超えます。。。)

 自分でも調べてみたところ、以下のページ


 には limitedCubic は semi 3. order となっていました。真の3次ではないが2次よりは精度がよいというものなのでしょうか。

2017年9月13日水曜日 15時55分16秒 UTC+9 すもも:
Reply all
Reply to author
Forward
0 new messages