連続方程式の良い有限差分


22

次の方程式の優れた差分離散化は何でしょうか:

ρt+(ρu)=0

1Dケースを使用できます。

ρt+ddx(ρu)=0

何らかの理由で、私が見つけることができるすべてのスキームは、ラグランジアン座標での定式化です。とりあえずこのスキームを思いつきました(jインデックスは無視してください):

ρi,jn+1ρi,jnτ+1hx(ρi+1,jn+1+ρi,jn+12uxi+1/2,jnρi,jn+1+ρi1,jn+12uxi1/2n)=0

しかし、本当に不安定であるか、何らかの恐ろしい安定状態にあるようです。そうですか?

速度は、実際には、ダルシーの法則によって計算されます。さらに、状態方程式があります。完全なシステムは、エネルギー方程式と理想気体の状態方程式からも成り立っています。速度はマイナスになることがありますu=kμp


1Dの場合、問題は本質的に1次の双曲線pdeです。一次風上差分スキームを使用してみましたか?
ポール

これまでのところ、私は質問で書いたもので実行しています。私の場合は実際には2Dです。しかし、これは古典的な方程式なので、古典的な離散化も利用できると思いました。
ティアム

風上スキームがこれをどのように探すかを示してください。対流用語で使用する場合、有限体積法の概念に精通していますが、製品の空間微分はもうありません。
tiam

速度場は与えられていますか、それとも進化方程式も満たしていますか?
デビッドケッチャソン

速度は、実際には、ダルシーの法則によって計算されます。完全なシステムは、エネルギー方程式と理想気体の状態方程式からも成り立っています。速度はマイナスになることがあります。u=kμp
tiam

回答:


21

あなたは質量保存方程式を見ています:

dmdt=0

単位体積あたりの質量進化を考慮すると、これはフラックス形式の密度移流方程式に要約されます。

ρt=ρあなたは

これの良い点は、任意のスカラー場の移流方程式であり(この場合、密度になります)、(比較的)簡単に解決でき、適切な時間と空間の差分スキームが提供され、初期および境界条件。ρ

有限差分スキームを設計するとき、収束、安定性、精度について心配します。ときに場合、スキームは収束し。スキームの安定性により、場合に数量が有限ままになることが保証されます。スキームの形式的な精度は、偏微分のテイラー展開級数の切り捨て誤差がどこにあるかを示します。差分スキームのこれらの基本的なプロパティの詳細については、CFDの教科書をご覧ください。 ΔT0A、TAtAtt0At

現在、最も簡単なアプローチは、1次の上流差分に直接進むことです。このスキームは、明確かつ保守的で、計算効率が高くなります。最初の2つのプロパティは、常に正の量(つまり質量または密度)の進化をモデル化する場合に特に重要です。

簡単にするために、1-Dの場合を見てみましょう。

ρt=ρあなたはバツ

フラックスを定義すると便利です:Φ=ρあなたは

ρあなたはバツ=ΦバツΦバツΦ+1/2Φ1/2バツ

シミュレーション対象の概略図を以下に示します。

            u           u
|          -->         -->          |
|    rho    |    rho    |    rho    |
x-----o-----x-----o-----x-----o-----x
     i-1  i-1/2   i   i+1/2  i+1

セルでのの進化を評価しています。純利益または損失は、入ってくるものと出て行くものの差から生じます。これが、ポールの答えから分岐し始めるところです。真の保守的な上流差分では、セルの中心の量は、セルの端での動きの方向の速度によって運ばれています。言い換えれば、あなたが移住した量であり、あなたがセルの中心に座っていると想像するなら、あなたはセルの端の速度によってあなたの前のセルに運ばれています。セル端での密度と速度の積としてセル端での流束を評価することは正しくなく、移流量を節約しません。I Φ I - 1 / 2 Φ I + 1 / 2ρΦ1/2Φ+1/2

流入および流出フラックスは次のように評価されます。

Φ+1/2=あなたは+1/2+|あなたは+1/2|2ρ+あなたは+1/2|あなたは+1/2|2ρ+1

Φ1/2=あなたは1/2+|あなたは1/2|2ρ1+あなたは1/2|あなたは1/2|2ρ

上記のフラックス差分の処理により、アップストリームの明確さが保証されます。つまり、速度の符号に応じて差分方向を調整します。

Courant-Friedrichs-Lewy(CFL)安定性基準は、単純な1次で時間差分を行う場合、前方オイラー差分は次のように与えられます。

μ=あなたはtバツ1

2次元では、CFL安定性基準がより厳密であることに注意してください。

μ=ctバツ12

ここで、速度の大きさであり、。cあなたは2+v2

考慮すべき事項。このスキームは、シミュレートするプロセスの種類に応じて、アプリケーションに適している場合とそうでない場合があります。このスキームは拡散性が高く、急勾配のない非常に滑らかな流れに適しています。また、より短い時間ステップに対してより拡散的です。1次元の場合、勾配が非常に小さく、場合、ほぼ正確な解が得られます。2次元の場合、これは不可能であり、拡散は異方性です。μ=1

物理システムが衝撃波または他の種類の高い勾配を考慮している場合は、より高い次数(たとえば、3次または5次)の上流差分を調べる必要があります。また、Flux Corrected Transportファミリーのスキームを検討する価値があるかもしれません(Zalesak、1979、JCP)。Smolarkiewiczによる上記スキームの拡散防止補正(1984、JCP); SmolarkiewiczによるMPDATAファミリーのスキーム(1998、JCP)。

時間差の場合、1次順オイラー差はあなたのニーズを満たすことができます。それ以外の場合は、Runge-Kutta(反復)、Adams-BashforthおよびAdams-Moulton(マルチレベル)などの高次メソッドを調べてください。

上記のスキームやその他の概要については、CFDの大学院レベルの教科書を検討する価値があります。


答えてくれてありがとう。今、私ははっきりと風上を見ています:)。私は今それを実装しようとします!私は、各タイムステップでが変化するという事実が安定性に影響を与える可能性があるのだろうか?あなたは
ティアム

1
いいえ、CFL制約を満たしている限り。適応時間ステップ、つまりを実行するか、問題の最大予想速度に応じて定数を設定できます。時間と空間の差分方法のさまざまな組み合わせにより、異なるCFL制約が与えられることに注意してください。 ΔTt=バツmaバツあなたはt
ミラノ語

それは少し奇妙で、私はスキームを実装し、1つの境界から別の境界にパルスを送信し、(速度を逆にすることで)再び送信しました。しかし、と言うとすぐに、速度が1未満であっても、非常に小さなタイムステップが必要になり始めます。あなたは=Cρ
tiam

または、それはまったく奇妙ではないかもしれませんが、上記のコメントは、とが結合している場合を支配していなかったかもしれません。ρあなたはρ
tiam

安定性の制約と精度の順序は正式に導出され、線形化移流方程式に有効です。ここで、は依存しません。過去に、この方程式をu、vの非線形Navier-Stokes方程式とうまく組み合わせました。その場合、形式的な安定性の制約は満たされませんが、増分を適度に低く保つことは有効です。設定すると、方程式は。方程式の安定性の基準を(可能であれば)調査する必要があります。ρ U = - C ρ ρあなたはρあなたは=Cρρt=C[ρ2+ρ2ρ]
ミラノ語

13

1Dの場合、数値的に不安定であるため、空間微分項前方差分スキームまたは中央差分スキームを使用したくありません。代わりに、空間微分の明示的な逆方向(上方向)の差分で方程式を離散化することをお勧めします。ddバツ

ρk+1ρkt+ρkうんkρ1kうん1kバツ=0

速度が正の場合、この後方スキームは安定しています。それらが負の場合、前方差異が機能します。とにかく、スキームを安定させるためのおよび(クーラント数)の選択には常に制約があります。Δ トンバツt


代わりに、でを評価すると、制約が削除されますか?K + 1 Δ Tρk+1t
tiam

よくわからない...切り捨てエラーをチェックして、PDEに正しく近似していることを確認する必要があると思う。あなたは、このウェブサイト上の他のimplictスキームを検討する必要があります。web.mit.edu/dongs/www/publications/projects/...
ポール
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.