공학/수치해석

[수치해석] 유한차분법(Finite Difference Method)

슬기나무 2021. 9. 2. 22:52
반응형

이번 포스팅에서는 수치적분법 중 하나인 유한차분법에 대해 알아보겠습니다.

(출처: Chapra의 응용수치해석 3rd edition, Steven C. Chapra 저)

 유한차분법(Finite Difference Method)

유한차분법은 미분방정식을 도함수의 근사값을 사용하여 푸는 방법으로

 

유한차분방정식은 전방(forward), 후방(backward), 중앙(central) 차분법 등

 

세가지로 나눌 수 있으며, 각 식은 Taylor 급수 전개를 통해 유도 가능합니다.

 

 

 유도(derivation) 과정

Taylor 급수 전개를 통해 각 유한차분방정식을 유도해 보겠습니다.

 

우선 아래 그림과 같은 형태를 가지는 함수 $f(x)$가 존재한다고 가정하고,

 

음과 양의 방향으로 $h$만큼 떨어진 거리의 함수값을 생각해봅시다.

 

전방유한차분법(forward finite difference method)

 

$x$와 $x+h$을 중심으로하여 Taylor 급수 전개를 합니다.

 

$$f(x+h) = f(x) + hf'(x)+\frac{h^2}{2!}f''(x)+\frac{h^3}{3!}f'''(x)+... \tag{1}$$

 

여기서 $h^2$ 이후의 항을 소거하여 식을 정리하면

 

$$f'(x) = \frac{f(x+h)-f(x)}{h}$$

 

따라서 도함수 $f'(x)$는 전방유한차분법에 의해 $\frac{f(x+h)-f(x)}{h}$로 근사하여

 

미분방정식을 풀 수 있습니다.

 

이 때 근사로 인한 오차의 크기는 $O(h^2)$입니다.

 

후방유한차분법(backward finite difference method)

 

전방유한차분법과는 반대로 $x-h$와 $x$을 중심으로하여 Taylor 급수 전개를 합니다.

 

$$f(x-h) = f(x) - hf'(x)+\frac{h^2}{2!}f''(x)-\frac{h^3}{3!}f'''(x)+... \tag{2}$$

 

마찬가지로 여기서도 $h^2$ 이후의 항을 소거하여 식을 정리하면

 

$$f'(x) = \frac{f(x)-f(x-h)}{h}$$

 

따라서 도함수 $f'(x)$는 후방유한차분법에 의해 $\frac{f(x)-f(x-h)}{h}$로 근사할 수 있습니다.

 

이 역시 근사로 인한 오차의 크기는 $O(h^2)$입니다.

 

중앙유한차분법(central finite difference method)

 

앞서 설명드린 두가지 방법에 비해 일반적으로 중앙유한차분법은

 

좀 더 정확한 방법으로 여겨집니다.

 

앞에서 Taylor 급수 전개했던 식 (1)과 식 (2)를 이용하여 유도할 수 있는데요.

 

식 (1)에서 식 (2)를 빼겠습니다. 그러면 아래와 같이 정리됩니다.

 

$$f(x+h)-f(x-h) = 2hf'(x)+\frac{2h^3}{3!}f'''(x)+... \tag{3}$$

 

$h^2$ 이후의 항을 소거하여 식을 정리하면 도함수 $f'(x)$는 아래와 같이 근사됩니다.

 

$$f'(x) = \frac{f(x+h)-f(x-h)}{2h}$$

 

여기에서 근사로 인한 오차의 크기는 $O(h^3)$입니다.

 

 

여기까지 유한차분법에 대하여 설명드렸습니다.

반응형