logo

일관성을 가지는 멀티스텝 메소드의 안정성과 루트 컨디션 📂수치해석

일관성을 가지는 멀티스텝 메소드의 안정성과 루트 컨디션

정리

만약 멀티스텝 메소드가 일관성을 가진다고 하면, 메소드는 안정성을 가진다     \iff 메소드는 루트 컨디션을 만족 시킨다

설명

폐구간 [x0,b][x_{0} , b] 에 대해 hh 를 단위로 잘라서 노드 포인트를 만들 때, x0x1xN(h)1xN(h)bx_{0} \le x_{1} \le \cdots \le x_{N(h) -1} \le x_{N(h) } \le b 라고 하자. 여기서 N(h)N(h)hh 에 따라 변하는 마지막 노드 포인트의 인덱스를 나타낸다.

원래 주어진 초기값 y0,,ypy_{0} , \cdots , y_{p} 에 대해 아주 조금 변화를 준 z0,,zpz_{0} , \cdots , z_{p} 를 생각해보자. 메소드가 안정성을 가진다는 것은 충분히 작은 양수 hhϵ\epsilon 에 대해 max0npynznϵ\displaystyle \max_{0 \le n \le p} | y_{ n} - z_{n} | \le \epsilon 이라고 할 때, max0nN(h)ynzncϵ\displaystyle \max_{0 \le n \le N(h) } | y_{ n} - z_{n} | \le c \epsilon 를 만족시키는 어떤 상수 CChh 와 독립적으로 존재한다는 것이다. 초기의 작은 변화가 hh 를 조절함에 따라서 큰 변화가 될 수도 있다면 메소드가 안정성을 갖지 않았다고 한다.

증명 1

일관성을 가지는 멀티스텝 메소드: 초기값 문제 {y=f(x,y)(y(x0),,y(xp))=(Y0,,Yp)\begin{cases} y ' = f(x,y) \\ ( y( x_{0} ) , \cdots , y(x_{p}) ) = (Y_{0}, \cdots , Y_{p} ) \end{cases} 에 대해 멀티스텝 메소드 yn+1=j=0pajynj+hj=1pbjf(xnj,ynj) y_{n+1} = \sum_{j=0}^{p} a_{j} y_{n-j} + h \sum_{j = -1}^{p} b_{j} f (x_{n-j} , y_{n-j} ) 는 다음을 만족한다. {j=0paj=1j=0pjaj+j=1pbj=1 \begin{cases} \displaystyle \sum_{j = 0}^{p} a_{j} = 1 \\ \displaystyle - \sum_{j = 0}^{p} j a_{j} + \sum_{j = -1}^{p} b_{j} = 1 \end{cases}

루트 컨디션: 일관성을 가진 멀티스텝 메소드에 대해 ρ(r)=rp+1j=0pajrpj\displaystyle \rho ( r) = r^{p+1} - \sum_{j=0}^{p} a_{j} r^{p-j} 라고 하자. 방정식 ρ(r)=0\rho (r ) = 0 의 근 r0,,rpr_{0} , \cdots , r_{p} 들이 다음 조건들을 만족시킬 때, 주어진 멀티스텝 메소드는 루트 컨디션root condition을 만족시킨다고 한다.

  • (i): rj1| r_{j} | \le 1
  • (ii): rj=1    ρ(rj)0|r_{j}| = 1 \implies \rho ‘(r_{j}) \ne 0

()(\Rightarrow)

메소드가 안정성을 가짐에도 루트 컨디션을 만족시키지 않는다고 가정해보자.

이 가정에 대해 초기값 문제 {y=0y(0)=0\begin{cases} y ' = 0 \\ y(0) = 0 \end{cases} 가 반례가 됨을 보일 것이다.

주어진 문제의 뉴메리컬 솔루션은 자명하게도 모든 n0n \ge 0 에 대해 yn=0y_{n} = 0 이다.

여기서 y0,,ypy_{0} , \cdots , y_{p} 에 대해 아주 조금 변화를 준 z0,,zpz_{0} , \cdots , z_{p} 를 생각해보면 zn+1=a0zn+a1zn1++ap1znp1+apznp z_{n+1} = a_{0} z_{n} + a_{1} z_{n-1} + \cdots + a_{p-1} z_{n-p-1} + a_{p} z_{n -p} 캐릭터리스틱 솔루션을 구하기 위해 zn:=rnz_{n} := r^{n} 라고 하면 rn+1=a0rn+a1rn1++ap1rnp1+aprnp r^{n+1} = a_{0} r^{n} + a_{1} r^{n-1} + \cdots + a_{p-1} r^{n-p-1} + a_{p} r^{n -p} 양변을 rnpr^{n-p} 로 나누면 rp+1=a0rp+a1rn1++ap1r1+ap r^{p+1} = a_{0} r^{p} + a_{1} r^{n-1} + \cdots + a_{p-1} r^{1} + a_{p} p+1p+1차 방정식은 r0=1r_{0}=1 외에도 pp 개의 근 r1,r2,,rpr_{1}, r_{2} , \cdots , r_{p} 을 갖는다. 따라서 제너럴 솔루션은 어떤 c0,,cpc_{0} , \cdots , c_{p} 에 대해 zn=c0r0n+c1r1n++cprpn z_{n} = c_{0} r_{0}^{n} + c_{1} r_{1}^{n} + \cdots + c_{p} r_{p}^{n} 이때 어떤 0jp0 \le j \le p 에 대해 다음의 두 가지 경우를 생각해보자.

  • Case 1.
    조건 (i)을 만족하지 않아 j j 에 대해 rj>1|r_{j}| > 1 인 경우z0=0++cjrj0++0=ϵz_{0} = 0 + \cdots + c_{j} r_{j}^{0} + \cdots + 0 = \epsilonci={ϵ,i=j0,ijc_{i} = \begin{cases} \epsilon & , i = j \\ 0 & , i \ne j \end{cases} 이라고 하면 z0=cjrj0=ϵ z_{0} = c_{j} r_{j}^{0} = \epsilon 이다. 다시 말해 z0=cj(rj)0    zn=cj(rj)nz_{0} = c_{j} ( r_{j} ) ^{0} \implies z_{ n} = c_{j} ( r_{j} ) ^{n} 이므로 z0=ϵ,z1=ϵrj,,zp=ϵrjp z_{0} = \epsilon, z_{1} = \epsilon r_{j } , \cdots , z_{p} = \epsilon r_{j}^{p} 이고 max0npynzn=ϵrjp \max_{0 \le n \le p } | y_{n} - z_{n} | = \epsilon | r_{j} |^{p} 메소드를 [x0,b][x_{0} , b] 에 적용시켜보면 maxx0xnbynzn=ϵrjN(h) \max_{x_{0} \le x_{n} \le b } | y_{n} - z_{n} | = \epsilon |r_{j}|^{N(h)} 그런데 h0h \to 0 일 때 N(h)N(h) \to \infty 이고 rj>1|r_{j}| > 1 이므로 maxx0xnbynzn=cϵrjp \max_{x_{0} \le x_{n} \le b } | y_{n} - z_{n} | = c \cdot \epsilon |r_{j}|^{p} 를 만족하는 C>0C>0 는 존재할 수 없다. 따라서 메소드는 안정성을 가지지 못하게 된다.
  • Case 2.
    조건 (ii)를 만족하지 않아 jj 에 대해 rj=1    ρ(rj)=0|r_{j}| = 1 \implies \rho’(r_{j}) = 0 인 경우이는 rj=1|r_{j}| = 1 이면 rjr_{j} 이 특성방정식의 중근이라는 의미로, rjr_{j} 의 중복도 ν\nu 는 적어도 22 여야한다. 이 경우 제너럴 솔루션은 선형독립인 파티큘러 솔루션 rjn,nrjn,,nν1rjnr_{j}^{n} , n r_{j}^{n} , \cdots , n^{ \nu - 1} r_{j}^{n} 들을 포함한 선형결합으로 나타난다. 수식으로 쓰면, zn=cj0rjn+cj1nrjn++cjν1nν1rjn z_{n} = c_{j_{0}} r_{j}^{n} + c_{j_{1}} n r_{j}^{n} + \dots + c_{j_{\nu-1}} n^{\nu-1} r_{j}^{n} 여기서 ϵ:=max0kν1cjk\displaystyle \epsilon := \max_{ 0 \le k \le \nu-1} | c_{j_{k}} | 라고 두면 rj=1| r_{j} | = 1 이므로 z0ϵ,z12ϵ,,zpϵ(1+p++pν1)=ϵpν1p1 | z_{0 } | \le \epsilon , | z_{1 } | \le 2 \epsilon , \cdots , \displaystyle | z_{ p} | \le \epsilon ( 1 + p + \cdots + p^{\nu -1} ) = \epsilon {{ p^{\nu} -1 } \over { p - 1}} 멀티스텝 메소드이므로 p2p \ge 2 에 대해 max0npynzn=ϵpν1p1 \max_{0 \le n \le p } | y_{n} - z_{n} | = \epsilon {{ p^{\nu} -1 } \over { p - 1}} 메소드를 [x0,b][x_{0} , b] 에 적용시켜보면 maxx0xnbynzn=ϵN(h)ν1N(h)1 \max_{x_{0} \le x_{n} \le b } | y_{n} - z_{n} | = \epsilon {{ N(h)^{\nu} -1 } \over { N(h) - 1}} 그런데 h0h \to 0 일 때 N(h)N(h) \to \infty 이므로 maxx0xnbynzn=cϵpν1p1 \max_{x_{0} \le x_{n} \le b } | y_{n} - z_{n} | = c \cdot \epsilon {{ p^{\nu} -1 } \over { p - 1}} 를 만족하는 C>0C>0 는 존재할 수 없다. 따라서 메소드는 안정성을 가지지 못하게 된다.

()(\Leftarrow) 원래의 증명이 지나치게 어려워서 많은 비약이 있다2.

en:=ynzne_{n} : = y_{n} - z_{n} 이라고 하면 비동차 선형미분방정식 y=z+ey = z + e 을 푸는 것으로 생각할 수 있다.

반대로 z=yez = y - e 는 동차 선형미분방정식이 된다. yn+1=j=0pajynj+hj=1pbjf(xnj,ynj) \begin{align} \displaystyle y_{n+1} = \sum_{j=0}^{p} a_{j} y_{n-j} + h \sum_{j = -1}^{p} b_{j} f (x_{n-j} , y_{n-j} ) \end{align}

zn+1=j=0pajznj+hj=1pbjf(xnj,znj) \begin{align} \displaystyle z_{n+1} = \sum_{j=0}^{p} a_{j} z_{n-j} + h \sum_{j = -1}^{p} b_{j} f (x_{n-j} , z_{n-j} ) \end{align} (1)(1) 에서 (2)(2) 를 빼면 en+1=i=0najenj+hj=1pbj[f(xnj,ynj)f(xnj,znj)] e_{n+1} = \sum_{i=0}^{n} a_{j} e_{n-j} + h \sum_{j= -1}^{p} b_{j} \left[ f(x_{n-j} , y_{n- j }) - f(x_{n-j} , z_{n- j }) \right] 을 얻는다. yn=d0s0n+d1s1n++dpspny_{n} = d_{0} s_{0}^{n} + d_{1} s_{1}^{n} + \cdots + d_{p} s_{p}^{n} 이라고 하면 en=g0(r0+s0)n+g1(r1+s1)n++gp(rp+sp)n e_{n} = g_{0} ( r_{0} + s_{0} )^n + g_{1} ( r_{1} + s_{1} )^n + \cdots + g_{p} ( r_{p} + s_{p} )^n 이에 대해 max0npynzn=ϵ\displaystyle \max_{0 \le n \le p} | y_{ n} - z_{n} | = \epsilon 이라고 두자.주어진 메소드는 en=g0(r0+s0)n+g1(r1+s1)n++gp(rp+sp)n e_{n} = g_{0} ( r_{0} + s_{0} )^n + g_{1} ( r_{1} + s_{1} )^n + \cdots + g_{p} ( r_{p} + s_{p} )^n (r0+s0),,(rp+sp)( r_{0} + s_{0} ) , \cdots , ( r_{p} + s_{p} ) 에 대해서도 루트 컨디션을 만족하므로, en=g0r0+s0n+g1r1+s1n++gprp+spnpmax1ipgimax1ipri+sinpϵ1 \begin{align*} \displaystyle | e_{n} | =& | g_{0} | | r_{0} + s_{0} |^n + | g_{1} | | r_{1} + s_{1} | ^n + \cdots + | g_{p} | | r_{p} + s_{p} |^n \\ \le & p \max_{1 \le i \le p} | g_{i}| \max_{1 \le i \le p} | r_{i} + s_{i} |^n \\ \le & p \cdot \epsilon \cdot 1 \end{align*} 따라서 maxx0xnben=pϵ\displaystyle \max_{ x_{0} \le x_{n} \le b} | e_{n} | = p \epsilon 이고, 메소드는 안정성을 갖는다.


  1. Atkinson. (1989). An Introduction to Numerical Analysis(2nd Edition): p398~401. ↩︎

  2. Isaacson. (2012). ANALYSIS OF NUMERICAL METHODS: p405~417. https://www.researchgate.net/file.PostFileLoader.html?id=56c583ac5e9d97577f8b458e&assetKey=AS:330399868833792@1455784875579 ↩︎