logo

체비셰프 노드 📂수치해석

체비셰프 노드

정의

13660\_2016\_1030\_Fig2\_HTML.gif

$[-1,1]$ 에서 $\displaystyle x_{k} = \cos \left( {{2k-1} \over {2n}} \pi \right)$, $k=1, \cdots , n$ 을 체비셰프 노드라 한다.

설명

체비셰프 노드는 일반적으로 사용하듯 일정한 간격의 노드 포인트와 달리 반원의 호를 일정한 크기로 자르고 그 점들을 $x$ 축으로 사영시킨 노드 포인트를 말한다. 점들의 분포는 가운데보다 양 끝에 조금 몰리는 모양새를 이룬다. 밑에서 다시 설명하겠지만, 이 점이 바로 체비셰프 노드의 장점이다.

체비셰프 노드라는 이름이 붙은 이유는 이 점들이 체비셰프 다항함수제로기 때문이다.

체비셰프 다항함수: $T_{n} (x) = \cos \left( n \cos^{-1} x \right)$ 을 제1종 체비셰프 다항함수라고 한다.

  • [1]: $\displaystyle T_{n} (x)$ 의 근은 $\displaystyle x_{k} = \cos \left( {{2k-1} \over {2n}} \pi \right)$, $k=1, \cdots , n$

체비셰프 다항함수가 그러하듯 체비셰프 노드 역시 수학적 성질을 풍부하게 갖는다. 특히 수치해석에서 곧바로 응용할 구석이 많다. 인터폴레이션을 하든 미분방정식을 푸는 메소드든 노드로써는 등간격보다 안 좋을 것이라고 생각할 수 있지만, 오히려 양 끝점에 대한 정보가 많아서 좋은 결과를 얻을 수 있다. 등간격 노드는 수식적인 조작은 쉬울지 모르지만 상대적으로 중요하지 않은 정보를 너무 많이 취하는 것으로 볼 수있다.

간략한 예로써 언급했던 인터폴레이션의 예를 살펴보자.

폴리노미얼 인터폴레이션:

  • [4] 실제 함수와의 오차: $(n+1)$번 미분가능한 $f : \mathbb{R} \to \mathbb{R}$ 와 어떤 $\xi \in \mathscr{H} \left\{ x_{0} , \cdots , x_{n} \right\}$ 에 대해 $f$ 의 폴리노미얼 인터폴레이션 $p_{n}$ 은 어떤 $t \in \mathbb{R}$ 에 대해 $\displaystyle f(t) - p_{n} (t) = {{ (t - x_{0}) \cdots (t - x_{n}) } \over { (n+1)! }} f^{(n+1)} ( \xi )$ 을 만족한다.

$$ f(x) - p_{n} (x) = {{ (x - x_{0}) \cdots (x - x_{n}) } \over { (n+1)! }} f^{(n+1)} ( \xi ) $$ 위의 오차에서 $f^{(n+1)}$ 과 $(n+1)!$ 은 이제 더 이상 손 쓸 수 없다. 이제 오차가 어떻게 되는지는 온전히 $x , x_{0} , \cdots , x_{n}$ 에 달려있는데 $x$ 는 변수니까 일단 제쳐두자. 이 $x_{0} , \cdots , x_{n}$ 를 어떻게 주느냐에 따라 오차가 줄어들 수 있다면 무작정 등간격 노드에서 데이터를 구할게 아니라 처음부터 좋은 노드에서 구하는 게 좋을 것이다. 이제부터 $x_{0} , \cdots , x_{n}$ 를 체비셰프 노드라고 해보자. $$ T_{0} (x) = 1 $$

$$ T_{1} (x) = x $$

$$ T_{n+1} (x) = 2x T_{n} (x) - T_{n-1} (x) $$ 이므로 $T_{n+1} (x)$ 의 최고차항의 계수는 $2^{n}$ 이고, 체비셰프 노드들을 제로로 가지므로 $$ T_{n+1} (x) = 2^{n} ( x - x_{0} ) \cdots ( x - x_{n} ) $$ 한편 $| T_{n+1} (x) | \le 1$ 이므로, $2^{n}$ 을 좌변으로 넘기면 넘기고 절대값을 취하면 다음과 같이 놀라운 결과를 얻을 수 있다. $$ \begin{align*} & | ( x - x_{0} ) \cdots ( x - x_{n} ) | \le {{1} \over { 2^{n} }} \\ \implies& | f(x) - p_{n} (x) | \le {{ \left| f^{(n+1)} ( \xi ) \right| } \over { 2^{n} (n+1)! }} \end{align*} $$ 물론 $\displaystyle {{1} \over {2^{n}}}$ 에 바운드 시킬 수 있다는 점만으로도 대단하지만, 실제로는 그 뿐만 아니라 더 이상 오차를 줄일 수 없다는 팩트가 알려져 있다. 즉, 체비셰프 노드는 오차를 크게 줄여주는 정도가 아니라 옵티멀한 노드라는 점이 보장된 것이다.