0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

SSPな時間積分法

Last updated at Posted at 2024-12-28

初めに

既に見たように,陽的な$\text{RK}(s, p)$の中で,$p \le 4$のものに対しては,$s = p$が達成できる.一方,$s \ge p$と刻むこともできて,このとき,絶対安定領域を押し広げることができる.

特に,議論の的をmulti-stage methodに絞り,multi-step methodには触れない.さらに,高々$p \le 4$のものに限る.Izzo&Jackiewicz2022がcomprehensiveで良い.

MAIN

名前

Gottlieb+2001によると,先駆的なものはShu1988, Shu&Osher1988であり,当時はTVD(Total-Variation-Diminishing)な時間離散化スキームと呼ばれていたようである.現代ではSSPな時間離散化法とかいう呼び方が浸透しているようである.所謂,TVD条件のことをStrong Stability条件と呼ぶこともあるらしい(例えば,Durran2010).

安定性

線形な問題

\begin{align}
    \frac{\partial}{\partial t} u \left( t \right)
    = A \left( u \right)
    = M u
\end{align}

に対する解の増幅率は,

\begin{align}
    G
    = \exp \left( \tau M \right)
    = \sum_{k=0}^{\infty} \frac{(\tau M)^k}{k!}
\end{align}

であり,解が安定である(i.e., 発散しない)ためには,$| G | \le 1$.一方,$\text{RK}(s, p)$の中で,$s=p=K$なるもの(即ち,$K \le 4$)の増幅率は,

\begin{align}
    G_{\text{RK}(s,p)}
    = \sum_{k=0}^{K} \frac{(\tau M)^k}{k!}
\end{align}

である.$z = \tau M$とすると,$\text{RK}(s,p)$が安定であるためには,

\begin{align}
    z \in \mathbb{S}_{\text{RK}(s,p)}
    = \lbrace
        z \in \mathbb{C}
        \mid
        \lvert G_{\text{RK($s, p$)}} \left( z \right) \rvert \le 1
    \rbrace
\end{align}
$p=2$ $p=3$ $p=4$
stability_RK.png stability_RK.png stability_RK.png

一方,非線形な問題(や硬い問題も?)

\begin{align}
    \frac{\partial}{\partial t} u \left( t \right)
    = B \left( u \right)
\end{align}

に対しては,安定性領域を押し広げておきたい場合がある.即ち,適当な$\text{SSP-RK}(s, p)$があって,その増幅率$G_{\text{SSP-RK}(s,p)}$と安定性領域$\mathbb{S}_{\text{SSP-RK}(s,p)}$が適当に定義できて,

\begin{align}
    | \mathbb{S}_{\text{SSP-RK}(s,p)} |
    \gt
    | \mathbb{S}_{\text{RK}(p,p)} |
    \quad \text{for some fixed } p
\end{align}

を狙う.このとき,往々にして$s \ge p$.$s = p$でこれを達成する$\text{SSP-RK}$が存在するのか気になるが,未だ知らない.

具体的な方法

Durran2010Gottlieb+2018より.Izzo&Jackiewicz2022も詳しい.Izzo&Jackiewicz2022に示されているButcher tableauに則る.

2次の方法

SSP-RK(2, 2)
Shu&Osher1988

\begin{align}
    f_1
    &= B \left( u^{n} \right)
    \\
    f_2
    &= B \left( u^{n} + \tau f_1 \right)
    \\
    u^{n+1}
    &= u^{n}
    + \tau \left( \frac{1}{2} f_1 + \frac{1}{2} f_2 \right)
\end{align}

ざっと計算したところ,素朴な$\text{RK}(2, 2)$と同じだけの安定性領域だろうと思う.

SSP-RK(3, 2)

\begin{align}
    f_1
    &= B \left( u^{n} \right)
    \\
    f_2
    &= B \left( u^{n} + \tau \frac{1}{2} f_1 \right)
    \\
    f_3
    &= B \left( u^{n} + \tau \left( \frac{1}{2} f_1 + \frac{1}{2} f_2 \right) \right)
    \\
    u^{n+1}
    &= u^{n}
    + \tau \left( \frac{1}{3} f_1 + \frac{1}{3} f_2 + \frac{1}{3} f_3 \right)
\end{align}

ざっと計算したところ,$\text{RK}(2, 2)$より$z^3 / 12$だけ大きい.

3次の方法

SSP-RK(3, 3)
Shu&Osher1988

\begin{align}
    f_1
    &= B \left( u^{n} \right)
    \\
    f_2
    &= B \left( u^{n} + \tau f_1 \right)
    \\
    f_3
    &= B \left( u^{n} + \tau \left( \frac{1}{4} f_1 + \frac{1}{4} f_2 \right) \right)
    \\
    u^{n+1}
    &= u^{n}
    + \tau \left( \frac{1}{6} f_1 + \frac{1}{6} f_2 + \frac{2}{3} f_3 \right)
\end{align}

SSP-RK(4, 3)
Spiteri&Ruuth2002

\begin{align}
    f_1
    &= B \left( u^{n} \right)
    \\
    f_2
    &= B \left( u^{n} + \tau \frac{1}{2} f_1 \right)
    \\
    f_3
    &= B \left( u^{n} + \tau \left( \frac{1}{2} f_1 + \frac{1}{2} f_2 \right) \right)
    \\
    f_4
    &= B \left( u^{n} + \tau \left( \frac{1}{6} f_1 + \frac{1}{6} f_2 + \frac{1}{6} f_3 \right) \right)
    \\
    u^{n+1}
    &= u^{n}
    + \tau \left( \frac{1}{6} f_1 + \frac{1}{6} f_2 + \frac{1}{6} f_3 + \frac{1}{2} f_4 \right)
\end{align}

$\text{RK}(3, 3)$より$z^4 / 48$だけ大きい.

4次の方法

SSP-RK(4, 4)
存在しない(Gottlieb&Shu1998, Ruuth&Spiteri2002).

SSP-RK(5, 4)
Spiteri&Ruuth2002.しかし,写し間違いが怖いのでやめておく.

SSP-RK(10, 4)
Ketcheson2008Gottlieb+2018が具体的に書き下している.Izzo&Jackiewicz2022がButcher tableauを与えている.面倒なのでここには記さないが,計算すると,

\begin{align}
    G_{\text{SSP-RK}(10,4)}
    &= \frac{1}{25} \left( 1 + 18 y + 6 y^2 \right)
    \\
    y
    &= \left( 1 + \frac{z}{6} \right)^5
\end{align}

であった.

絶対安定領域

$p=2$ $p=3$ $p=4$ $p=4$
stability_SSP_RK.png stability_SSP_RK.png stability_SSP_RK.png stability_SSP_RK.png

$s \ge p$で段階的に拡大する.Izzo&Jackiewicz2022がcomprehensiveである.

終わりに

精度を高めることはできなくても,大胆な歩幅を取って歩くことができるのは魅力的である.非線形な問題では(硬さなども効いてきて?)小さい刻み幅を要求される場合も予想できる.実際,Kubatko+2014, Yeager+2021など.

なお,載せたものはほんの一部であり,沢山ある.

拾い上げ切れていない事項: Gottlieb+2001などを読めば分かるが,明らかに移流の解析のために用意された方法である.この文脈で,Courant数$C$が登場する.幾つかの$\text{SSP-RK}$は$C \le 1$を要求するが,幾つかは$C \le 2$まで許容する(これより大きいものもあるかもしれない).安定性領域の拡大から直感的には認められるが,驚くべき事実である.また,SSP constantとかいう言葉も見かけた.今のところ,この2つの数字は同じものを指していると思っているが,少し自信が無い.周辺は整理し直す必要がある.

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?