有限体積の一次風上スキームで非定数係数をどのように扱うべきですか?


11

保存形式の移流方程式から始めます。

ut=(a(x)u)x

ここでは空間に依存する速度であり、uは保存されている種の濃度です。a(x)u

流束の離散化(流束がメッシュポイント間のセルのエッジで定義される)を与えると、 u t = 1f=a(x)u

ut=1h(fj−12−fj+12)

一次風上を使用して、フラックスを次のように近似します。

これは、 ut=1

fj−12=a(xj−12)uj−1fj+12=a(xj+12)uj
ut=1h(a(xj−12)uj−1−a(xj+12)uj)

が一定であれば、これはおなじみの風上スキーム、つまり u t = aa(x)。ut=ah(uj−1−uj)

私の質問は、移流方程式の非定数係数をどのように扱うことができますか?速度はセルの中心で定義されるため、単純なアプローチは次のようになります。

a(xj−12)→a(xj−1)a(xj+12)→a(xj)

実装が非常に簡単なので、これは私の好みのアプローチです。

ただし、平均化スキームを使用して(セルのエッジでの速度を定義することもできます)(

a(xj−12)→12a(xj−1)+12a(xj)a(xj+12)→12a(xj)+12a(xj+1)

でルヴェックの著書と彼は言います、

これまで、可変速度はj番目のグリッドセル内の定数値a jによって指定されると仮定しました。場合によっては、代わりに速度a j − 1a(x)ajは各セルインターフェイスで指定されます。aj−12

しかし、彼はその後あまり詳しく説明しません。一般的なアプローチとは何ですか?

保存問題を解決しています(連続方程式として移流方程式を使用しています)ので、離散化を適用した後、保存特性が保存されることを確認したいと思います。これらの可変係数に関する隠れた驚きを避けたいと思います!誰か一般的なコメントやガイダンスがありますか?


更新以下に2つの本当に良い答えがあり、私は1つしか選ぶことができませんでした:(

回答:


4

a

最も重要なのは(そしてあなたの質問でこれについて既に触れた)、離散化されたシステムはまだ保守的であるということです。スキームを次の形式で記述できる場合

∂uj∂t=Fj−12(uj−1,uj)−Fj+12(uj,uj+1)

保守的なはずです

∂∂t∫udx=∑j∂uj∂tδx=∑j(Fj−12−Fj+12)δx=(F−12−FN+12)δx

速度が常に正であれば、セル間の速度を平均化してセルインターフェイスで定義するのと同様に、単純なアプローチで問題なく動作するはずです。さらに、平均化によってより高い精度が得られるとは思わないので、単純な方法を好むのは正しいことです。

速度も解いていて、方程式系がある場合は、もっと注意する必要があるかもしれません。同様に、非線形双曲線PDEを解き、フラックスリミッターを使用する場合は、さらに注意する必要があります。

*ただし、双曲線PDEのシステムでは、スタッガードグリッドを使用すると、人工的な分散/拡散を大幅に改善できます。詳細を知りたい場合は、荒川Cグリッドを調べるか、この本の第4章をご覧ください。


説明してくれてありがとう。そして、あなたの直感は正しいです。方程式の1つが速度(他の変数のPDE)である方程式系を解いています。方程式系は1Dのみであり、指数関数近似を使用して、適応1次風上法(2次中央風と風上を切り替えることができます)を使用する予定です。フラックスリミッターを使用していませんが、システムは非線形です。この状況では「もっと注意する」必要がありますか?
— -boyfarrell

衝撃波などが形成されると予想される場合、一部の地域で速度がゼロ未満になる可能性がある場合、または速度がクーラント-フリードリッヒ-レビー条件に反して十分に高くなる可能性がある場合は、すべて依存しますある時点で。そうは言っても、まず簡単なアプローチを試して、それが機能するかどうかを確認します。それが失敗する場合、それは見事にそして明確に行われるので、レーダーの下に何か間違ったスリップがあることを心配する必要はないと思います。
— ダニエルシェイプロ

はい、速度はドメインの中心でのみゼロ以外であり、中心から離れるにつれて急速にゼロに近づくと予想しています。CFL条件が満たされるように(最大速度を使用して)タイムステップを選択し、メッシュが固定されます。衝撃波の基準は何ですか?私はそれを見ることを期待していません(しかし、あなたは決して知りません)。
— -boyfarrell

5

a(x)

一貫性とは、補間が満たす必要がある唯一の条件であることです

ai+1/2+=ai+1/2−

言い換えれば、補間方法がセルの境界を越えて連続している限り、離散化は保守的なままであることが保証されます。

これは1Dではここでは大きな問題とは思われないかもしれませんが(そうすべきではありません)、マルチレベルAMRグリッドの粗いインターフェースで問題を引き起こす可能性があります。


一貫性について。セル中心の有限体積アプローチの場合。(たとえば)線形補間を使用して頂点値を推定することを選択した場合uj+12a(xj+12)a(xj+12)→a(xj+1)uj+12

@boyfarrellメソッドが保守的であるという意味では大丈夫でしょう。ただし、ソリューションの精度には影響します。多くの場合、たとえばENOスキームでは、速度と解を別々にではなく、フラックス関数全体を近似します。
— GradGuy

4

a(xj−12)

これがなぜそうなのかを見るために、保守的な分析的定義は

∂∂t∫Du(x)dx=∫∂Da(x)u(x)dS,

D

離散化の形式が

ut(xj)=1h(a(xj−12)uj−12−a(xj+12)uj+12)

x1,…,xnD=[c,d]c=x12d=xn+12

1h∑j=1n(a(xj−12)uj−12−a(xj+12)uj+12)=a(x12)u12−a(xn+12)un+12,

uj−12=uj−1uj+12=uja(x)u

高次の方法では、が滑らかであれば、多項式を点a (xa(x)a(xj−r),…,a(xj+s)a(xj−12)

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.