マコーマック法

数値流体力学における方程式

数値流体力学においてマコーマック法(/məˈkɔːrmæk ˈmɛθəd/)は、双曲型偏微分方程式の数値解法として広く用いられている離散化手法です。この2階差分法は、 1969年にロバート・W・マコーマックによって導入されました。[1]マコーマック法は簡潔で、理解しやすく、プログラムしやすい手法です。[2]

アルゴリズム

マコーマック法は、次の形式の双曲型偏微分方程式を解くように設計されています

u t + f u x 0 {\displaystyle {\frac {\partial u}{\partial t}}+{\frac {\partial f(u)}{\partial x}}=0}

この式をグリッドセル間隔のグリッド上で1タイムステップ更新するために、MacCormack法では以下に示す「予測ステップ」と「補正ステップ」を使用します[3]。 Δ t {\displaystyle \Delta t} Δ x {\displaystyle \Delta x} i {\displaystyle i}

u i p u i n Δ t Δ x f i + 1 n f i n u i n + 1 1 2 u i n + u i p Δ t 2 Δ x f i p f i 1 p {\displaystyle {\begin{aligned}&u_{i}^{p}=u_{i}^{n}-{\frac {\Delta t}{\Delta x}}\left(f_{i+1}^{n}-f_{i}^{n}\right)\\&u_{i}^{n+1}={\frac {1}{2}}(u_{i}^{n}+u_{i}^{p})-{\frac {\Delta t}{2\Delta x}}(f_{i}^{p}-f_{i-1}^{p})\end{aligned}}}

線形例

アルゴリズムを説明するために、次の1階双曲線方程式を考えてみましょう

u t + a u x 0. {\displaystyle \qquad {\frac {\partial u}{\partial t}}+a{\frac {\partial u}{\partial x}}=0.}

上記の式に MacCormack 法を適用すると、予測ステップとそれに続く修正ステップの 2 つのステップが実行されます。

予測ステップ:予測ステップでは、時間レベル( で示される)における の「暫定的な」値が次のように推定される。 u {\displaystyle u} n + 1 {\displaystyle n+1} u i p {\displaystyle u_{i}^{p}}

u i p u i n a Δ t Δ x u i + 1 n u i n {\displaystyle u_{i}^{p}=u_{i}^{n}-a{\frac {\Delta t}{\Delta x}}\left(u_{i+1}^{n}-u_{i}^{n}\right)}

上記の式は、前の一次双曲型方程式の空間導関数と時間導関数を前進差分に置き換えることによって得られます。

補正ステップ:補正ステップでは、予測値が次式に従って補正される。 u i p {\displaystyle u_{i}^{p}}

u i n + 1 u i n + 1 / 2 a Δ t 2 Δ x u i p u i 1 p {\displaystyle u_{i}^{n+1}=u_{i}^{n+1/2}-a{\frac {\Delta t}{2\Delta x}}\left(u_{i}^{p}-u_{i-1}^{p}\right)}

補正ステップでは、空間微分に対して後方差分近似が用いられることに注意してください。補正ステップで使用される時間ステップは、予測ステップで使用される 時間ステップとは対照的です。 Δ t / 2 {\displaystyle \Delta t/2} Δ t {\displaystyle \Delta t}

用語を時間平均に 置き換える u i n + 1 / 2 {\displaystyle u_{i}^{n+1/2}}

u i n + 1 / 2 u i n + u i p 2 {\displaystyle u_{i}^{n+1/2}={\frac {u_{i}^{n}+u_{i}^{p}}{2}}}

補正ステップを得るには

u i n + 1 u i n + u i p 2 a Δ t 2 Δ x u i p u i 1 p {\displaystyle u_{i}^{n+1}={\frac {u_{i}^{n}+u_{i}^{p}}{2}}-a{\frac {\Delta t}{2\Delta x}}\left(u_{i}^{p}-u_{i-1}^{p}\right)}

備考

マコーマック法は非線形方程式(非粘性バーガース方程式オイラー方程式など)に適しています。差分の順序は時間ステップごとに逆にすることができます(つまり、順方向/逆方向の後に逆方向/順方向)。非線形方程式の場合、この手順は最良の結果をもたらします。線形方程式の場合、マコーマック法はラックス・ウェンドロフ法と同等です。[4]

一次の風上法とは異なり、マコーマック法は解に拡散誤差を導入しません。しかし、勾配が大きい領域では 分散誤差(ギブス現象)を導入することが知られています。

参照

参考文献

  1. ^ MacCormack, RW、「超高速衝突クレーター形成における粘性の影響」、AIAA論文、69-354 (1969)。
  2. ^ Anderson, JD, Jr.、「計算流体力学:基礎と応用」、McGraw Hill (1994)。
  3. ^ キャメロン、マリア (2011). 「バーガー方程式に関する注釈」(PDF) .メリーランド大学.
  4. ^ Tannehill, JC, Anderson, DA、および Pletcher, RH、「計算流体力学と熱伝達」、第 2 版、Taylor & Francis (1997)。
「https://en.wikipedia.org/w/index.php?title=MacCormack_method&oldid=1328722757」から取得