Euler's method
Euler's method
- 가장 단순한 미분법
- Initial value problem
- dtdy=f(t,y), a≤t≤b,y(a)=α
- [a,b] 범위를 n등분 : ti=a+ih, i=0,1,2,...,n
- h=(b−a)/n=ti+1−ti를 step size라고 정의
- euler's method 유도를 위한 taylor's theorem
- y(ti+1)=y(ti)+(ti+1−ti)y′(ti)+2(ti+1−t)2y′′(ζi) (ti≤ζ≤ti+1)
- step size 공식에 의해 y(ti+1)=y(ti)+hf(ti,y(ti))+2h2y′′(ζi)
- Euler's method
- wi≃y(ti)로 정으
- w0=α
- wi+1=wi+hf(ti,wi)
- ex. h = 0.5, y(0)=0.5, y′=y−t2+1
- w0=y(0)=0.5
- w1=w0+0.5(w0−02+1)
- w2=w1+0.5(w1−(0.5)2+1
- wj+1=wj+hf(tj,wj) : worward euler method
- wj+1≃wj+hf(tj+1,yj+1) : backward euler method
- wj+1을 풀어야 하나, stable한 장점이 있음
- Runge-Katta method (order 2)
- ∫tjtj+1y′dt=∫tjtj+1f(t,y(t))dt→yj+1−yj≃2h[f(tj,yj)+f(tj+1,yj+1)] : Implicit
- Explicit : yj+1−yj≃2h[f(tj,yj)+f(tj+1,yj+1)^]
- yj+1≃yj+1^=yj+hf(tj,yj)
- Runge-Katta method (order 4)
- Implicit : yj+1−yj=6h[f(tj,yj)+4f(tj+1/2,yj+1/2)+f(tj+1,yj+1)]
- Explicit : yj+1−yj=6h[f(tj,yj)+2f(tj+1/2,yj+1/2^)+2f(tj+1/2,yj+1/2^^)+f(tj+1,yj+1^)]
- yj+1/2^=yj+2hf(tj,yj)
- yj+1/2^^=yj+2hf(tj,yj^)
- yj+1^=yj+hf(tj+yj+1/2^^)