이번 포스팅에서는 미분방정식을 푸는 방법 중 하나인
오일러(Euler)법에 대하여 알아봅시다.
(출처: Chapra의 응용수치해석 3rd edition, Steven C. Chapra 저)
오일러(Euler)법
오일러법은 초기값과 $i$번째 1차 도함수의 기울기를 이용하여
$i+1$번째 함수값을 예측하기 위한 방법입니다.
식과 그림으로 나타내자면 아래와 같습니다.
$$y_{i+1} = y_i +f(t_i,y_i)h$$
식과 그래프를 보면 알 수 있다시피
시간격 h에 대하여 선형외삽하는 방법입니다.
오일러(Euler)법의 오차 분석
오차 분석을 위해 오일러법을 유도하기 위한 Taylor급수 전개를 살펴봅시다.
$$y_{i+1}=y_i+y'_i h+\frac{y''_i}{2!}h^2+...+\frac{y^n _i}{n!}h^n$$
위에서 $y'_i=f(t_i,y_i)$로 나타내었으므로 다시 쓰면
$$y_{i+1}=y_i+f(t_i,y_i) h+\frac{f'(t_i,y_i)}{2!}h^2+...+\frac{f^{n-1}(t_i,y_i)}{n!}h^n$$
오일러법은 테일러급수의 2계 도함수 이상의 항들은 모두 소거하여 사용하지 않으므로
절단오차는 아래와 같습니다.
$$E_t = \frac{f'(t_i,y_i)}{2!}h^2+...+\frac{f^{n-1}(t_i,y_i)}{n!}h^n$$
하지만 만약 시간격 $h=t_{i+1}-t_i$가 충분히 작다면 고차항은 무시할 수 있으므로
절단오차는 아래와 같이 근사할 수 있습니다.
$$E_a = \frac{f'(t_i,y_i)}{2!}h^2=O(h^2)$$
이를 근사절단오차라 하며,
그 크기는 원함수의 2차 도함수 혹은 미분방정식의 1차 도함수에 비례하며
간격의 크기에도 비례한다는 것을 알 수 있습니다.
또한 원함수가 선형함수인 경우에는 2차 도함수가 0이므로
오차가 0이 되어 정해(exact solution)와 같아집니다.
여기까지 오일러(Euler)법에 대해 알아보았습니다.
'공학 > 수치해석' 카테고리의 다른 글
[수치해석] 이분법(bisection method) (0) | 2021.09.05 |
---|---|
[수치해석] 유한차분법(Finite Difference Method) (2) | 2021.09.02 |
[수치해석] 가우스-자이델(Gauss-Seidel) 법 (6) | 2021.07.30 |
[수치해석] LU decomposition/factorization (LU 분해법) (0) | 2021.07.29 |
[수치해석] Gaussian elimination(가우스 소거법) (0) | 2021.07.28 |