§E20.27常微分方程式の一段法

最終更新

常微分方程式y′=f(t,y)y'=f(t,y)の初期値問題の解を近似するときには、区間に格子点をとり、ある格子点での近似値から次の格子点での近似値を一歩ずつ計算する。時刻ttでの近似値uuと刻みhhから次の近似値を定める方法を一段法といい、uuにhf(t,u)hf(t,u)を加える前進 Euler 法や、ffのいくつかの値の重み付き和のhh倍をuuに加える Runge–Kutta 法はその例である。y′=yy'=y、y(0)=1y(0)=1に刻みh>0h>0の前進 Euler 法を適用すると、時刻00の値11から一歩進めた値は1+h1+h、時刻hhでの解の値はehe^hであり、その差はeh−1−he^h-1-hである。このように解の値を出発点として一歩進めた近似値を、同じ刻みだけ進んだ時刻での解の値から引いた差を局所打切り誤差といい、一段法の一歩の精度は、局所打切り誤差が刻みを小さくしたときにどれほど速く小さくなるかによって比べる。本記事では一段法と局所打切り誤差を定め、Runge–Kutta 法について一歩の精度を係数の条件から調べる。

1 一段法と局所打切り誤差

定義 1.1.d∈N≥1d\in\NNとし、Rd\R^dにノルム∥⋅∥\|\cdot\|を固定する。Ω⊆R×Rd\Omega\subseteq\R\times\R^dを開集合、f ⁣:Ω→Rdf\colon\Omega\to\R^dを連続写像とする。

  1. 集合D⊆Ω×(0,∞)D\subseteq\Omega\times(0,\infty)と写像Φ ⁣:D→Rd\Phi\colon D\to\R^dの組をffに対する 増分関数 (increment function) といい、(t,u,h)∈D(t,u,h)\in Dに対してΨh(t,u):=u+hΦ(t,u,h)\Psi_h(t,u):=u+h\Phi(t,u,h)と置き、Ψh\Psi_hを 一歩写像 (one-step map) という。N∈N≥1N\in\NN、格子t0<t1<⋯<tNt_0<t_1<\dots<t_N、hn:=tn+1−tnh_n:=t_{n+1}-t_nと初期値y0∈Rdy_0\in\R^dに対し、(tn,yn,hn)∈D(t_n,y_n,h_n)\in Dである限りyn+1:=Ψhn(tn,yn)y_{n+1}:=\Psi_{h_n}(t_n,y_n)と定める。各d∈N≥1d\in\NN、各開集合Ω⊆R×Rd\Omega\subseteq\R\times\R^dと、連続写像f ⁣:Ω→Rdf\colon\Omega\to\R^dのうち定められたクラスに属する各ffに対して増分関数を一つずつ対応させる規則を 一段法 (one-step method) という。
  2. t0<Tt_0<Tとし、J⊇[t0,T]J\supseteq[t_0,T]を開区間、y ⁣:J→Rdy\colon J\to\R^dを、任意のτ∈J\tau\in Jについて(τ,y(τ))∈Ω(\tau,y(\tau))\in\Omegaとy′(τ)=f(τ,y(τ))y'(\tau)=f(\tau,y(\tau))を満たすC1C^1級写像とする。t∈[t0,T)t\in[t_0,T)と0<h≤T−t0<h\le T-tが(t,y(t),h)∈D(t,y(t),h)\in Dを満たすとき、 δy(t,h):=y(t+h)−Ψh(t,y(t))\delta_y(t,h):=y(t+h)-\Psi_h(t,y(t)) を、解yyの点tt、刻みhhにおける 局所打切り誤差 (local truncation error) という。[t0,T][t_0,T]の格子t0<⋯<tN=Tt_0<\dots<t_N=Tについてはdn:=δy(tn,hn)d_n:=\delta_y(t_n,h_n)と書く。
  3. p∈N≥1p\in\NNとする。一段法が次を満たすとき、その 局所次数 (local order) はpp以上であるという。任意のd∈N≥1d\in\NN、Rd\R^dの任意のノルム、任意の開集合Ω⊆R×Rd\Omega\subseteq\R\times\R^d、一段法のクラスに属する任意のf∈Cp(Ω;Rd)f\in C^p(\Omega;\R^d)、任意のt0<Tt_0<Tと、[t0,T][t_0,T]を含む開区間JJ上で定義され、任意のτ∈J\tau\in Jについて(τ,y(τ))∈Ω(\tau,y(\tau))\in\Omegaとy′(τ)=f(τ,y(τ))y'(\tau)=f(\tau,y(\tau))を満たす任意のC1C^1級写像yyに対して、C≥0C\ge0とh0>0h_0>0が存在し、t∈[t0,T)t\in[t_0,T)と0<h≤min⁡{h0,T−t}0<h\le\min\{h_0,T-t\}を満たす任意のt,ht,hについて(t,y(t),h)∈D(t,y(t),h)\in Dかつ∥δy(t,h)∥≤Chp+1\|\delta_y(t,h)\|\le Ch^{p+1}が成り立つ。局所次数がpp以上でありp+1p+1以上でないとき、局所次数はppであるという。

注意 1.2.δy(t,h)/h\delta_y(t,h)/hを局所打切り誤差と呼ぶ文献もあり、その流儀では局所次数ppの条件は∥δy(t,h)/h∥≤Chp\|\delta_y(t,h)/h\|\le Ch^pと書かれる。格子点での誤差y(tn)−yny(t_n)-y_nを局所打切り誤差と増分関数の状態変数に関する Lipschitz 性から評価することは「一段法の安定性と収束」で扱う。

定義 1.3.d∈N≥1d\in\NNとし、Ω⊆R×Rd\Omega\subseteq\R\times\R^dを開集合、f ⁣:Ω→Rdf\colon\Omega\to\R^dを連続写像とする。D:=Ω×(0,∞)D:=\Omega\times(0,\infty)上の増分関数Φ(t,u,h):=f(t,u)\Phi(t,u,h):=f(t,u)を対応させる一段法を 前進 Euler 法 (forward Euler method) という。格子t0<⋯<tNt_0<\dots<t_Nと初期値y0y_0に対する近似値は、(tn,yn)∈Ω(t_n,y_n)\in\Omegaである限り

yn+1=yn+hnf(tn,yn)y_{n+1}=y_n+h_nf(t_n,y_n)

で定まり、一歩ごとにffを1回評価する。

補題 1.4.m∈N≥1m\in\NNとし、Rm\R^mにノルム∥⋅∥\|\cdot\|を固定する。K⊆RmK\subseteq\R^mをコンパクト集合とし、ρ≥0\rho\ge0に対して

Kρ:={x∈Rm∣∥x−x′∥≤ρ を満たす x′∈K が存在する}K^\rho:=\{x\in\R^m\mid \|x-x'\|\le\rho\ \text{を満たす}\ x'\in K\ \text{が存在する}\}

と置く。このとき、任意のρ≥0\rho\ge0についてKρK^\rhoはコンパクトである。さらに、U⊆RmU\subseteq\R^mがK⊆UK\subseteq Uを満たす開集合ならば、Kρ⊆UK^\rho\subseteq Uを満たすρ>0\rho>0が存在する。

証明.問題 6.1の演習とする。▨

補題 1.5.m,n∈N≥1m,n\in\NNとし、Rm\R^mとRn\R^nにノルム∥⋅∥\|\cdot\|を固定する。r∈N≥0r\in\Nとする。

  1. J⊆RJ\subseteq\Rを開区間、x∈Cr+1(J;Rn)x\in C^{r+1}(J;\R^n)とし、τ∈J\tau\in Jとh∈Rh\in\Rがτ+h∈J\tau+h\in Jを満たすとする。このとき ∥x(τ+h)−∑j=0rhjj!x(j)(τ)∥≤∣h∣r+1(r+1)!max⁡0≤θ≤1∥x(r+1)(τ+θh)∥\Bigl\|x(\tau+h)-\sum_{j=0}^r\frac{h^j}{j!}x^{(j)}(\tau)\Bigr\|\le\frac{|h|^{r+1}}{(r+1)!}\max_{0\le\theta\le1}\|x^{(r+1)}(\tau+\theta h)\| が成り立つ。
  2. U⊆RmU\subseteq\R^mを開集合、g∈Cr+1(U;Rn)g\in C^{r+1}(U;\R^n)、K′⊆UK'\subseteq Uをコンパクト集合とする。このときC≥0C\ge0が存在して、x+θz∈K′x+\theta z\in K'(0≤θ≤10\le\theta\le1)を満たす任意のx,z∈Rmx,z\in\R^mについて ∥g(x+z)−∑k=0r1k!Dkg(x)[z,…,z]∥≤C∥z∥r+1\Bigl\|g(x+z)-\sum_{k=0}^r\frac1{k!}D^kg(x)[z,\dots,z]\Bigr\|\le C\|z\|^{r+1} が成り立つ。k=0k=0の項はg(x)g(x)と読む。

証明.(1)を示す。JJは区間であるからτ\tauとτ+h\tau+hを結ぶ線分はJJに含まれる。xxの各成分に§E4.5 定理 1.1を定義域J⊆RJ\subseteq\R、展開点τ\tau、増分hhとして適用し、一変数ではDjxl(τ)[h,…,h]=hjxl(j)(τ)D^jx_l(\tau)[h,\dots,h]=h^jx_l^{(j)}(\tau)であることを用いると、成分ごとの積分として

x(τ+h)−∑j=0rhjj!x(j)(τ)=hr+1r!∫01(1−θ)rx(r+1)(τ+θh) dθx(\tau+h)-\sum_{j=0}^r\frac{h^j}{j!}x^{(j)}(\tau)=\frac{h^{r+1}}{r!}\int_0^1(1-\theta)^rx^{(r+1)}(\tau+\theta h)\,d\theta

を得る。連続写像v ⁣:[0,1]→Rnv\colon[0,1]\to\R^nについて、Riemann 和SN:=1N∑k=1Nv(k/N)S_N:=\frac1N\sum_{k=1}^Nv(k/N)は成分ごとに∫01v(θ) dθ\int_0^1v(\theta)\,d\thetaへ収束し、∥SN∥≤1N∑k=1N∥v(k/N)∥\|S_N\|\le\frac1N\sum_{k=1}^N\|v(k/N)\|の右辺は∫01∥v(θ)∥ dθ\int_0^1\|v(\theta)\|\,d\thetaへ収束する。ノルムは連続であるから∥∫01v(θ) dθ∥≤∫01∥v(θ)∥ dθ\|\int_0^1v(\theta)\,d\theta\|\le\int_0^1\|v(\theta)\|\,d\thetaである。これをv(θ)=(1−θ)rx(r+1)(τ+θh)v(\theta)=(1-\theta)^rx^{(r+1)}(\tau+\theta h)へ適用し、∫01(1−θ)r dθ=1/(r+1)\int_0^1(1-\theta)^r\,d\theta=1/(r+1)を用いると主張の評価を得る。

(2)を示す。K′=∅K'=\varnothingならば示すことはない。ggの各成分glg_lについてDr+1glD^{r+1}g_lは連続であり、K′K'はコンパクトであるから、Ml:=max⁡y∈K′∥Dr+1gl(y)∥opM_l:=\max_{y\in K'}\|D^{r+1}g_l(y)\|_{\mathrm{op}}は有限である。x+θz∈K′x+\theta z\in K'(0≤θ≤10\le\theta\le1)とすると、§E4.5 定理 1.1と§E4.5 系 1.2をglg_l、展開点xx、増分zzに適用して

∣gl(x+z)−∑k=0r1k!Dkgl(x)[z,…,z]∣≤Ml(r+1)!∣z∣r+1\Bigl|g_l(x+z)-\sum_{k=0}^r\frac1{k!}D^kg_l(x)[z,\dots,z]\Bigr|\le\frac{M_l}{(r+1)!}|z|^{r+1}

を得る。ここで∣z∣|z|は§E4.5 系 1.2の評価に現れるRm\R^mのノルムである。有限次元の実線形空間のノルムは互いに同値であるから、任意のz∈Rmz\in\R^mとw∈Rnw\in\R^nについて∣z∣≤β∥z∥|z|\le\beta\|z\|と∥w∥≤β′max⁡l∣wl∣\|w\|\le\beta'\max_l|w_l|を満たすβ,β′>0\beta,\beta'>0が存在する。C:=β′βr+1max⁡lMl/(r+1)!C:=\beta'\beta^{r+1}\max_lM_l/(r+1)!が主張を満たす。▨

命題 1.6.d∈N≥1d\in\NNとし、Rd\R^dにノルム∥⋅∥\|\cdot\|を固定する。Ω⊆R×Rd\Omega\subseteq\R\times\R^dを開集合、f ⁣:Ω→Rdf\colon\Omega\to\R^dを連続写像、t0<Tt_0<T、J⊇[t0,T]J\supseteq[t_0,T]を開区間とし、y∈C2(J;Rd)y\in C^2(J;\R^d)が任意のτ∈J\tau\in Jについて(τ,y(τ))∈Ω(\tau,y(\tau))\in\Omegaとy′(τ)=f(τ,y(τ))y'(\tau)=f(\tau,y(\tau))を満たすとする。このとき前進 Euler 法の局所打切り誤差は、t∈[t0,T)t\in[t_0,T)と0<h≤T−t0<h\le T-tを満たす任意のt,ht,hについて

∥δy(t,h)∥≤h22max⁡τ∈[t,t+h]∥y′′(τ)∥\|\delta_y(t,h)\|\le\frac{h^2}2\max_{\tau\in[t,t+h]}\|y''(\tau)\|

を満たす。特にM2:=max⁡τ∈[t0,T]∥y′′(τ)∥M_2:=\max_{\tau\in[t_0,T]}\|y''(\tau)\|と置くと、[t0,T][t_0,T]の任意の格子について∥dn∥≤M2hn2/2\|d_n\|\le M_2h_n^2/2である。前進 Euler 法の局所次数は11以上である。

証明. 前進 Euler 法の増分関数の定義域はΩ×(0,∞)\Omega\times(0,\infty)であるから(t,y(t),h)(t,y(t),h)はその元であり、y′(t)=f(t,y(t))y'(t)=f(t,y(t))により

δy(t,h)=y(t+h)−y(t)−hy′(t)\delta_y(t,h)=y(t+h)-y(t)-hy'(t)

である。補題 1.5 (1)をr=1r=1として適用すると第一の評価を得る。格子についての評価はt=tnt=t_n、h=hnh=h_nの場合である。局所次数11以上の条件ではf∈C1(Ω;Rd)f\in C^1(\Omega;\R^d)であり、y′(τ)=f(τ,y(τ))y'(\tau)=f(\tau,y(\tau))はC1C^1級写像の合成であるからy∈C2(J;Rd)y\in C^2(J;\R^d)であり、C:=M2/2C:=M_2/2と任意のh0>0h_0>0が局所次数11以上の条件を満たす。▨

例 1.7.d=1d=1、Ω=R2\Omega=\R^2、f(t,u)=uf(t,u)=uとし、解y(τ)=eτy(\tau)=e^\tau(τ∈R\tau\in\R)とt=0t=0を取る。前進 Euler 法の一歩はΨh(0,1)=1+h\Psi_h(0,1)=1+hであるからδy(0,h)=eh−1−h\delta_y(0,h)=e^h-1-hである。§E4.5 定理 1.1をexp⁡\exp、展開点00、増分hh、r=1r=1に適用すると

eh−1−h=h2∫01(1−θ)eθh dθe^h-1-h=h^2\int_0^1(1-\theta)e^{\theta h}\,d\theta

であり、h>0h>0では1≤eθh≤eh1\le e^{\theta h}\le e^hであるからh22≤eh−1−h≤h22eh\frac{h^2}2\le e^h-1-h\le\frac{h^2}2e^hが成り立つ。eh−1=h∫01eθh dθ≤hehe^h-1=h\int_0^1e^{\theta h}\,d\theta\le he^hと合わせると

0≤eh−1−h−h22≤h22(eh−1)≤h32eh0\le e^h-1-h-\frac{h^2}2\le\frac{h^2}2(e^h-1)\le\frac{h^3}2e^h

を得る。h=0.05h=0.05とh=0.025h=0.025での値を小数第12位に丸めると次のとおりである。

hh eh−1−he^h-1-h h2/2h^2/2 eh−1−h−h2/2e^h-1-h-h^2/2 h3eh/2h^3e^h/2
0.050.05 0.0012710963760.001271096376 0.001250.00125 0.0000210963760.000021096376 0.0000657044440.000065704444
0.0250.025 0.0003151205240.000315120524 0.00031250.0003125 0.0000026205240.000002620524 0.0000080102740.000008010274

任意のC≥0C\ge0について、Ch<12Ch<\frac12を満たすh>0h>0ではCh3<h22≤δy(0,h)Ch^3<\frac{h^2}2\le\delta_y(0,h)である。したがって前進 Euler 法の局所次数は22以上でない。

2 Runge–Kutta 法

補題 2.1.d,s∈N≥1d,s\in\NNとし、Rd\R^dにノルム∥⋅∥\|\cdot\|を固定し、R×Rd\R\times\R^dにはノルム∥(t,u)∥:=max⁡{∣t∣,∥u∥}\|(t,u)\|:=\max\{|t|,\|u\|\}を入れる。A=(aij)∈Rs×sA=(a_{ij})\in\R^{s\times s}、c:=A1c:=A\mathbf1(1\mathbf1は全成分が11のベクトル)、α:=max⁡i∑j∣aij∣\alpha:=\max_i\sum_j|a_{ij}|、γ:=max⁡i∣ci∣\gamma:=\max_i|c_i|と置く。Ω⊆R×Rd\Omega\subseteq\R\times\R^dを開集合、f∈C1(Ω;Rd)f\in C^1(\Omega;\R^d)、K⊆ΩK\subseteq\Omegaを空でないコンパクト集合、ρ>0\rho>0をKρ⊆ΩK^\rho\subseteq\Omegaを満たす数とし(KρK^\rhoは補題 1.4の閉近傍)、M:=max⁡Kρ∥f∥M:=\max_{K^\rho}\|f\|と置く。

  1. あるL≥0L\ge0が存在して、(t,u)∈K(t,u)\in K、∣σ−t∣≤ρ|\sigma-t|\le\rho、∥v−u∥≤ρ\|v-u\|\le\rho、∥v′−u∥≤ρ\|v'-u\|\le\rhoを満たす任意のt,u,σ,v,v′t,u,\sigma,v,v'について∥f(σ,v)−f(σ,v′)∥≤L∥v−v′∥\|f(\sigma,v)-f(\sigma,v')\|\le L\|v-v'\|が成り立つ。
  2. LLを(1)を満たす数とし、h>0h>0がhγ≤ρh\gamma\le\rho、hαM≤ρh\alpha M\le\rho、hαL<1h\alpha L<1を満たすとする。このとき任意の(t,u)∈K(t,u)\in Kについて、方程式 ki=f(t+cih, u+h∑j=1saijkj)(1≤i≤s)k_i=f\Bigl(t+c_ih,\ u+h\sum_{j=1}^sa_{ij}k_j\Bigr)\qquad(1\le i\le s) はmax⁡i∥ki∥≤M\max_i\|k_i\|\le Mを満たす解(k1,…,ks)∈(Rd)s(k_1,\dots,k_s)\in(\R^d)^sをただ一つもつ。
  3. (K,ρ,L,h)(K,\rho,L,h)と(K1,ρ1,L1,h)(K_1,\rho_1,L_1,h)がともに(2)の条件を満たし、(t,u)∈K∩K1(t,u)\in K\cap K_1ならば、(2)が二つの組から与える解は一致する。

証明.(1)を示す。(t,u)∈K(t,u)\in Kに対してBt,u:={(σ,v)∣∣σ−t∣≤ρ, ∥v−u∥≤ρ}B_{t,u}:=\{(\sigma,v)\mid|\sigma-t|\le\rho,\ \|v-u\|\le\rho\}は(t,u)(t,u)を中心とする半径ρ\rhoの閉球であり、凸であってKρK^\rhoに含まれる。(σ,v),(σ,v′)∈Bt,u(\sigma,v),(\sigma,v')\in B_{t,u}を結ぶ線分はBt,u⊆KρB_{t,u}\subseteq K^\rhoに含まれるから、補題 1.5 (2)をr=0r=0、K′=KρK'=K^\rho、x=(σ,v)x=(\sigma,v)、z=(0,v′−v)z=(0,v'-v)として適用すると、KρK^\rhoだけで定まるCCについて∥f(σ,v′)−f(σ,v)∥≤C∥(0,v′−v)∥=C∥v′−v∥\|f(\sigma,v')-f(\sigma,v)\|\le C\|(0,v'-v)\|=C\|v'-v\|を得る。L:=CL:=Cが主張を満たす。

(2)を示す。X:={k∈(Rd)s∣max⁡i∥ki∥≤M}X:=\{k\in(\R^d)^s\mid\max_i\|k_i\|\le M\}に距離max⁡i∥ki−ki′∥\max_i\|k_i-k'_i\|を入れると、XXは空でない完備距離空間である。k∈Xk\in Xに対して、点Pi(k):=(t+cih, u+h∑jaijkj)P_i(k):=(t+c_ih,\ u+h\sum_ja_{ij}k_j)は∣cih∣≤hγ≤ρ|c_ih|\le h\gamma\le\rhoと∥h∑jaijkj∥≤hαM≤ρ\|h\sum_ja_{ij}k_j\|\le h\alpha M\le\rhoによりBt,uB_{t,u}に属する。したがってT(k)i:=f(Pi(k))T(k)_i:=f(P_i(k))が定まり、∥T(k)i∥≤M\|T(k)_i\|\le MであるからT ⁣:X→XT\colon X\to Xである。k,k′∈Xk,k'\in XについてPi(k)P_i(k)とPi(k′)P_i(k')は時刻が等しくBt,uB_{t,u}に属するから、(1)により

∥T(k)i−T(k′)i∥≤L∥h∑jaij(kj−kj′)∥≤hαLmax⁡j∥kj−kj′∥\|T(k)_i-T(k')_i\|\le L\Bigl\|h\sum_ja_{ij}(k_j-k'_j)\Bigr\|\le h\alpha L\max_j\|k_j-k'_j\|

であり、hαL<1h\alpha L<1によりTTは縮小写像である。§E2.7 定理 2.2によりTTはXXにただ一つの不動点をもつ。XXの元が方程式の解であることとTTの不動点であることは同値である。

(3)を示す。M1:=max⁡K1ρ1∥f∥M_1:=\max_{K_1^{\rho_1}}\|f\|と置き、M≤M1M\le M_1とする(M1≤MM_1\le Mの場合は二つの組の役割を入れ替える)。(K,ρ,L,h)(K,\rho,L,h)から得た解kkはmax⁡i∥ki∥≤M≤M1\max_i\|k_i\|\le M\le M_1を満たす方程式の解であるから、(K1,ρ1,L1,h)(K_1,\rho_1,L_1,h)に対する(2)の一意性により、(K1,ρ1,L1,h)(K_1,\rho_1,L_1,h)から得た解に一致する。▨

定義 2.2.s∈N≥1s\in\NN、A=(aij)∈Rs×sA=(a_{ij})\in\R^{s\times s}、b∈Rsb\in\R^sとし、c:=A1c:=A\mathbf1と置く。d∈N≥1d\in\NNとし、Rd\R^dにノルムを固定し、R×Rd\R\times\R^dにはノルムmax⁡{∣t∣,∥u∥}\max\{|t|,\|u\|\}を入れる。

  1. 配列 cAbT\begin{array}{c|c}c&A\\\hline&b^{\mathsf T}\end{array} を(A,b)(A,b)の Butcher 配列 (Butcher tableau) という。
  2. Ω⊆R×Rd\Omega\subseteq\R\times\R^dを開集合、f ⁣:Ω→Rdf\colon\Omega\to\R^dを連続写像、(t,u)∈Ω(t,u)\in\Omega、h>0h>0とする。(k1,…,ks)∈(Rd)s(k_1,\dots,k_s)\in(\R^d)^sが、各iiについて(t+cih, u+h∑jaijkj)∈Ω(t+c_ih,\ u+h\sum_ja_{ij}k_j)\in\Omegaと ki=f(t+cih, u+h∑j=1saijkj)(1≤i≤s)k_i=f\Bigl(t+c_ih,\ u+h\sum_{j=1}^sa_{ij}k_j\Bigr)\qquad(1\le i\le s) を満たすとき、(k1,…,ks)(k_1,\dots,k_s)を(t,u,h)(t,u,h)における 段の方程式 (stage equations) の解という。
  3. AAが狭義下三角行列であるとき、(A,b)(A,b)を陽的という。このとき段の方程式はk1=f(t,u)k_1=f(t,u)、ki=f(t+cih, u+h∑j<iaijkj)k_i=f(t+c_ih,\ u+h\sum_{j<i}a_{ij}k_j)(i=2,…,si=2,\dots,s)によってk1,…,ksk_1,\dots,k_sを順に一つずつ定め、解はこれらの点がすべてΩ\Omegaに属するときに限りただ一つ存在する。解が存在する(t,u,h)(t,u,h)の全体をDDとし、Φ(t,u,h):=∑ibiki\Phi(t,u,h):=\sum_ib_ik_iと置く。一歩ごとにffをss回評価する。
  4. AAが狭義下三角行列でないとき、(A,b)(A,b)を陰的という。このときf∈C1(Ω;Rd)f\in C^1(\Omega;\R^d)とし、(t,u)(t,u)を含むコンパクト集合KKとρ\rho、LLが存在して(K,ρ,L,h)(K,\rho,L,h)が補題 2.1 (2)の条件を満たす(t,u,h)(t,u,h)の全体をDDとし、Φ(t,u,h):=∑ibiki\Phi(t,u,h):=\sum_ib_ik_iと置く。ここで(ki)(k_i)は補題 2.1 (2)が与える解であり、補題 2.1 (3)によりK,ρ,LK,\rho,Lの取り方によらない。
  5. (3)または(4)の増分関数を対応させる一段法を、Butcher 配列(A,b)(A,b)の ss段 Runge–Kutta 法 (s-stage Runge–Kutta method) という。(A,b)(A,b)が陽的であるものを 陽的 Runge–Kutta 法 (explicit Runge–Kutta method)、陰的であるものを 陰的 Runge–Kutta 法 (implicit Runge–Kutta method) という。

定義 2.3. Butcher 配列

00012120010001101212\begin{array}{c|cc}0&0&0\\\tfrac12&\tfrac12&0\\\hline&0&1\end{array} \qquad\qquad \begin{array}{c|cc}0&0&0\\1&1&0\\\hline&\tfrac12&\tfrac12\end{array}

の陽的 2 段 Runge–Kutta 法を、それぞれ 中点法 (explicit midpoint method)、Heun 法 (Heun's method) という。一歩はそれぞれ

k1=f(t,u),k2=f(t+h2, u+h2k1),Ψh(t,u)=u+hk2,k_1=f(t,u),\quad k_2=f\bigl(t+\tfrac h2,\ u+\tfrac h2k_1\bigr),\quad \Psi_h(t,u)=u+hk_2,k1=f(t,u),k2=f(t+h, u+hk1),Ψh(t,u)=u+h2(k1+k2)k_1=f(t,u),\quad k_2=f(t+h,\ u+hk_1),\quad \Psi_h(t,u)=u+\tfrac h2(k_1+k_2)

であり、いずれも一歩ごとにffを2回評価する。

定義 2.4.a21=a32=12a_{21}=a_{32}=\tfrac12、a43=1a_{43}=1、他のaij=0a_{ij}=0のA∈R4×4A\in\R^{4\times4}とb=16(1,2,2,1)Tb=\tfrac16(1,2,2,1)^{\mathsf T}を Butcher 配列とする陽的 4 段 Runge–Kutta 法を 古典的 Runge–Kutta 法 (classical Runge–Kutta method) という。c=A1=(0,12,12,1)Tc=A\mathbf1=(0,\tfrac12,\tfrac12,1)^{\mathsf T}であり、一歩は

k1=f(t,u),k2=f(t+h2, u+h2k1),k3=f(t+h2, u+h2k2),k4=f(t+h, u+hk3),k_1=f(t,u),\quad k_2=f\bigl(t+\tfrac h2,\ u+\tfrac h2k_1\bigr),\quad k_3=f\bigl(t+\tfrac h2,\ u+\tfrac h2k_2\bigr),\quad k_4=f(t+h,\ u+hk_3),Ψh(t,u)=u+h6(k1+2k2+2k3+k4)\Psi_h(t,u)=u+\frac h6(k_1+2k_2+2k_3+k_4)

である。一歩ごとにffを4回評価する。

注意 2.5. 解yyとh>0h>0についてy(t+h)=y(t)+∫tt+hf(σ,y(σ)) dσy(t+h)=y(t)+\int_t^{t+h}f(\sigma,y(\sigma))\,d\sigmaである。右辺の積分をhf(t,y(t))hf(t,y(t))で置き換えると前進 Euler 法の一歩を得る。積分を中点での値hf(t+h2,y(t+h2))hf(t+\frac h2,y(t+\frac h2))で置き換え、y(t+h2)y(t+\frac h2)を前進 Euler 法の半歩y(t)+h2f(t,y(t))y(t)+\frac h2f(t,y(t))で置き換えると中点法の一歩を得る。積分を台形則h2{f(t,y(t))+f(t+h,y(t+h))}\frac h2\{f(t,y(t))+f(t+h,y(t+h))\}で置き換え、y(t+h)y(t+h)を前進 Euler 法の一歩y(t)+hf(t,y(t))y(t)+hf(t,y(t))で置き換えると Heun 法の一歩を得る。φ ⁣:R→Rd\varphi\colon\R\to\R^dをC1C^1級写像とし、Ω=R×Rd\Omega=\R\times\R^d上でf(t,u)=φ(t)f(t,u)=\varphi(t)とすると、任意の Butcher 配列(A,b)(A,b)について段の方程式の解はki=φ(t+cih)k_i=\varphi(t+c_ih)ただ一つであり、Ψh(t,u)−u=h∑ibiφ(t+cih)\Psi_h(t,u)-u=h\sum_ib_i\varphi(t+c_ih)は、∫tt+hφ\int_t^{t+h}\varphiを点t+ciht+c_ihでのφ\varphiの値の重みhbihb_iによる重み付き評価で置き換えた値である。このとき中点法、Heun 法、古典的 Runge–Kutta 法の一歩は、それぞれ中点での値hφ(t+h2)h\varphi(t+\frac h2)、台形則、Simpson 則h6{φ(t)+4φ(t+h2)+φ(t+h)}\frac h6\{\varphi(t)+4\varphi(t+\frac h2)+\varphi(t+h)\}を与える。台形則と Simpson 則の誤差は「数値積分」で扱う。

3 後退 Euler 法

定義 3.1.d∈N≥1d\in\NNとし、Rd\R^dにノルムを固定する。Ω⊆R×Rd\Omega\subseteq\R\times\R^dを開集合、f ⁣:Ω→Rdf\colon\Omega\to\R^dを連続写像、(t,u)∈Ω(t,u)\in\Omega、h>0h>0とし、v∈Rdv\in\R^dについての方程式

v=u+hf(t+h,v),(t+h,v)∈Ωv=u+hf(t+h,v),\qquad (t+h,v)\in\Omega

を考える。Ψh(t,u)\Psi_h(t,u)を次で定める。

  1. 方程式の解がただ一つ存在するとき、その解をΨh(t,u)\Psi_h(t,u)とする。
  2. f∈C1(Ω;Rd)f\in C^1(\Omega;\R^d)であり、(t,u,h)(t,u,h)が Butcher 配列111\begin{array}{c|c}1&1\\\hline&1\end{array}の陰的 1 段 Runge–Kutta 法の増分関数の定義域に属するとき、その一歩写像の値u+hku+hkをΨh(t,u)\Psi_h(t,u)とする。

kkが段の方程式k=f(t+h,u+hk)k=f(t+h,u+hk)の解であることとv=u+hkv=u+hkが上の方程式の解であることは同値であるから、(1)と(2)がともに当てはまるとき両者の値は一致する。Ψh(t,u)\Psi_h(t,u)が定まる(t,u,h)(t,u,h)の全体をDDとし、増分関数Φ(t,u,h):=(Ψh(t,u)−u)/h\Phi(t,u,h):=(\Psi_h(t,u)-u)/hを対応させる一段法を 後退 Euler 法 (backward Euler method) という。格子上の近似値yn+1=Ψhn(tn,yn)y_{n+1}=\Psi_{h_n}(t_n,y_n)はyn+1=yn+hnf(tn+1,yn+1)y_{n+1}=y_n+h_nf(t_{n+1},y_{n+1})を満たす。

例 3.2.d=1d=1、Ω=R2\Omega=\R^2、f(t,v)=v2f(t,v)=v^2、t=0t=0、u=1u=1とする。後退 Euler 法の方程式はv=1+hv2v=1+hv^2である。0<h<140<h<\frac14ならば、この方程式は二つの実数解

v±:=1±1−4h2hv_\pm:=\frac{1\pm\sqrt{1-4h}}{2h}

をもつ。v−=21+1−4hv_-=\frac2{1+\sqrt{1-4h}}であり、0<1−4h<10<\sqrt{1-4h}<1から1<v−<21<v_-<2である。二つの解の積はv+v−=1hv_+v_-=\frac1hであり、v−<2v_-<2であるからv+>12h>2v_+>\frac1{2h}>2である。h→0h\to0のときv−→1v_-\to1、v+→+∞v_+\to+\inftyである。解が二つあるから定義 3.1 (1)は当てはまらない。

0<h<140<h<\frac14とし、K:={(0,1)}K:=\{(0,1)\}、ρ:=1\rho:=1と置く。Kρ=[−1,1]×[0,2]K^\rho=[-1,1]\times[0,2]であるからM=max⁡Kρ∣f∣=4M=\max_{K^\rho}|f|=4である。v,v′∈[0,2]v,v'\in[0,2]について∣v2−v′2∣=∣v+v′∣∣v−v′∣≤4∣v−v′∣|v^2-v'^2|=|v+v'||v-v'|\le4|v-v'|であるから、L:=4L:=4は補題 2.1 (1)を満たす。Butcher 配列111\begin{array}{c|c}1&1\\\hline&1\end{array}ではα=γ=1\alpha=\gamma=1であり、hγ<ρh\gamma<\rho、hαM=4h<ρh\alpha M=4h<\rho、hαL=4h<1h\alpha L=4h<1が成り立つ。したがって(0,1,h)(0,1,h)はこの配列の陰的 1 段 Runge–Kutta 法の増分関数の定義域に属し、定義 3.1 (2)によりΨh(0,1)=1+hk\Psi_h(0,1)=1+hkである。ここでkkは段の方程式k=(1+hk)2k=(1+hk)^2の解で∣k∣≤4|k|\le4を満たすものである。段の方程式の解kkと後退 Euler 法の方程式の解v=1+hkv=1+hkはk=(v−1)/h=v2k=(v-1)/h=v^2で対応するから、段の方程式の解はv−2v_-^2とv+2v_+^2である。1<v−2<4<v+21<v_-^2<4<v_+^2であるからk=v−2k=v_-^2であり、Ψh(0,1)=1+hv−2=v−\Psi_h(0,1)=1+hv_-^2=v_-である。

注意 3.3.Λ ⁣:R→Rd×d\Lambda\colon\R\to\R^{d\times d}とβ ⁣:R→Rd\beta\colon\R\to\R^dを連続写像としf(t,u)=Λ(t)u+β(t)f(t,u)=\Lambda(t)u+\beta(t)とすると、後退 Euler 法の方程式は線形方程式(I−hΛ(t+h))v=u+hβ(t+h)(I-h\Lambda(t+h))v=u+h\beta(t+h)であり、I−hΛ(t+h)I-h\Lambda(t+h)が正則ならば解はただ一つである。非線形のffでは解を有限回の演算で求めることができるとは限らず、不動点反復や Newton 法の反復を有限回で打ち切った値が計算に用いられる。局所打切り誤差は方程式の解Ψh(t,u)\Psi_h(t,u)について定まる量であり、打ち切った値とΨh(t,u)\Psi_h(t,u)の差は不動点反復について命題 3.4 (1)が評価する。

命題 3.4.d∈N≥1d\in\NNとし、Rd\R^dにノルム∥⋅∥\|\cdot\|を固定する。I⊆RI\subseteq\Rを開区間、f ⁣:I×Rd→Rdf\colon I\times\R^d\to\R^dを連続写像とし、あるL≥0L\ge0について、任意のσ∈I\sigma\in Iとv,v′∈Rdv,v'\in\R^dに対して∥f(σ,v)−f(σ,v′)∥≤L∥v−v′∥\|f(\sigma,v)-f(\sigma,v')\|\le L\|v-v'\|が成り立つとする。t∈It\in I、h>0h>0、t+h∈It+h\in I、hL<1hL<1とする。

  1. 任意のu∈Rdu\in\R^dについて、方程式v=u+hf(t+h,v)v=u+hf(t+h,v)はRd\R^dにただ一つの解をもち、その解は後退 Euler 法の一歩写像の値Ψh(t,u)\Psi_h(t,u)である。任意のv(0)∈Rdv^{(0)}\in\R^dからv(m+1):=u+hf(t+h,v(m))v^{(m+1)}:=u+hf(t+h,v^{(m)})で定めた列はΨh(t,u)\Psi_h(t,u)に収束し、任意のm∈N≥0m\in\Nについて ∥Ψh(t,u)−v(m)∥≤11−hL∥v(m+1)−v(m)∥\|\Psi_h(t,u)-v^{(m)}\|\le\frac1{1-hL}\|v^{(m+1)}-v^{(m)}\| が成り立つ。
  2. y ⁣:I→Rdy\colon I\to\R^dをy′(σ)=f(σ,y(σ))y'(\sigma)=f(\sigma,y(\sigma))を満たすC1C^1級写像とし、η:=y(t+h)−y(t)−hf(t+h,y(t+h))\eta:=y(t+h)-y(t)-hf(t+h,y(t+h))と置く。このとき ∥y(t+h)−Ψh(t,y(t))∥≤∥η∥1−hL\|y(t+h)-\Psi_h(t,y(t))\|\le\frac{\|\eta\|}{1-hL} が成り立つ。yyがC2C^2級ならば∥η∥≤h22max⁡τ∈[t,t+h]∥y′′(τ)∥\|\eta\|\le\frac{h^2}2\max_{\tau\in[t,t+h]}\|y''(\tau)\|である。

証明.(1)を示す。T(v):=u+hf(t+h,v)T(v):=u+hf(t+h,v)はRd\R^dからそれ自身への写像であり、∥T(v)−T(v′)∥≤hL∥v−v′∥\|T(v)-T(v')\|\le hL\|v-v'\|を満たす。Rd\R^dは空でない完備距離空間でありhL<1hL<1であるから、§E2.7 定理 2.2によりTTはただ一つの不動点をもち、任意のv(0)v^{(0)}から始まる反復列はその不動点に収束する。解がただ一つであるから、定義 3.1 (1)によりその解はΨh(t,u)\Psi_h(t,u)である。v:=Ψh(t,u)v:=\Psi_h(t,u)と置くと、v=T(v)v=T(v)とv(m+1)=T(v(m))v^{(m+1)}=T(v^{(m)})により

∥v−v(m)∥≤∥T(v)−T(v(m))∥+∥v(m+1)−v(m)∥≤hL∥v−v(m)∥+∥v(m+1)−v(m)∥\|v-v^{(m)}\|\le\|T(v)-T(v^{(m)})\|+\|v^{(m+1)}-v^{(m)}\|\le hL\|v-v^{(m)}\|+\|v^{(m+1)}-v^{(m)}\|

であり、移項すると評価を得る。

(2)を示す。v:=Ψh(t,y(t))v:=\Psi_h(t,y(t))と置くとv=y(t)+hf(t+h,v)v=y(t)+hf(t+h,v)であるから

y(t+h)−v=η+h(f(t+h,y(t+h))−f(t+h,v))y(t+h)-v=\eta+h\bigl(f(t+h,y(t+h))-f(t+h,v)\bigr)

であり、∥y(t+h)−v∥≤∥η∥+hL∥y(t+h)−v∥\|y(t+h)-v\|\le\|\eta\|+hL\|y(t+h)-v\|を移項すると第一の評価を得る。yyがC2C^2級ならば、y′(t+h)=f(t+h,y(t+h))y'(t+h)=f(t+h,y(t+h))により−η=y(t)−y(t+h)−(−h)y′(t+h)-\eta=y(t)-y(t+h)-(-h)y'(t+h)である。補題 1.5 (1)をJ=IJ=I、展開点t+ht+h、増分−h-h、r=1r=1として適用すると第二の評価を得る。▨

例 3.5.d=1d=1、I=RI=\R、f(t,u)=−uf(t,u)=-u(L=1L=1)、解y(τ)=e−τy(\tau)=e^{-\tau}、t=0t=0、h=0.1h=0.1とする。後退 Euler 法の一歩は方程式v=1−0.1vv=1-0.1vの解v=Ψ0.1(0,1)=1/1.1v=\Psi_{0.1}(0,1)=1/1.1である。残差はη=e−0.1−1+0.1e−0.1=1.1e−0.1−1\eta=e^{-0.1}-1+0.1e^{-0.1}=1.1e^{-0.1}-1であり、y(0.1)−v=η−0.1(y(0.1)−v)y(0.1)-v=\eta-0.1(y(0.1)-v)から局所打切り誤差はη/1.1\eta/1.1に等しい。v(0)=1v^{(0)}=1から始まる不動点反復はv(m+1)=1−0.1v(m)v^{(m+1)}=1-0.1v^{(m)}であり、v−v(m)=(−0.1)m(v−1)v-v^{(m)}=(-0.1)^m(v-1)を満たし、v(1)=0.9v^{(1)}=0.9、v(2)=0.91v^{(2)}=0.91、v(3)=0.909v^{(3)}=0.909である。小数第12位に丸めた値は次のとおりである。

量 値
残差η\eta −0.004678840160-0.004678840160
局所打切り誤差y(0.1)−vy(0.1)-v −0.004253491055-0.004253491055
命題 3.4 (2)の上界∣η∣/0.9\lvert\eta\rvert/0.9 0.0051987112890.005198711289
反復の誤差v−v(2)v-v^{(2)} −0.000909090909-0.000909090909
命題 3.4 (1)の上界∣v(3)−v(2)∣/0.9\lvert v^{(3)}-v^{(2)}\rvert/0.9 0.0011111111110.001111111111
打ち切った値の誤差y(0.1)−v(2)y(0.1)-v^{(2)} −0.005162581964-0.005162581964

打ち切った値v(2)v^{(2)}の誤差はy(0.1)−v(2)=(y(0.1)−v)+(v−v(2))y(0.1)-v^{(2)}=(y(0.1)-v)+(v-v^{(2)})であり、局所打切り誤差と反復の誤差の和である。

4 位数条件

補題 4.1.s,d∈N≥1s,d\in\NN、A=(aij)∈Rs×sA=(a_{ij})\in\R^{s\times s}、c:=A1c:=A\mathbf1、b∈Rsb\in\R^sとする。Ω⊆R×Rd\Omega\subseteq\R\times\R^dを開集合、f ⁣:Ω→Rdf\colon\Omega\to\R^dを連続写像とし、g ⁣:Ω→R×Rdg\colon\Omega\to\R\times\R^dをg(t,u):=(1,f(t,u))g(t,u):=(1,f(t,u))で定める。(t,u)∈Ω(t,u)\in\Omega、h>0h>0とする。このとき(ki)i↦((1,ki))i(k_i)_i\mapsto((1,k_i))_iは、(t,u,h)(t,u,h)におけるffの段の方程式の解の全体から、(t,u)+h∑jaijξj∈Ω(t,u)+h\sum_ja_{ij}\xi_j\in\Omegaと

ξi=g((t,u)+h∑j=1saijξj)(1≤i≤s)\xi_i=g\Bigl((t,u)+h\sum_{j=1}^sa_{ij}\xi_j\Bigr)\qquad(1\le i\le s)

を満たす(ξi)i∈(R×Rd)s(\xi_i)_i\in(\R\times\R^d)^sの全体への全単射であり、(t,u)+h∑ibi(1,ki)=(t+hbT1, u+h∑ibiki)(t,u)+h\sum_ib_i(1,k_i)=(t+hb^{\mathsf T}\mathbf1,\ u+h\sum_ib_ik_i)が成り立つ。また、開区間JJ上のC1C^1級写像yyで任意のτ∈J\tau\in Jについて(τ,y(τ))∈Ω(\tau,y(\tau))\in\Omegaを満たすものについて、y′(τ)=f(τ,y(τ))y'(\tau)=f(\tau,y(\tau))と、x(τ):=(τ,y(τ))x(\tau):=(\tau,y(\tau))がx′=g(x)x'=g(x)を満たすことは同値である。

証明.ξi=(θi,ki)\xi_i=(\theta_i,k_i)と書く。ggの第1成分は定数11であるから、方程式の第1成分はθi=1\theta_i=1である。すべてのjjについてθj=1\theta_j=1のとき、点(t,u)+h∑jaijξj(t,u)+h\sum_ja_{ij}\xi_jの第1成分はt+h∑jaij=t+ciht+h\sum_ja_{ij}=t+c_ihであり、方程式の第2成分はffの段の方程式ki=f(t+cih, u+h∑jaijkj)k_i=f(t+c_ih,\ u+h\sum_ja_{ij}k_j)に一致する。(t,u)+h∑ibi(1,ki)(t,u)+h\sum_ib_i(1,k_i)の第1成分はt+h∑ibi=t+hbT1t+h\sum_ib_i=t+hb^{\mathsf T}\mathbf1である。最後の主張はx′(τ)=(1,y′(τ))x'(\tau)=(1,y'(\tau))による。▨

補題 4.2.m,s,p∈N≥1m,s,p\in\NNとし、Rm\R^mにノルム∥⋅∥\|\cdot\|を固定する。U⊆RmU\subseteq\R^mを開集合、g∈Cp(U;Rm)g\in C^p(U;\R^m)、A=(aij)∈Rs×sA=(a_{ij})\in\R^{s\times s}、b∈Rsb\in\R^s、α:=max⁡i∑j∣aij∣\alpha:=\max_i\sum_j|a_{ij}|とする。x∈Ux\in Uに対して、κi,q(x),ζi,q(x)∈Rm\kappa_{i,q}(x),\zeta_{i,q}(x)\in\R^m(1≤i≤s1\le i\le s、0≤q≤p−10\le q\le p-1)を、κi,0(x):=g(x)\kappa_{i,0}(x):=g(x)、ζi,q(x):=∑jaijκj,q(x)\zeta_{i,q}(x):=\sum_ja_{ij}\kappa_{j,q}(x)と

κi,q(x):=∑k=1q1k!∑q1,…,qk∈N≥0q1+⋯+qk=q−kDkg(x)[ζi,q1(x),…,ζi,qk(x)](1≤q≤p−1)\kappa_{i,q}(x):=\sum_{k=1}^q\frac1{k!}\sum_{\substack{q_1,\dots,q_k\in\N\\q_1+\dots+q_k=q-k}}D^kg(x)\bigl[\zeta_{i,q_1}(x),\dots,\zeta_{i,q_k}(x)\bigr]\qquad(1\le q\le p-1)

によってqqの小さい順に定める。またG1:=gG_1:=g、Gq+1(x):=DGq(x)[g(x)]G_{q+1}(x):=DG_q(x)[g(x)](1≤q≤p1\le q\le p)と置く。Gq∈Cp+1−q(U;Rm)G_q\in C^{p+1-q}(U;\R^m)である。

  1. JJを開区間、x ⁣:J→Ux\colon J\to Uをx′=g(x)x'=g(x)を満たすC1C^1級写像とする。このときx∈Cp+1(J;Rm)x\in C^{p+1}(J;\R^m)であり、1≤q≤p+11\le q\le p+1についてx(q)=Gq∘xx^{(q)}=G_q\circ xである。さらにh>0h>0とτ,τ+h∈J\tau,\tau+h\in Jについて ∥x(τ+h)−x(τ)−∑q=1phqq!Gq(x(τ))∥≤hp+1(p+1)!max⁡σ∈[τ,τ+h]∥Gp+1(x(σ))∥\Bigl\|x(\tau+h)-x(\tau)-\sum_{q=1}^p\frac{h^q}{q!}G_q(x(\tau))\Bigr\|\le\frac{h^{p+1}}{(p+1)!}\max_{\sigma\in[\tau,\tau+h]}\|G_{p+1}(x(\sigma))\| が成り立つ。
  2. K⊆UK\subseteq Uをコンパクト集合、ρ>0\rho>0をKρ⊆UK^\rho\subseteq Uを満たす数(KρK^\rhoは補題 1.4の閉近傍)、M≥0M\ge0とh1>0h_1>0をh1αM≤ρh_1\alpha M\le\rhoを満たす数とする。各x∈Kx\in Kとh∈(0,h1]h\in(0,h_1]に対し、ξi(x,h)=g(x+h∑jaijξj(x,h))\xi_i(x,h)=g\bigl(x+h\sum_ja_{ij}\xi_j(x,h)\bigr)(1≤i≤s1\le i\le s)とmax⁡i∥ξi(x,h)∥≤M\max_i\|\xi_i(x,h)\|\le Mを満たすξ1(x,h),…,ξs(x,h)∈Rm\xi_1(x,h),\dots,\xi_s(x,h)\in\R^mが与えられているとする。このときC≥0C\ge0が存在して、任意のx∈Kx\in Kとh∈(0,h1]h\in(0,h_1]について ∥h∑ibiξi(x,h)−∑q=1phq∑ibiκi,q−1(x)∥≤Chp+1\Bigl\|h\sum_ib_i\xi_i(x,h)-\sum_{q=1}^ph^q\sum_ib_i\kappa_{i,q-1}(x)\Bigr\|\le Ch^{p+1} が成り立つ。
  3. x∈Ux\in Uと1≤q≤p1\le q\le pを固定し、AAとbbのs2+ss^2+s個の成分を変数とみなすと、∑ibiκi,q−1(x)\sum_ib_i\kappa_{i,q-1}(x)の各成分は次数qq以下の実係数多項式である。

証明.(1)を示す。x′=G1∘xx'=G_1\circ xである。1≤q≤p1\le q\le pについてx∈Cq(J;Rm)x\in C^q(J;\R^m)かつx(q)=Gq∘xx^{(q)}=G_q\circ xであるとすると、GqG_qはC1C^1級であるから、連鎖律によりx(q)x^{(q)}は微分可能であり、x(q+1)=DGq(x)[x′]=DGq(x)[g(x)]=Gq+1∘xx^{(q+1)}=DG_q(x)[x']=DG_q(x)[g(x)]=G_{q+1}\circ xは連続である。したがってx∈Cp+1(J;Rm)x\in C^{p+1}(J;\R^m)であり、補題 1.5 (1)をr=pr=pとして適用すると評価を得る。

(2)を示す。1≤k≤p−11\le k\le p-1についてDkgD^kgは連続であり、κi,q\kappa_{i,q}とζi,q\zeta_{i,q}は連続写像であり、KKはコンパクトであるから、B≥1B\ge1が存在して、任意のx∈Kx\in K、1≤k≤p−11\le k\le p-1、w1,…,wk∈Rmw_1,\dots,w_k\in\R^m、ii、0≤q≤p−10\le q\le p-1について∥Dkg(x)[w1,…,wk]∥≤B∥w1∥⋯∥wk∥\|D^kg(x)[w_1,\dots,w_k]\|\le B\|w_1\|\cdots\|w_k\|と∥ζi,q(x)∥≤B\|\zeta_{i,q}(x)\|\le Bが成り立つ。E:=max⁡{αM, B∑q=0p−1h1q}E:=\max\{\alpha M,\ B\sum_{q=0}^{p-1}h_1^q\}と置く。x∈Kx\in Kとh∈(0,h1]h\in(0,h_1]に対しzi:=h∑jaijξj(x,h)z_i:=h\sum_ja_{ij}\xi_j(x,h)と置くと、ξi(x,h)=g(x+zi)\xi_i(x,h)=g(x+z_i)であり、∥zi∥≤hαM≤ρ\|z_i\|\le h\alpha M\le\rhoであるからx+θzi∈Kρx+\theta z_i\in K^\rho(0≤θ≤10\le\theta\le1)である。

主張 4.2.1. 各r∈{0,1,…,p}r\in\{0,1,\dots,p\}についてCr≥0C_r\ge0が存在して、任意のx∈Kx\in K、h∈(0,h1]h\in(0,h_1]、iiについて

∥ξi(x,h)−∑q=0r−1hqκi,q(x)∥≤Crhr\Bigl\|\xi_i(x,h)-\sum_{q=0}^{r-1}h^q\kappa_{i,q}(x)\Bigr\|\le C_rh^r

が成り立つ。

証明.r=0r=0ではC0:=MC_0:=Mが条件を満たす。r<pr<pについてCrC_rが存在するとする。z^i:=∑q=0r−1hq+1ζi,q(x)\hat z_i:=\sum_{q=0}^{r-1}h^{q+1}\zeta_{i,q}(x)と置くと、zi−z^i=h∑jaij(ξj(x,h)−∑q=0r−1hqκj,q(x))z_i-\hat z_i=h\sum_ja_{ij}\bigl(\xi_j(x,h)-\sum_{q=0}^{r-1}h^q\kappa_{j,q}(x)\bigr)であるから∥zi−z^i∥≤αCrhr+1\|z_i-\hat z_i\|\le\alpha C_rh^{r+1}であり、また∥zi∥≤Eh\|z_i\|\le Eh、∥z^i∥≤Eh\|\hat z_i\|\le Ehである。g∈Cr+1(U;Rm)g\in C^{r+1}(U;\R^m)であるから、補題 1.5 (2)をK′=KρK'=K^\rhoとrrに適用すると、KρK^\rhoとrrだけで定まるC′C'について

∥g(x+zi)−∑k=0r1k!Dkg(x)[zi,…,zi]∥≤C′∥zi∥r+1≤C′Er+1hr+1\Bigl\|g(x+z_i)-\sum_{k=0}^r\frac1{k!}D^kg(x)[z_i,\dots,z_i]\Bigr\|\le C'\|z_i\|^{r+1}\le C'E^{r+1}h^{r+1}

である。1≤k≤r1\le k\le rについて、多重線形性により

Dkg(x)[zi,…,zi]−Dkg(x)[z^i,…,z^i]=∑l=1kDkg(x)[z^i,…,z^i⏟l−1,zi−z^i,zi,…,zi⏟k−l]D^kg(x)[z_i,\dots,z_i]-D^kg(x)[\hat z_i,\dots,\hat z_i]=\sum_{l=1}^kD^kg(x)[\underbrace{\hat z_i,\dots,\hat z_i}_{l-1},z_i-\hat z_i,\underbrace{z_i,\dots,z_i}_{k-l}]

であり、そのノルムはkBαCrEk−1h1k−1hr+1kB\alpha C_rE^{k-1}h_1^{k-1}h^{r+1}以下である。さらに

Dkg(x)[z^i,…,z^i]=∑q1,…,qk=0r−1hk+q1+⋯+qkDkg(x)[ζi,q1(x),…,ζi,qk(x)]D^kg(x)[\hat z_i,\dots,\hat z_i]=\sum_{q_1,\dots,q_k=0}^{r-1}h^{k+q_1+\dots+q_k}D^kg(x)\bigl[\zeta_{i,q_1}(x),\dots,\zeta_{i,q_k}(x)\bigr]

であり、k+q1+⋯+qk≥r+1k+q_1+\dots+q_k\ge r+1を満たす項のノルムはBk+1h1k+q1+⋯+qk−r−1hr+1B^{k+1}h_1^{k+q_1+\dots+q_k-r-1}h^{r+1}以下である。k+q1+⋯+qk=q≤rk+q_1+\dots+q_k=q\le rを満たす項ではql≤q−k≤r−1q_l\le q-k\le r-1であるから、κi,q\kappa_{i,q}の定義により、これらの項に1/k!1/k!を掛けて1≤k≤r1\le k\le rにわたって加えたものは∑q=1rhqκi,q(x)\sum_{q=1}^rh^q\kappa_{i,q}(x)に等しい。k=0k=0の項はg(x)=κi,0(x)g(x)=\kappa_{i,0}(x)である。以上の評価をξi(x,h)=g(x+zi)\xi_i(x,h)=g(x+z_i)に加えると、xx、hh、iiによらないCr+1C_{r+1}について∥ξi(x,h)−∑q=0rhqκi,q(x)∥≤Cr+1hr+1\|\xi_i(x,h)-\sum_{q=0}^rh^q\kappa_{i,q}(x)\|\le C_{r+1}h^{r+1}を得る。▨

主張 4.2.1をr=pr=pで用いると

∥h∑ibiξi(x,h)−∑q=0p−1hq+1∑ibiκi,q(x)∥≤(∑i∣bi∣)Cphp+1\Bigl\|h\sum_ib_i\xi_i(x,h)-\sum_{q=0}^{p-1}h^{q+1}\sum_ib_i\kappa_{i,q}(x)\Bigr\|\le\Bigl(\sum_i|b_i|\Bigr)C_ph^{p+1}

であり、添字をq+1q+1からqqへ付け替えると主張を得る。

(3)を示す。κi,0(x)=g(x)\kappa_{i,0}(x)=g(x)はAAによらない。1≤q≤p−11\le q\le p-1とし、q′<qq'<qについてκi,q′(x)\kappa_{i,q'}(x)の各成分がAAの成分の次数q′q'以下の多項式であるとすると、ζi,q′(x)\zeta_{i,q'}(x)の各成分は次数q′+1q'+1以下の多項式である。Dkg(x)D^kg(x)はAAによらない多重線形写像であるから、Dkg(x)[ζi,q1(x),…,ζi,qk(x)]D^kg(x)[\zeta_{i,q_1}(x),\dots,\zeta_{i,q_k}(x)]の各成分はζi,q1(x),…,ζi,qk(x)\zeta_{i,q_1}(x),\dots,\zeta_{i,q_k}(x)の成分の積の一次結合であり、次数は∑l(ql+1)=q\sum_l(q_l+1)=q以下である。帰納法により、0≤q≤p−10\le q\le p-1についてκi,q(x)\kappa_{i,q}(x)の各成分は次数qq以下の多項式であり、biκi,q−1(x)b_i\kappa_{i,q-1}(x)の各成分は(A,b)(A,b)の次数qq以下の多項式である。▨

命題 4.3.s,p∈N≥1s,p\in\NN、A∈Rs×sA\in\R^{s\times s}、b∈Rsb\in\R^sとする。d∈N≥1d\in\NN、開集合Ω⊆R×Rd\Omega\subseteq\R\times\R^d、f∈Cp(Ω;Rd)f\in C^p(\Omega;\R^d)に対してg:=(1,f) ⁣:Ω→R×Rdg:=(1,f)\colon\Omega\to\R\times\R^dと置き、補題 4.2のκi,q\kappa_{i,q}とGqG_qをU=ΩU=\Omegaとggについて取り、pr⁡2 ⁣:R×Rd→Rd\pr_2\colon\R\times\R^d\to\R^dを第2成分への射影として

Δqf(x):=pr⁡2(∑i=1sbiκi,q−1(x)−1q!Gq(x))(x∈Ω, 1≤q≤p)\Delta^f_q(x):=\pr_2\Bigl(\sum_{i=1}^sb_i\kappa_{i,q-1}(x)-\frac1{q!}G_q(x)\Bigr)\qquad(x\in\Omega,\ 1\le q\le p)

と置く。任意のd∈N≥1d\in\NN、開集合Ω⊆R×Rd\Omega\subseteq\R\times\R^d、f∈Cp(Ω;Rd)f\in C^p(\Omega;\R^d)、x∈Ωx\in\Omegaと1≤q≤p1\le q\le pについてΔqf(x)=0\Delta^f_q(x)=0が成り立つことは、Butcher 配列(A,b)(A,b)の Runge–Kutta 法の局所次数がpp以上であるための必要十分条件である。

証明.d∈N≥1d\in\NN、Rd\R^dのノルム、開集合Ω\Omega、f∈Cp(Ω;Rd)f\in C^p(\Omega;\R^d)、t0<Tt_0<T、開区間J⊇[t0,T]J\supseteq[t_0,T]上の解yyを取り、R×Rd\R\times\R^dにノルムmax⁡{∣t∣,∥u∥}\max\{|t|,\|u\|\}を入れる。Γ:={(τ,y(τ))∣τ∈[t0,T]}\Gamma:=\{(\tau,y(\tau))\mid\tau\in[t_0,T]\}はコンパクトであり、補題 1.4によりΓρ⊆Ω\Gamma^\rho\subseteq\Omegaを満たすρ>0\rho>0が存在する。c:=A1c:=A\mathbf1、M:=max⁡Γρ∥f∥M:=\max_{\Gamma^\rho}\|f\|、α:=max⁡i∑j∣aij∣\alpha:=\max_i\sum_j|a_{ij}|、γ:=max⁡i∣ci∣\gamma:=\max_i|c_i|と置き、LLを補題 2.1 (1)をK=ΓK=\Gammaについて満たす数とし、h1>0h_1>0をh1γ≤ρh_1\gamma\le\rho、h1αmax⁡{1,M}≤ρh_1\alpha\max\{1,M\}\le\rho、h1αL<1h_1\alpha L<1を満たすように取る。

t∈[t0,T)t\in[t_0,T)と0<h≤h10<h\le h_1について、補題 2.1 (2)は(t,y(t),h)(t,y(t),h)における段の方程式の解(ki)(k_i)でmax⁡i∥ki∥≤M\max_i\|k_i\|\le Mを満たすものをただ一つ与える。AAが陽的であれば段の方程式の解は一つしかないから、いずれの場合もこの解が Runge–Kutta 法の増分関数を与え、(t,y(t),h)∈D(t,y(t),h)\in Dである。

x:=(t,y(t))x:=(t,y(t))と置くと、補題 4.1によりξi:=(1,ki)\xi_i:=(1,k_i)はξi=g(x+h∑jaijξj)\xi_i=g(x+h\sum_ja_{ij}\xi_j)と∥ξi∥≤max⁡{1,M}\|\xi_i\|\le\max\{1,M\}を満たし、pr⁡2(x+h∑ibiξi)=Ψh(t,y(t))\pr_2(x+h\sum_ib_i\xi_i)=\Psi_h(t,y(t))である。補題 4.1によりτ↦(τ,y(τ))\tau\mapsto(\tau,y(\tau))はx′=g(x)x'=g(x)を満たす。

補題 4.2 (2)をK=ΓK=\Gammaとmax⁡{1,M}\max\{1,M\}について、補題 4.2 (1)をτ↦(τ,y(τ))\tau\mapsto(\tau,y(\tau))について適用し、∥pr⁡2w∥≤∥w∥\|\pr_2w\|\le\|w\|を用いると、CΓ≥0C_\Gamma\ge0が存在して、t∈[t0,T)t\in[t_0,T)と0<h≤min⁡{h1,T−t}0<h\le\min\{h_1,T-t\}を満たす任意のt,ht,hについて

∥δy(t,h)+∑q=1phqΔqf(t,y(t))∥≤CΓhp+1\Bigl\|\delta_y(t,h)+\sum_{q=1}^ph^q\Delta^f_q(t,y(t))\Bigr\|\le C_\Gamma h^{p+1}(4.3.1)

が成り立つ。

十分性を示す。すべてのΔqf\Delta^f_qが恒等的に00ならば、式 (4.3.1)により∥δy(t,h)∥≤CΓhp+1\|\delta_y(t,h)\|\le C_\Gamma h^{p+1}であり、h0:=h1h_0:=h_1とC:=CΓC:=C_\Gammaが局所次数pp以上の条件を満たす。

必要性を示す。局所次数がpp以上であるとし、dd、Ω\Omega、f∈Cp(Ω;Rd)f\in C^p(\Omega;\R^d)、x∗=(t∗,u∗)∈Ωx_*=(t_*,u_*)\in\Omegaを取る。R:=[t∗−a,t∗+a]×{u∣∥u−u∗∥≤a}⊆ΩR:=[t_*-a,t_*+a]\times\{u\mid\|u-u_*\|\le a\}\subseteq\Omegaを満たすa>0a>0を取る。RRは凸なコンパクト集合であるから、補題 1.5 (2)をr=0r=0、K′=RK'=R、z=(0,v−u)z=(0,v-u)として適用すると、(σ,u),(σ,v)∈R(\sigma,u),(\sigma,v)\in Rについて∥f(σ,v)−f(σ,u)∥≤CR∥v−u∥\|f(\sigma,v)-f(\sigma,u)\|\le C_R\|v-u\|を満たすCRC_Rが存在する。§E10.4 系 4.1により、t∗t_*を含む開区間JJ上のC1C^1級の解yyでy(t∗)=u∗y(t_*)=u_*を満たすものが存在する。[t∗,T]⊆J[t_*,T]\subseteq Jを満たすT>t∗T>t_*を取り、t0:=t∗t_0:=t_*として局所次数の定義と式 (4.3.1)をt=t∗t=t_*で用いると、C≥0C\ge0とh2>0h_2>0が存在して、0<h≤h20<h\le h_2について∥∑q=1phqΔqf(x∗)∥≤Chp+1\|\sum_{q=1}^ph^q\Delta^f_q(x_*)\|\le Ch^{p+1}が成り立つ。Δqf(x∗)≠0\Delta^f_q(x_*)\ne0を満たすq≤pq\le pが存在すると仮定し、その最小のものをq0q_0とすると、∥Δq0f(x∗)+∑q>q0hq−q0Δqf(x∗)∥≤Chp+1−q0\|\Delta^f_{q_0}(x_*)+\sum_{q>q_0}h^{q-q_0}\Delta^f_q(x_*)\|\le Ch^{p+1-q_0}においてh→0h\to0とすることによりΔq0f(x∗)=0\Delta^f_{q_0}(x_*)=0を得て、q0q_0の取り方と両立しない。したがって1≤q≤p1\le q\le pについてΔqf(x∗)=0\Delta^f_q(x_*)=0である。▨

補題 4.4.s∈N≥1s\in\NN、A=(aij)∈Rs×sA=(a_{ij})\in\R^{s\times s}、b∈Rsb\in\R^s、c:=A1c:=A\mathbf1、C:=diag⁡(c)C:=\operatorname{diag}(c)とし、cqc^qは成分ごとの冪(c0:=1c^0:=\mathbf1)とする。三つ組(cq,1,q+1)(c^q,1,q+1)(q∈N≥0q\in\N)から写像(ϕ,K,n)↦(CqAϕ, K/n, n+q+1)(\phi,K,n)\mapsto(C^qA\phi,\ K/n,\ n+q+1)(q∈N≥0q\in\N)を00回以上の有限回適用して得るRs×R×N≥1\R^s\times\R\times\NNの元の全体をT\mathcal Tとする。p∈N≥1p\in\NNとする。Butcher 配列(A,b)(A,b)の Runge–Kutta 法の局所次数がpp以上ならば、(ϕ,K,n)∈T(\phi,K,n)\in\mathcal Tとn≤pn\le pについてbTϕ=K/nb^{\mathsf T}\phi=K/nが成り立つ。

証明.

主張 4.4.1. 各(ϕ,K,n)∈T(\phi,K,n)\in\mathcal Tについて、d∈N≥1d\in\NNと多項式写像F ⁣:R×Rd→RdF\colon\R\times\R^d\to\R^d、y ⁣:R→Rdy\colon\R\to\R^dが存在して、次が成り立つ。y(0)=0y(0)=0、y′(τ)=F(τ,y(τ))y'(\tau)=F(\tau,y(\tau))(τ∈R\tau\in\R)であり、yyの第dd成分はKτn/nK\tau^n/nに等しい。任意のh>0h>0について(0,0,h)(0,0,h)におけるFFの段の方程式の解はただ一つであり、その解(ki)(k_i)の第dd成分を並べたベクトル(ki,d)i(k_{i,d})_iはhn−1ϕh^{n-1}\phiに等しい。

証明. 三つ組(cq,1,q+1)(c^q,1,q+1)についてはd=1d=1、F(τ,v):=τqF(\tau,v):=\tau^q、y(τ):=τq+1/(q+1)y(\tau):=\tau^{q+1}/(q+1)が条件を満たす。段の方程式はki=(cih)qk_i=(c_ih)^q(q=0q=0では11)であり、解はただ一つである。

(ϕ,K,n)(\phi,K,n)についてdd、FF、yyが条件を満たすとし、q∈N≥0q\in\Nを取る。v∈Rdv\in\R^d、w∈Rw\in\RについてF~(τ,(v,w)):=(F(τ,v), τqvd)\tilde F(\tau,(v,w)):=(F(\tau,v),\ \tau^qv_d)と置き、y~(τ):=(y(τ), Knτn+q+1n+q+1)\tilde y(\tau):=\bigl(y(\tau),\ \frac Kn\frac{\tau^{n+q+1}}{n+q+1}\bigr)と置く。y~\tilde yの最後の成分の導関数はKnτn+q=τqyd(τ)\frac Kn\tau^{n+q}=\tau^qy_d(\tau)であるからy~′=F~(τ,y~)\tilde y'=\tilde F(\tau,\tilde y)であり、最後の成分はKnτn+q+1/(n+q+1)\frac Kn\tau^{n+q+1}/(n+q+1)に等しい。(0,0,h)(0,0,h)におけるF~\tilde Fの段の方程式は、最初のdd成分についてはFFの段の方程式であり、最後の成分については

k~i,d+1=(cih)q h∑jaijkj,d=hn+q(CqAϕ)i\tilde k_{i,d+1}=(c_ih)^q\,h\sum_ja_{ij}k_{j,d}=h^{n+q}(C^qA\phi)_i

である。右辺はFFの段の方程式の解だけで定まるから、F~\tilde Fの段の方程式の解はただ一つであり、その最後の成分を並べたベクトルはhn+qCqAϕh^{n+q}C^qA\phiである。したがって三つ組(CqAϕ,K/n,n+q+1)(C^qA\phi,K/n,n+q+1)について条件が成り立つ。T\mathcal Tの各元は出発点に写像を有限回適用したものであるから、適用の回数に関する帰納法により、すべての元について条件が成り立つ。▨

(ϕ,K,n)∈T(\phi,K,n)\in\mathcal Tとn≤pn\le pを取り、主張 4.4.1のdd、FF、yyを取る。t0:=0t_0:=0、T:=1T:=1、J:=RJ:=\Rとする。局所次数の定義により十分小さいh>0h>0について(0,0,h)∈D(0,0,h)\in Dであり、段の方程式の解はただ一つであるから、Φ(0,0,h)\Phi(0,0,h)はその解から定まる。このとき局所打切り誤差δy(0,h)\delta_y(0,h)の第dd成分は

yd(h)−h∑ibiki,d=hn(Kn−bTϕ)y_d(h)-h\sum_ib_ik_{i,d}=h^n\Bigl(\frac Kn-b^{\mathsf T}\phi\Bigr)

である。局所次数がpp以上であり、Rd\R^dのノルムは互いに同値であるから、C′≥0C'\ge0とh0>0h_0>0が存在して、0<h≤h00<h\le h_0についてhn∣K/n−bTϕ∣≤C′hp+1h^n|K/n-b^{\mathsf T}\phi|\le C'h^{p+1}が成り立つ。n≤pn\le pであるから、hnh^nで割ってh→0h\to0とするとbTϕ=K/nb^{\mathsf T}\phi=K/nを得る。▨

定理 4.5.s∈N≥1s\in\NN、A∈Rs×sA\in\R^{s\times s}、b∈Rsb\in\R^s、c:=A1c:=A\mathbf1、C:=diag⁡(c)C:=\operatorname{diag}(c)とし、cqc^qは成分ごとの冪とする。(A,b)(A,b)についての次の条件を考える。

  1. bT1=1b^{\mathsf T}\mathbf1=1。
  2. bTc=12b^{\mathsf T}c=\frac12。
  3. bTc2=13b^{\mathsf T}c^2=\frac13かつbTAc=16b^{\mathsf T}Ac=\frac16。
  4. bTc3=14b^{\mathsf T}c^3=\frac14、bTCAc=18b^{\mathsf T}CAc=\frac18、bTAc2=112b^{\mathsf T}Ac^2=\frac1{12}かつbTA2c=124b^{\mathsf T}A^2c=\frac1{24}。
  1. 各p∈N≥1p\in\NNに対して、s2+ss^2+s変数の実係数多項式P1,…,PNP_1,\dots,P_Nが存在し、任意のA∈Rs×sA\in\R^{s\times s}とb∈Rsb\in\R^sについて、Butcher 配列(A,b)(A,b)の Runge–Kutta 法の局所次数がpp以上であることとP1(A,b)=⋯=PN(A,b)=0P_1(A,b)=\dots=P_N(A,b)=0は同値である。
  2. p∈{1,2,3,4}p\in\{1,2,3,4\}とする。Butcher 配列(A,b)(A,b)の Runge–Kutta 法の局所次数がpp以上であることと、上の条件の最初のpp項がすべて成り立つことは同値である。

証明.(1)を示す。d∈N≥1d\in\NN、開集合Ω\Omega、f∈Cp(Ω;Rd)f\in C^p(\Omega;\R^d)、x∈Ωx\in\Omega、1≤q≤p1\le q\le p、1≤l≤d1\le l\le dの各組について、(A,b)(A,b)に命題 4.3のΔqf(x)\Delta^f_q(x)の第ll成分を対応させる関数を考える。GqG_qは(A,b)(A,b)によらないから、補題 4.2 (3)によりこの関数は次数pp以下の実係数多項式である。これらの多項式全体の集合をS\mathcal Sとする。次数pp以下のs2+ss^2+s変数実係数多項式のなす実線形空間は有限次元であるから、S\mathcal Sが張る部分空間も有限次元であり、S\mathcal Sの元P1,…,PNP_1,\dots,P_Nでその基底をなすものが存在する。S\mathcal Sの各元はP1,…,PNP_1,\dots,P_Nの一次結合であり、各PlP_lはS\mathcal Sの元であるから、S\mathcal Sのすべての元が(A,b)(A,b)で00になることとP1(A,b)=⋯=PN(A,b)=0P_1(A,b)=\dots=P_N(A,b)=0は同値である。命題 4.3により、前者は局所次数がpp以上であることと同値である。

(2)を示す。dd、Ω\Omega、f∈Cp(Ω;Rd)f\in C^p(\Omega;\R^d)、x∈Ωx\in\Omegaを取り、g:=(1,f)g:=(1,f)とし、xxで評価した値をg:=g(x)g:=g(x)、g′[w]:=Dg(x)[w]g'[w]:=Dg(x)[w]、g′′[w,w′]:=D2g(x)[w,w′]g''[w,w']:=D^2g(x)[w,w']、g′′′[w,w′,w′′]:=D3g(x)[w,w′,w′′]g'''[w,w',w'']:=D^3g(x)[w,w',w'']と略記する。p≥2p\ge2ではD2g(x)D^2g(x)は対称である。c=A1c=A\mathbf1によりζi,0=cig\zeta_{i,0}=c_igであり、補題 4.2の定義から、q≤p−1q\le p-1の範囲で

κi,1=cig′[g],κi,2=(Ac)ig′[g′[g]]+ci22g′′[g,g],\kappa_{i,1}=c_ig'[g],\qquad\kappa_{i,2}=(Ac)_ig'[g'[g]]+\frac{c_i^2}2g''[g,g],κi,3=(A2c)ig′[g′[g′[g]]]+(Ac2)i2g′[g′′[g,g]]+ci(Ac)ig′′[g,g′[g]]+ci36g′′′[g,g,g]\kappa_{i,3}=(A^2c)_ig'[g'[g'[g]]]+\frac{(Ac^2)_i}2g'[g''[g,g]]+c_i(Ac)_ig''[g,g'[g]]+\frac{c_i^3}6g'''[g,g,g]

を得る。κi,3\kappa_{i,3}の第3項はk=2k=2の二つの項12g′′[ζi,0,ζi,1]+12g′′[ζi,1,ζi,0]\frac12g''[\zeta_{i,0},\zeta_{i,1}]+\frac12g''[\zeta_{i,1},\zeta_{i,0}]をD2g(x)D^2g(x)の対称性でまとめたものである。Gq+1=DGq[g]G_{q+1}=DG_q[g]に連鎖律とD2gD^2gの対称性を用いると

G2=g′[g],G3=g′′[g,g]+g′[g′[g]],G4=g′′′[g,g,g]+3g′′[g,g′[g]]+g′[g′′[g,g]]+g′[g′[g′[g]]]G_2=g'[g],\quad G_3=g''[g,g]+g'[g'[g]],\quad G_4=g'''[g,g,g]+3g''[g,g'[g]]+g'[g''[g,g]]+g'[g'[g'[g]]]

である。∑ibiκi,q−1\sum_ib_i\kappa_{i,q-1}の係数を∑ibici(Ac)i=bTCAc\sum_ib_ic_i(Ac)_i=b^{\mathsf T}CAc、∑ibi(Ac2)i=bTAc2\sum_ib_i(Ac^2)_i=b^{\mathsf T}Ac^2などの内積で書き、Gq/q!G_q/q!を引くと

Δ1f=(bT1−1)pr⁡2g,Δ2f=(bTc−12)pr⁡2g′[g],\Delta^f_1=(b^{\mathsf T}\mathbf1-1)\pr_2g,\qquad\Delta^f_2=\Bigl(b^{\mathsf T}c-\frac12\Bigr)\pr_2g'[g],Δ3f=(bTAc−16)pr⁡2g′[g′[g]]+12(bTc2−13)pr⁡2g′′[g,g],\Delta^f_3=\Bigl(b^{\mathsf T}Ac-\frac16\Bigr)\pr_2g'[g'[g]]+\frac12\Bigl(b^{\mathsf T}c^2-\frac13\Bigr)\pr_2g''[g,g],Δ4f=(bTA2c−124)pr⁡2g′[g′[g′[g]]]+12(bTAc2−112)pr⁡2g′[g′′[g,g]]+(bTCAc−18)pr⁡2g′′[g,g′[g]]+16(bTc3−14)pr⁡2g′′′[g,g,g]\begin{aligned} \Delta^f_4={}&\Bigl(b^{\mathsf T}A^2c-\frac1{24}\Bigr)\pr_2g'[g'[g'[g]]]+\frac12\Bigl(b^{\mathsf T}Ac^2-\frac1{12}\Bigr)\pr_2g'[g''[g,g]]\\ &+\Bigl(b^{\mathsf T}CAc-\frac18\Bigr)\pr_2g''[g,g'[g]]+\frac16\Bigl(b^{\mathsf T}c^3-\frac14\Bigr)\pr_2g'''[g,g,g] \end{aligned}

を得る(q≤pq\le pの範囲)。条件の最初のpp項が成り立てば、任意のdd、Ω\Omega、ff、xxとq≤pq\le pについてΔqf(x)=0\Delta^f_q(x)=0であり、命題 4.3により局所次数はpp以上である。

逆に局所次数がpp以上であるとする。q=0,1,2,3q=0,1,2,3の三つ組(1,1,1)(\mathbf1,1,1)、(c,1,2)(c,1,2)、(c2,1,3)(c^2,1,3)、(c3,1,4)(c^3,1,4)は補題 4.4のT\mathcal Tに属する。(c,1,2)(c,1,2)にq=0q=0とq=1q=1の写像を適用して(Ac,12,3)(Ac,\frac12,3)と(CAc,12,4)(CAc,\frac12,4)を得る。(c2,1,3)(c^2,1,3)にq=0q=0の写像を適用して(Ac2,13,4)(Ac^2,\frac13,4)を得る。(Ac,12,3)(Ac,\frac12,3)にq=0q=0の写像を適用して(A2c,16,4)(A^2c,\frac16,4)を得る。第3成分がpp以下のものに補題 4.4を適用すると、bT1=1b^{\mathsf T}\mathbf1=1、bTc=12b^{\mathsf T}c=\frac12、bTc2=13b^{\mathsf T}c^2=\frac13、bTAc=16b^{\mathsf T}Ac=\frac16、bTc3=14b^{\mathsf T}c^3=\frac14、bTCAc=18b^{\mathsf T}CAc=\frac18、bTAc2=112b^{\mathsf T}Ac^2=\frac1{12}、bTA2c=124b^{\mathsf T}A^2c=\frac1{24}のうち次数pp以下のものが成り立ち、これは条件の最初のpp項である。▨

5 陽的法の段数と局所次数

補題 5.1.s,p∈N≥1s,p\in\NNとし、A∈Rs×sA\in\R^{s\times s}を狭義下三角行列、b∈Rsb\in\R^sとする。Butcher 配列(A,b)(A,b)の陽的 Runge–Kutta 法の局所次数がpp以上ならばp≤sp\le sである。

証明.d=1d=1、Ω=R2\Omega=\R^2、f(t,u)=uf(t,u)=u、解y(τ)=eτy(\tau)=e^\tau(J=RJ=\R)、t0=0t_0=0、T=1T=1とする。AAは狭義下三角であるからAs=0A^s=0であり、I−hAI-hAは正則で(I−hA)−1=∑j=0s−1hjAj(I-hA)^{-1}=\sum_{j=0}^{s-1}h^jA^jである。(0,1,h)(0,1,h)における段の方程式は(I−hA)k=1(I-hA)k=\mathbf1であるからk=∑j=0s−1hjAj1k=\sum_{j=0}^{s-1}h^jA^j\mathbf1であり、

Ψh(0,1)=R(h),R(h):=1+∑j=1shjbTAj−11\Psi_h(0,1)=R(h),\qquad R(h):=1+\sum_{j=1}^sh^jb^{\mathsf T}A^{j-1}\mathbf1

を得る。よってδy(0,h)=eh−R(h)\delta_y(0,h)=e^h-R(h)である。補題 1.5 (1)をexp⁡\expとr=s+1r=s+1に適用すると

eh−R(h)=∑j=1shj(1j!−bTAj−11)+hs+1(s+1)!+ϵ(h),∣ϵ(h)∣≤hs+2eh(s+2)!e^h-R(h)=\sum_{j=1}^sh^j\Bigl(\frac1{j!}-b^{\mathsf T}A^{j-1}\mathbf1\Bigr)+\frac{h^{s+1}}{(s+1)!}+\epsilon(h),\qquad|\epsilon(h)|\le\frac{h^{s+2}e^h}{(s+2)!}

である。局所次数がpp以上であるとすると、C1≥0C_1\ge0とh0>0h_0>0が存在して0<h≤h00<h\le h_0で∣eh−R(h)∣≤C1hp+1|e^h-R(h)|\le C_1h^{p+1}が成り立つ。j≤min⁡{p,s}j\le\min\{p,s\}でhjh^jの係数が00でないものがあるとし、その最小のjjで両辺をhjh^jで割ってh→0h\to0とすると、その係数が00になり、係数が00でないことと両立しない。よってj≤min⁡{p,s}j\le\min\{p,s\}についてbTAj−11=1/j!b^{\mathsf T}A^{j-1}\mathbf1=1/j!である。p≥s+1p\ge s+1と仮定すると、すべてのj≤sj\le sの係数が00であるから∣hs+1/(s+1)!+ϵ(h)∣≤C1hs+2|h^{s+1}/(s+1)!+\epsilon(h)|\le C_1h^{s+2}となり、hs+1h^{s+1}で割ってh→0h\to0とすると1/(s+1)!=01/(s+1)!=0を得て両立しない。したがってp≤sp\le sである。▨

系 5.2.

  1. 前進 Euler 法の局所次数は11である。
  2. 中点法と Heun 法の局所次数は22である。
  3. 古典的 Runge–Kutta 法の局所次数は44である。
  4. 後退 Euler 法の局所次数は11である。

証明.(1)を示す。命題 1.6により前進 Euler 法の局所次数は11以上であり、例 1.7により22以上でない。

(2)を示す。中点法ではbT1=0+1=1b^{\mathsf T}\mathbf1=0+1=1、bTc=1⋅12=12b^{\mathsf T}c=1\cdot\frac12=\frac12であり、Heun 法ではbT1=12+12=1b^{\mathsf T}\mathbf1=\frac12+\frac12=1、bTc=12⋅0+12⋅1=12b^{\mathsf T}c=\frac12\cdot0+\frac12\cdot1=\frac12である。定理 4.5 (2)により局所次数は22以上であり、補題 5.1により22以下である。

(3)を示す。c=(0,12,12,1)Tc=(0,\frac12,\frac12,1)^{\mathsf T}、Ac=(0,0,14,12)TAc=(0,0,\frac14,\frac12)^{\mathsf T}、Ac2=(0,0,18,14)TAc^2=(0,0,\frac18,\frac14)^{\mathsf T}、A2c=(0,0,0,14)TA^2c=(0,0,0,\frac14)^{\mathsf T}、CAc=(0,0,18,12)TCAc=(0,0,\frac18,\frac12)^{\mathsf T}であり、b=16(1,2,2,1)Tb=\frac16(1,2,2,1)^{\mathsf T}との内積は

bT1=16(1+2+2+1)=1,bTc=16(1+1+1)=12,bTc2=16(12+12+1)=13,bTAc=16(12+12)=16,bTc3=16(14+14+1)=14,bTCAc=16(14+12)=18,bTAc2=16(14+14)=112,bTA2c=16⋅14=124\begin{aligned} &b^{\mathsf T}\mathbf1=\tfrac16(1+2+2+1)=1,&&b^{\mathsf T}c=\tfrac16(1+1+1)=\tfrac12,&&b^{\mathsf T}c^2=\tfrac16(\tfrac12+\tfrac12+1)=\tfrac13,\\ &b^{\mathsf T}Ac=\tfrac16(\tfrac12+\tfrac12)=\tfrac16,&&b^{\mathsf T}c^3=\tfrac16(\tfrac14+\tfrac14+1)=\tfrac14,&&b^{\mathsf T}CAc=\tfrac16(\tfrac14+\tfrac12)=\tfrac18,\\ &b^{\mathsf T}Ac^2=\tfrac16(\tfrac14+\tfrac14)=\tfrac1{12},&&b^{\mathsf T}A^2c=\tfrac16\cdot\tfrac14=\tfrac1{24} \end{aligned}

である。定理 4.5 (2)により局所次数は44以上であり、補題 5.1により44以下である。

(4)を示す。十分小さい刻みでは、後退 Euler 法の一歩写像は Butcher 配列111\begin{array}{c|c}1&1\\\hline&1\end{array}の陰的 1 段 Runge–Kutta 法の一歩写像と同じ値をとる。この配列ではbT1=1b^{\mathsf T}\mathbf1=1、bTc=1≠12b^{\mathsf T}c=1\ne\frac12であるから、定理 4.5 (2)により局所次数は11以上であり22以上でない。▨

例 5.3.d=1d=1、Ω=R2\Omega=\R^2、f(t,u)=3t2f(t,u)=3t^2、解y(τ)=τ3y(\tau)=\tau^3、t=0t=0とする。任意の Butcher 配列(A,b)(A,b)について、段の方程式はki=3(cih)2k_i=3(c_ih)^2であり解はただ一つであるから、Ψh(0,0)=3h3bTc2\Psi_h(0,0)=3h^3b^{\mathsf T}c^2であり

δy(0,h)=h3−3h3bTc2=3h3(13−bTc2)\delta_y(0,h)=h^3-3h^3b^{\mathsf T}c^2=3h^3\Bigl(\frac13-b^{\mathsf T}c^2\Bigr)

である。前進 Euler 法は Butcher 配列001\begin{array}{c|c}0&0\\\hline&1\end{array}の陽的 1 段 Runge–Kutta 法である。Butcher 配列

000232301434\begin{array}{c|cc}0&0&0\\\tfrac23&\tfrac23&0\\\hline&\tfrac14&\tfrac34\end{array}

の陽的 2 段法を含め、各方法のbTc2b^{\mathsf T}c^2とδy(0,h)\delta_y(0,h)は次のとおりである。

方法 bTc2b^{\mathsf T}c^2 δy(0,h)\delta_y(0,h)
前進 Euler 法 00 h3h^3
中点法 1/41/4 h3/4h^3/4
Heun 法 1/21/2 −h3/2-h^3/2
上の陽的 2 段法 1/31/3 00
古典的 Runge–Kutta 法 1/31/3 00
後退 Euler 法 11 −2h3-2h^3

上の陽的 2 段法ではbT1=1b^{\mathsf T}\mathbf1=1、bTc=34⋅23=12b^{\mathsf T}c=\frac34\cdot\frac23=\frac12であるから、定理 4.5 (2)と補題 5.1により局所次数は22である。この方法の局所打切り誤差はこの解ではすべてのh>0h>0で00であるが、局所次数は33以上でない。

定理 5.4.s∈N≥1s\in\NNとし、A∈Rs×sA\in\R^{s\times s}を狭義下三角行列、b∈Rsb\in\R^sとする。

  1. Butcher 配列(A,b)(A,b)の陽的 Runge–Kutta 法の局所次数がpp以上ならばp≤sp\le sである。
  2. s≥5s\ge5ならば、Butcher 配列(A,b)(A,b)の陽的 Runge–Kutta 法の局所次数はss以上でない。特に、局所次数が55の陽的 5 段 Runge–Kutta 法は存在しない。

証明.(1)を示す。補題 5.1により、局所次数がpp以上ならばp≤sp\le sである。

(2)を示す。s≥5s\ge5とし、局所次数がss以上であると仮定する。c:=A1c:=A\mathbf1、C:=diag⁡(c)C:=\operatorname{diag}(c)と置き、cqc^qは成分ごとの冪とする。AAは狭義下三角であるからc1=0c_1=0、c2=a21c_2=a_{21}である。補題 4.4の三つ組(1,1,1)(\mathbf1,1,1)にq=0q=0の写像(ϕ,K,n)↦(Aϕ,K/n,n+1)(\phi,K,n)\mapsto(A\phi,K/n,n+1)をjj回適用すると(Aj1,1/j!,j+1)∈T(A^j\mathbf1,1/j!,j+1)\in\mathcal Tを得る。j=s−1j=s-1とすると第3成分はssであるから、補題 4.4をp=sp=sで用いてbTAs−11=1(s−1)!⋅1s=1s!b^{\mathsf T}A^{s-1}\mathbf1=\frac1{(s-1)!}\cdot\frac1s=\frac1{s!}を得る。(As−1)ij(A^{s-1})_{ij}はi=j0>j1>⋯>js−1=ji=j_0>j_1>\dots>j_{s-1}=jを満たす添字の列にわたる積aj0j1⋯ajs−2js−1a_{j_0j_1}\cdots a_{j_{s-2}j_{s-1}}の和であり、そのような列はjl=s−lj_l=s-lに限るから、bTAs−11=bsas,s−1⋯a21=1/s!b^{\mathsf T}A^{s-1}\mathbf1=b_sa_{s,s-1}\cdots a_{21}=1/s!である。特にc2=a21≠0c_2=a_{21}\ne0である。

r:=s−5r:=s-5、wT:=bTArw^{\mathsf T}:=b^{\mathsf T}A^rと置く。(Ar)ij≠0(A^r)_{ij}\ne0にはi≥j+ri\ge j+rが必要であるから、j>5j>5についてwj=0w_j=0である。補題 4.4の写像をq=0q=0でrr回適用すると、(ϕ,K,n)∈T(\phi,K,n)\in\mathcal Tから(Arϕ, K(n−1)!/(n+r−1)!, n+r)∈T(A^r\phi,\ K(n-1)!/(n+r-1)!,\ n+r)\in\mathcal Tを得る。βq:=(cq,1,q+1)\beta_q:=(c^q,1,q+1)とし、ιq\iota_qを写像(ϕ,K,n)↦(CqAϕ,K/n,n+q+1)(\phi,K,n)\mapsto(C^qA\phi,K/n,n+q+1)とすると、次の表の各行の(ϕ,K,n)(\phi,K,n)はT\mathcal Tに属し、n+r≤sn+r\le sである。補題 4.4によりwTϕ=bTArϕ=K(n−1)!/(n+r)!w^{\mathsf T}\phi=b^{\mathsf T}A^r\phi=K(n-1)!/(n+r)!であり、n+r=s−(5−n)n+r=s-(5-n)を代入すると表の最後の列を得る。

ϕ\phi 生成 KK nn wTϕw^{\mathsf T}\phi
A3cA^3c ι0ι0ι0β1\iota_0\iota_0\iota_0\beta_1 1/241/24 55 1/s!1/s!
A2c2A^2c^2 ι0ι0β2\iota_0\iota_0\beta_2 1/121/12 55 2/s!2/s!
A2cA^2c ι0ι0β1\iota_0\iota_0\beta_1 1/61/6 44 1/(s−1)!1/(s-1)!
CA2cCA^2c ι1ι0β1\iota_1\iota_0\beta_1 1/61/6 55 4/s!4/s!
CAc2CAc^2 ι1β2\iota_1\beta_2 1/31/3 55 8/s!8/s!
Ac2Ac^2 ι0β2\iota_0\beta_2 1/31/3 44 2/(s−1)!2/(s-1)!
CAcCAc ι1β1\iota_1\beta_1 1/21/2 44 3/(s−1)!3/(s-1)!
AcAc ι0β1\iota_0\beta_1 1/21/2 33 1/(s−2)!1/(s-2)!
C2AcC^2Ac ι2β1\iota_2\beta_1 1/21/2 55 12/s!12/s!
c4c^4 β4\beta_4 11 55 24/s!24/s!
c3c^3 β3\beta_3 11 44 6/(s−1)!6/(s-1)!
c2c^2 β2\beta_2 11 33 2/(s−2)!2/(s-2)!
cc β1\beta_1 11 22 1/(s−3)!1/(s-3)!

c~:=c2−c2c\tilde c:=c^2-c_2cと置く。c1=0c_1=0と三角性から、j≤5j\le5の成分は

(Ac)1=(Ac)2=0, (Ac)3=a32c2;(A2c)j=0 (j≤3), (A2c)4=a43a32c2;(A3c)j=0 (j≤4), (A3c)5=a54a43a32c2,(Ac)_1=(Ac)_2=0,\ (Ac)_3=a_{32}c_2;\quad (A^2c)_j=0\ (j\le3),\ (A^2c)_4=a_{43}a_{32}c_2;\quad (A^3c)_j=0\ (j\le4),\ (A^3c)_5=a_{54}a_{43}a_{32}c_2,c~1=c~2=0, c~3=c3(c3−c2);(Ac~)j=0 (j≤3), (Ac~)4=a43c~3;(A2c~)j=0 (j≤4), (A2c~)5=a54a43c~3\tilde c_1=\tilde c_2=0,\ \tilde c_3=c_3(c_3-c_2);\quad (A\tilde c)_j=0\ (j\le3),\ (A\tilde c)_4=a_{43}\tilde c_3;\quad (A^2\tilde c)_j=0\ (j\le4),\ (A^2\tilde c)_5=a_{54}a_{43}\tilde c_3

である。

u:=(w5a54a43w4(c4−c5)a43w3(c3−c5)(c3−c4)),v:=(a32c2c3(c3−c2))u:=\begin{pmatrix}w_5a_{54}a_{43}\\w_4(c_4-c_5)a_{43}\\w_3(c_3-c_5)(c_3-c_4)\end{pmatrix},\qquad v:=\begin{pmatrix}a_{32}c_2&c_3(c_3-c_2)\end{pmatrix}

と置く。wj=0w_j=0(j>5j>5)と上の成分により、cj−c5c_j-c_5がj=5j=5で、(cj−c5)(cj−c4)(c_j-c_5)(c_j-c_4)がj=4,5j=4,5で00になることを用いると

uv=(wTA3cwTA2c~wT(C−c5I)A2cwT(C−c5I)Ac~wT(C−c5I)(C−c4I)AcwT(C−c5I)(C−c4I)c~)uv=\begin{pmatrix} w^{\mathsf T}A^3c & w^{\mathsf T}A^2\tilde c\\ w^{\mathsf T}(C-c_5I)A^2c & w^{\mathsf T}(C-c_5I)A\tilde c\\ w^{\mathsf T}(C-c_5I)(C-c_4I)Ac & w^{\mathsf T}(C-c_5I)(C-c_4I)\tilde c \end{pmatrix}

を得る。実際、第1行の和はj=5j=5の項だけ、第2行の和はj=4j=4の項だけ、第3行の和はj=3j=3の項だけが残り、それぞれu1vu_1v、u2vu_2v、u3vu_3vに等しい。

M:=s! uvM:=s!\,uvと置く。Ccq=cq+1Cc^q=c^{q+1}を用いて

A2c~=A2c2−c2A2c,(C−c5I)A2c=CA2c−c5A2c,(C−c5I)Ac~=CAc2−c2CAc−c5Ac2+c2c5Ac,(C−c5I)(C−c4I)Ac=C2Ac−(c4+c5)CAc+c4c5Ac,(C−c5I)(C−c4I)c~=c4−(c4+c5)c3+c4c5c2−c2{c3−(c4+c5)c2+c4c5c}\begin{aligned} A^2\tilde c&=A^2c^2-c_2A^2c,\qquad (C-c_5I)A^2c=CA^2c-c_5A^2c,\\ (C-c_5I)A\tilde c&=CAc^2-c_2CAc-c_5Ac^2+c_2c_5Ac,\\ (C-c_5I)(C-c_4I)Ac&=C^2Ac-(c_4+c_5)CAc+c_4c_5Ac,\\ (C-c_5I)(C-c_4I)\tilde c&=c^4-(c_4+c_5)c^3+c_4c_5c^2-c_2\{c^3-(c_4+c_5)c^2+c_4c_5c\} \end{aligned}

と展開し、表の値とs!/(s−1)!=ss!/(s-1)!=s、s!/(s−2)!=s(s−1)s!/(s-2)!=s(s-1)、s!/(s−3)!=s(s−1)(s−2)s!/(s-3)!=s(s-1)(s-2)を代入すると

M=(12−sc24−sc58−2sc5−c2{3s−s(s−1)c5}12−3s(c4+c5)+s(s−1)c4c524−6s(c4+c5)+2s(s−1)c4c5−c2{6s−2s(s−1)(c4+c5)+s(s−1)(s−2)c4c5})M=\begin{pmatrix} 1&2-sc_2\\ 4-sc_5&8-2sc_5-c_2\{3s-s(s-1)c_5\}\\ 12-3s(c_4+c_5)+s(s-1)c_4c_5&24-6s(c_4+c_5)+2s(s-1)c_4c_5-c_2\{6s-2s(s-1)(c_4+c_5)+s(s-1)(s-2)c_4c_5\} \end{pmatrix}

である。M=s! uvM=s!\,uvの階数は11以下であるから、MMの2×22\times2小行列式はすべて00である。第1・2行の小行列式は

M11M22−M12M21=sc2(1−c5)M_{11}M_{22}-M_{12}M_{21}=sc_2(1-c_5)

であり、c2≠0c_2\ne0からc5=1c_5=1を得る。c5=1c_5=1を代入するとM31=12−3s+s(s−4)c4M_{31}=12-3s+s(s-4)c_4、M32=24−6s+2s(s−4)c4+2s(s−4)c2−s(s−1)(s−4)c2c4M_{32}=24-6s+2s(s-4)c_4+2s(s-4)c_2-s(s-1)(s-4)c_2c_4であり、第1・3行の小行列式は

M11M32−M12M31=s(s−4)c2(c4−1)M_{11}M_{32}-M_{12}M_{31}=s(s-4)c_2(c_4-1)

である。s≥5s\ge5とc2≠0c_2\ne0からc4=1c_4=1を得る。

(A2c)j=0(A^2c)_j=0(j≤3j\le3)、wj=0w_j=0(j>5j>5)、c4=c5=1c_4=c_5=1により、wT(I−C)A2c=∑j=45wj(1−cj)(A2c)j=0w^{\mathsf T}(I-C)A^2c=\sum_{j=4}^5w_j(1-c_j)(A^2c)_j=0である。一方、表のA2cA^2cとCA2cCA^2cの行から

wT(I−C)A2c=1(s−1)!−4s!=s−4s!≠0w^{\mathsf T}(I-C)A^2c=\frac1{(s-1)!}-\frac4{s!}=\frac{s-4}{s!}\ne0

である。二つの値は両立しないから、局所次数がss以上であるという仮定は成り立たない。▨

6 演習

問題 6.1.補題 1.4の証明を完成させよ。

解答.

K=∅K=\varnothingならば任意のρ\rhoについてKρ=∅K^\rho=\varnothingであり、主張は成り立つ。K≠∅K\ne\varnothingとする。KKは有界であるから∥x′∥≤R0\|x'\|\le R_0(x′∈Kx'\in K)を満たすR0R_0が存在し、KρK^\rhoの元xxは∥x∥≤R0+ρ\|x\|\le R_0+\rhoを満たす。KρK^\rhoの点列(xn)(x_n)がx∈Rmx\in\R^mに収束するとし、∥xn−xn′∥≤ρ\|x_n-x'_n\|\le\rhoを満たすxn′∈Kx'_n\in Kを取る。KKはコンパクトであるから、部分列(xnk′)(x'_{n_k})がx′∈Kx'\in Kに収束し、∥x−x′∥=lim⁡k∥xnk−xnk′∥≤ρ\|x-x'\|=\lim_k\|x_{n_k}-x'_{n_k}\|\le\rhoである。したがってx∈Kρx\in K^\rhoであり、KρK^\rhoはRm\R^mの有界閉集合であるからコンパクトである。

U=RmU=\R^mならば任意のρ>0\rho>0が条件を満たす。U≠RmU\ne\R^mとし、φ(x):=inf⁡{∥x−z∥∣z∈Rm∖U}\varphi(x):=\inf\{\|x-z\|\mid z\in\R^m\setminus U\}と置く。任意のx,x′x,x'についてφ(x)≤∥x−x′∥+φ(x′)\varphi(x)\le\|x-x'\|+\varphi(x')であるから∣φ(x)−φ(x′)∣≤∥x−x′∥|\varphi(x)-\varphi(x')|\le\|x-x'\|であり、φ\varphiは連続である。x∈Ux\in Uならば、UUは開集合であるから{x′′∣∥x′′−x∥<ϵ}⊆U\{x''\mid\|x''-x\|<\epsilon\}\subseteq Uを満たすϵ>0\epsilon>0が存在し、φ(x)≥ϵ>0\varphi(x)\ge\epsilon>0である。KKはコンパクトであるからδ:=min⁡x∈Kφ(x)\delta:=\min_{x\in K}\varphi(x)が存在し、δ>0\delta>0である。ρ:=δ/2\rho:=\delta/2と置き、x∈Kρx\in K^\rhoと∥x−x′∥≤ρ\|x-x'\|\le\rhoを満たすx′∈Kx'\in Kを取る。任意のz∈Rm∖Uz\in\R^m\setminus Uについて∥x−z∥≥∥x′−z∥−∥x−x′∥≥δ−ρ>0\|x-z\|\ge\|x'-z\|-\|x-x'\|\ge\delta-\rho>0であるからx≠zx\ne zであり、x∈Ux\in Uである。▨

問題 6.2. 陽的 2 段 Runge–Kutta 法

000a21a210b1b2\begin{array}{c|cc}0&0&0\\a_{21}&a_{21}&0\\\hline&b_1&b_2\end{array}

について、次を示せ。局所次数が22以上であることとb1+b2=1b_1+b_2=1かつb2a21=12b_2a_{21}=\frac12が成り立つことは同値であり、このとき局所次数は22である。さらにこのとき、d=1d=1、Ω=R2\Omega=\R^2、f(t,u)=φ(t)f(t,u)=\varphi(t)の形の右辺を考えると、次数22以下の任意の実係数多項式φ ⁣:R→R\varphi\colon\R\to\Rについて局所打切り誤差がすべて00になることとa21=23a_{21}=\frac23は同値である。

解答.

c=(0,a21)Tc=(0,a_{21})^{\mathsf T}であるからbT1=b1+b2b^{\mathsf T}\mathbf1=b_1+b_2、bTc=b2a21b^{\mathsf T}c=b_2a_{21}である。定理 4.5 (2)をp=2p=2で用いると、局所次数が22以上であることはb1+b2=1b_1+b_2=1かつb2a21=12b_2a_{21}=\frac12と同値である。このとき補題 5.1により局所次数は22以下であり、したがって22である。

f(t,u)=φ(t)f(t,u)=\varphi(t)とすると、段の方程式の解はki=φ(t+cih)k_i=\varphi(t+c_ih)ただ一つであり、解yyについて

δy(t,h)=∫tt+hφ(σ) dσ−h(b1φ(t)+b2φ(t+a21h))\delta_y(t,h)=\int_t^{t+h}\varphi(\sigma)\,d\sigma-h\bigl(b_1\varphi(t)+b_2\varphi(t+a_{21}h)\bigr)

である。φ(σ)=∑j=02λj(σ−t)j\varphi(\sigma)=\sum_{j=0}^2\lambda_j(\sigma-t)^jと書くと

δy(t,h)=λ0h(1−b1−b2)+λ1h2(12−b2a21)+λ2h3(13−b2a212)\delta_y(t,h)=\lambda_0h(1-b_1-b_2)+\lambda_1h^2\Bigl(\frac12-b_2a_{21}\Bigr)+\lambda_2h^3\Bigl(\frac13-b_2a_{21}^2\Bigr)

である。b1+b2=1b_1+b_2=1とb2a21=12b_2a_{21}=\frac12のもとで最初の二項は00であり、b2a212=12a21b_2a_{21}^2=\frac12a_{21}であるから、任意のλ0,λ1,λ2\lambda_0,\lambda_1,\lambda_2、tt、h>0h>0についてδy(t,h)=0\delta_y(t,h)=0であることは13−12a21=0\frac13-\frac12a_{21}=0、すなわちa21=23a_{21}=\frac23と同値である。このときb2=34b_2=\frac34、b1=14b_1=\frac14であり、例 5.3の陽的 2 段法に一致する。▨

前提記事