Mathematics/Calculus

[Calculus] 수치 미분(numerical differential)

언킴 2022. 3. 11. 14:17
반응형

 

 

수치미분(Numerical differential)은 함수의 일부분을 다항식으로 변경한 후 변경한 다항식을 미분하는 것이다. 미분에는 해석적미분(Analytical differential)과 수치미분(Numerical differential)이 존재하는데, 해석적미분은 우리가 $\frac{df}{dx}$와 같은 형태로 공식을 통해 논리적인 전개로 하여금 미분을 수행하는 것을 일컫는다. 수치미분은 해석적미분으로는 불가능한 문제를 수치적으로 접근하여 근사하는 방식을 일컫는다. 컴퓨터의 경우 사람과는 다르게 해석적미분이 불가능하기 때문에, 수치적으로 접근해 근사하는 방식을 사용하고 있다. 

 

수치미분은 아주 작은 차분으로 미분함으로써 미분값을 근사하는 방식이다. 실제로 python에서 구현할 때에는 반올림 오차 문제가 존재하기 때문에 변화량을 소숫점 8자리 이하로 설정하면 안된다. 수치미분하는 방식은 전방 차분, 중앙 차분, 후방 차분으로 총 세 가지의 차분이 존재한다. 

 

전방 차분

전방 차분의 경우 다음과 같이 수식을 정의할 수 있으며 $x$의 진정한 미분값과 우리가 근사한 $x+h$점의 미분값 간은 차이가 존재한다.

\[ f^{\prime}(x) = \lim_{h \rightarrow 0} \frac{f(x+h) - f(x)}{h} \] 

후방 차분

후방 차분은 다음과 같이 수식을 정의할 수 있으며, 후방 차분 역시 전방 차분과 마찬가지로 $x$에 대한 진정한 미분 값이 아니라 $x-h$에 대한 미분 값이기 때문에 둘 간의 괴리가 존재한다. 

\[ f^{\prime}(x) = \lim_{h \rightarrow 0} \frac{f(x-h) - f(x)}{h} \] 

중앙 차분

이러한 문제점을 보완하기 위해 나온 것이 바로 중앙 차분이다. 중앙 차분은 후방 차분과 전방 차분을 결합해 만들 수 있으며, 진정한 미분값에 보다 근사할 수 있다. 

\[ \begin{equation} \begin{split} & f^{\prime}(x) = \lim_{h \rightarrow 0} \frac{1}{2} \cdot (\frac{f(x+h) - f(h)}{h} - \frac{f(x-h) - f(h)}{h}) \\ \\ & = \lim_{h \rightarrow 0} \frac{1}{2} \cdot \frac{f(x+h) - f(x-h)}{h} \\ \\  & = \lim_{h \rightarrow 0} \frac{f(x+h) - f(x-h)}{2h} \end{split} \end{equation} \]