오일러 방법 (Euler Method)

미분방정식이 다음과 같이 주어 졌다고 하자.
\[\frac{dy}{dt}=f(y,t)\qquad a\le t\le b\qquad y(a)=\alpha\]
구간 \([a,b]\)를 \(N\)개로 나누었을 때 각 점을
\[t_n=a+nh\ (n=0,1,2,\cdots,N)\]
이라 하자. 이 때 \(h={b-a\over N}=t_{n+1}-t_n\) 이다. 함수 \(f\)에 대한 테일러 급수를 전개하면
\[\begin{align}y(t_{n+1})&=y(t_n)+(t_{n+1}-t_n)y'(t_n)+\frac{(t_{n+1}-t_n)^2}{2!}y''(\xi)\\&=y(t_n)+hf(t_n,y(t_n))+R_2\end{align}\]
윗 식에서 \(a<\xi<b\) 이다. 오일러 방법은 \(y(t_{n+1})\)에 대한 근사치로 마지막 항 \(R_2\)를 없앤 값을 사용한다.
\[y\approx y(t_n)+hf(t_n,y_n)\ (n=0,1,2,\cdots N-1)\]

[예제] 다음 미분 방정식의 정해를 변수 분리법으로 구하고 오일러 방법으로 근사해를 구한 후 각 점에서의  오차를 계산하라. 단, \(h=0.1\)을 적용한다.
\[\dot{y}=\frac{1}{1-y}\qquad0\le y\le0.5\qquad y(0)=0\]
<풀이> \(\dot{y}=dy/dt\) 이므로 \((1-y)dy=dt\)로 쓸 수 있다. 양변을 적분하면
\[\begin{gather}\int{(1-y)}dy=\int dt\\y-\frac{y^2}{2}=t+C_1\end{gather}\]
여기서 \(C_1\)은 적분상수이고 새로운 적분상수 \(C_2=C_1+1\)를 도입하고 정리하면
\[\begin{gather}(y-1)^2=-2t+C_2\\y=1\pm\sqrt{C_2-2t}\end{gather}\]
초기조건에 의해 \(y(0)=1\pm\sqrt{C_2}=0\) 이므로 \(C_2=1\) 이고
\[y=1-\sqrt{1-2t}\]
오일러 방법은 초기조건 \(y(0)=0\) 이므로 \(y(0.1)\)은
\[y(0.1)=y(0)+h\times{1\over1-y(0)}=0+0.1\times{1\over1-0}=0.100\]
이어서 \(y(0.2)\)는 위의 결과로부터
\[y(0.2)=y(0.1)+h\times{1\over1-y(0.1)}=0.100+0.1\times{1\over1-0.100}=0.211\]
같은 방법으로 \(y(0.3),\dots,y(0.5)\)까지 구하고 각 점에서 오차를 구하면 아래와 같다.

t정해근사해오차
0.00.0000.0000.000
0.10.1060.100-0.006
0.20.2250.211-0.014
0.30.3680.338-0.030
0.40.5530.489-0.064
0.51.0000.685-0.315



댓글

이 블로그의 인기 게시물

전단응력 (Shear Stress)

굽힘모멘트 적분에 의한 보의 처짐 (Deflections by Bending-Moment Integration)

표면장력 공식