수치해석에서의 스플라인
빌드업
인터폴레이션이란 정확한 함수를 복원하는 게 아니라 그와 유사하면서도 다루기 편한 함수를 구하는 것이 목적이다. 물론 익스플릭시트explicit하고 계산이 쉬워지도록 구할 수 있다면야 제일 좋겠지만, 이 우주는 그렇게 만만한 곳이 아니다.
문제에 따라서는 간단한 부분을 빨리 풀고 복잡한 부분을 정교하게 풀어야할 수도 있고, 연속성조차 보장되지 않을 수도 있다. 이렇듯 전 구간이 아니라 각 구간마다 다른 인터폴레이션을 찾는 것을 피스와이즈 인터폴레이션piecewise Interpolation이라 한다.
물론 조각으로 나눴다고 무조건 좋은 건 아니고, 그 중에서도 쓸만한 인터폴레이션이 필요하다.
정의 1
구간 $[a,b]$ 를 $a \le x_{0} < x_{1} < \cdots < x_{n} < \cdots x_{N} \le b$ 와 같은 노드 포인트들로 쪼갰다고 하자. 다음의 성질을 가진 $s$ 를 $m$ 차 스플라인spline이라 한다.
- (P1): 각각의 $[x_{i-1} , x_{i}]$ 에서 $\deg s < m$
- (P2): $0 \le r \le m-2$ 에 대해 $s^{(r)} (x)$ 이 $[a,b]$ 에서 연속
설명
스플라인이란 미분가능성에 대해 좋은 성질을 가지는 폴리노미얼 인터폴레이션으로써, 실제로는 여기에 몇가지 조건을 더해서 사용하게 된다. 피스와이즈 인터폴레이션인만큼 주어진 데이터가 엉망진창일수록 일반적인 폴리노미얼 인터폴레이션보다 좋다.
같이보기
Atkinson. (1989). An Introduction to Numerical Analysis(2nd Edition): p166. ↩︎