logo

제2종 체비셰프 다항함수 📂수치해석

제2종 체비셰프 다항함수

정의

Un(x):=1n+1Tn+1(x)=sin((n+1)θ)sinθU_{n} (x) := {{1} \over {n+1} } T_{n+1} ’ (x) = {{\sin \left( ( n +1 ) \theta \right)} \over { \sin \theta }} 제2종 체비셰프 다항함수라 한다.

기초 성질

재귀 공식

  • [0]: Un+1(x)=2xUn(x)Un1(X)U_{n+1} (x) = 2x U_{n} (x) - U_{n-1} (X)

직교 집합

  • [1] 함수의 내적: <f,g>:=abf(x)g(x)w(x)dx\displaystyle \left<f, g\right>:=\int_a^b f(x) g(x) w(x) dx 에 대해 웨이트 www(x):=1x2\displaystyle w(x) := \sqrt{1 - x^2} 와 같이 주면 {U0,U1,U2,}\left\{ U_{0} , U_{1}, U_{2}, \cdots \right\}직교 집합이 된다.

체비셰프 노드

  • [2]: Un(X)\displaystyle U_{n} (X) 의 근은 k=1,,nk=1, \cdots , n 에 대해 다음과 같다. xk=cos(kn+1π)x_{k} = \cos \left( {{k} \over {n+1}} \pi \right)

기함수와 우함수

  • [3]: Un(x)=(1)nUn(x)U_{n} (-x) = (-1)^{n} U_{n} (x)

  • 보통 0θπ0 \le \theta \le \pi 에 대해 θ:=cos1x\theta := \cos^{-1} x 라고 둔다.

같이보기

설명

n=0,,3n = 0, \cdots , 3 에 대한 제2종 체비셰프 다항함수는 다음과 같이 나타난다.

U0(x)=1U1(x)=2xU2(x)=4x21U3(x)=8x34x \begin{align*} U_{0} (x) =& 1 \\ U_{1} (x) =& 2x \\ U_{2} (x) =& 4x^{2} - 1 \\ U_{3} (x) =& 8x^{3} - 4x \end{align*}

Tn(X)T_{n} (X)제1종 체비셰프 다항함수다.

1n+1Tn+1(x)=sin((n+1)θ)sinθ\displaystyle {{1} \over {n+1} } T_{n+1} ’ (x) = {{\sin \left( ( n +1 ) \theta \right)} \over { \sin \theta }} 임을 보이는건 다음과 같이 역삼각함수의 미분법을 사용하면 된다. Un(x)=1n+1[cos((n+1)cos1x)]=n+1n+111x2[sin((n+1)cos1x)]=sin((n+1)cos1x)1x2=sin((n+1)θ)sinθ \begin{align*} \displaystyle U_{n} (x) =& {{1} \over {n+1} } \left[ \cos \left( ( n +1 ) \cos^{-1} x \right) \right]’ \\ &= {{n+1} \over {n+1} } {{ - 1} \over { \sqrt{ 1 - x^{2} } }} \left[ - \sin \left( ( n +1 ) \cos^{-1} x \right) \right] \\ =& {{\sin \left( ( n +1 ) \cos^{-1} x \right)} \over { \sqrt{ 1 - x^{2} } }} \\ =& {{ \sin \left( (n+1) \theta \right) } \over {\sin \theta }} \end{align*} 제2종 체비셰프 다항함수는 수치해석 뿐만 아니라 응용수학 전반에서 아주 유용하게 쓰이는 함수로써, 제1종 체비셰프 다항함수와 더불어 흥미로운 성질들을 풍부하게 갖는다.

한편 제2종 체비셰프 다항함수는 거꾸로 U0(x)=1U_{0} (x) = 1, U1(x)=2xU_{1} (x) = 2x 그리고 재귀식 [0] 을 이용해서 정의할 수도 있다. 이는 제1종 체비셰프 다항함수 역시 마찬가지고 T0(x)=U0(x)=1T_{0} (x) = U_{0} (x) = 1 이므로, 제1종과 제2종을 부르는 이유는 T1(x)=1xT_{1} (x) = 1 \cdot xU1(x)=2xU_{1} (x) = 2 \cdot x 때문이라고 보아도 무방하다.

증명

[0]

제1종 체비셰프 다항함수의 재귀식 Tn+1(x)=2xTn(x)Tn1(X)T_{n+1} (x) = 2x T_{n} (x) - T_{n-1} (X) 의 양변을 미분하면 Tn+1(x)=2Tn(x)+2xTn(x)Tn1(x) T_{n+1} ' (x) = 2 T_{n} (x) + 2x T_{n} ' (x) - T_{n-1} ' (x) Tn+1(x)=(n+1)Un(x)T_{n+1} ' (x) = ( n+1 ) U_{n} (x) 이므로 (n+1)Un(x)=2Tn(x)+2xnUn1(x)(n1)Un2(x) (n+1) U_{n} (x) = 2 T_{n} (x) + 2x n U_{n-1} (x) - (n-1) U_{n-2} (x) nn 으로 묶어내면 n[Un(x)2xUn1(x)+Un2(x)]=2Tn(x)+Un2(x)Un(x) n \left[ U_{n} (x) - 2x U_{n-1} (x) + U_{n-2} (x) \right] = 2 T_{n} (x) + U_{n-2} (x) - U_{n} (x)

제1종, 제2종 체피셰프 다항함수의 관계:

  • [1]: Un(x)Un2(x)=2Tn(X)U_{n} (x) - U_{n-2} (x) = 2 T_{n} (X)

n[Un(x)2xUn1(x)+Un2(x)]=0 n \left[ U_{n} (x) - 2x U_{n-1} (x) + U_{n-2} (x) \right] = 0 양변을 nn 으로 나누고 정리하면 Un+1(x)=2xUn(x)Un1(x) U_{n+1} (x) = 2x U_{n} (x) - U_{n-1} (x)

[1]

dx=sinθdθ=1x2dθdx = - \sin \theta d \theta = - \sqrt{1 - x^2} d \theta 이고 sinθ=1x2\sin \theta = \sqrt{1 - x^2} 이므로 <Un,Um>=11Un(x)Um(x)1x2dx=π0sin((n+1)θ)sin((m+1)θ)sin2θsin2θdθ=0πsin((n+1)θ)sin((m+1)θ)dθ={π/2,n=m0,nm \begin{align*} \displaystyle \left< U_{n}, U_{m} \right> =& \int_{-1}^{1} U_{n} (x) U_{m} (x) \sqrt{1 - x^2} d x \\ =& - \int_{\pi}^{0} {{ \sin \left( (n + 1 ) \theta \right) \sin \left( (m + 1 ) \theta \right) \sin^2 \theta } \over { \sin^2 \theta}} d \theta \\ =& \int_{0}^{\pi} \sin \left( (n + 1 ) \theta \right) \sin \left( (m + 1 ) \theta \right) d \theta \\ =& \begin{cases} \pi/2 &, n=m \\ 0 &, n \ne m \end{cases} \end{align*} 따라서 {U0,U1,U2,}\left\{ U_{0} , U_{1}, U_{2}, \cdots \right\} 은 직교 집합이다.

[2]

정의에 따라 자명하다.

[3]

Case 1. n=0,1n=0,1

U0(x)=1=U0(x)U1(x)=2(x)=2x=U1(x) \begin{align*} U_{0} (-x) =& 1 = U_{0} (x) \\ U_{1} (-x) =& 2(-x) = -2x = - U_{1} (x) \end{align*}


Case 2. n2n \ge 2 이 짝수

Un(x)U_{n}(x) 에서 계수가 00 이 아닌 모든 항의 차수는 짝수이므로 Un(x)=Un(x)U_{n}(-x) = U_{n}(x)


Case 3. n2n \ge 2 이 홀수

Un(x)U_{n}(x) 에서 계수가 00 이 아닌 모든 항의 차수는 홀수이므로 Un(x)=Un(x)U_{n}(-x) = - U_{n}(x)

구현

아래는 R로 작성된 체비셰프 다항함수의 코드다.

다항함수 자체를 반환해주므로 바로 계산에 사용할 수도 있다. n은 차수, kind로 종류를 주고 print 옵션을 참으로 주면 계수를 출력해준다.

20181120\_130322.png

출력되는 계수는 상수항부터 고차항순으로 출력되며, 제2종 체비셰프 다항함수는 U3(x)=8x34xU_{3} (x) = 8x^{3} - 4x 이므로 제대로 구해졌음을 알 수 있다. 함숫값 역시 U3(3)=83343=21612=204U_{3} (3) = 8 \cdot 3^{3} - 4 \cdot 3 = 216-12 = 204 로 정확하게 계산되었다.

Chebyshev<-function(n,kind=1,print=F)
{
  p<-NA
  
  if((round(n)-n)!=0 | n<0) {stop("Wrong Degree!!")} #degree must be nonnegative integer
  if(!kind%in%(1:2)) {stop("Wrong Kind!!")} #kind must be 1 or 2
  
  if(n==0)
  {
    if(print) {print(1)}
    
    p<-function(x) {return(1)}
    return(p)
  }
  
  if(n==1)
  {
    if(print) {print(c(0,kind))}
    
    p<-function(x) {return(kind*x)}
    return(p)
  }
 
  coef0<-c(1)
  coef1<-c(0,kind)
  
  for(i in 1:(n-1))
  {
    coef2<- ( c(0,2*coef1) - c(coef0,0,0) )
    coef0<-coef1
    coef1<-coef2
  }
  
  if(print) {print(coef2)}
  
  p<-function(x)  {return(sum(coef2*x^(0:n)))}
  return(p)
}
 
p<-Chebyshev(1,2); p(2)
p<-Chebyshev(3,2,T); p(3)