본문 바로가기
programming language/MATLAB

MATLAB taylor, Maclaurin serise

by 남성 2011. 4. 10.

taylor serise 는 특정 지점에서의 미분 값들의 무한 합을 통하여 함수를 표현 할 수 있다는 것이다.

 

정의는 다음과 같이 된다.

 

 

특정 지점 a=0 인 경우를 Maclaurin series 라고 한다.

 

MATLAB 을 이용하여 이와 같은 taylor series expansion을 구할 때는 taylor() 함수를 이용한다.

 

taylor() 함수는 symbolic math toolbox 가 있어야 쓸 수 있는 함수이다.



 

다음 함수 에 대한 taylor series expansion을 알아보자.

 

 

다음과 같이 위 함수를 정의 한다.

 

syms x

 

f=log(1+x)

 

f =

         log(x + 1)

 

 

  • f1=taylor(f) 라고 하면 5차의 Maclaurin series expansion 결과를 반환 한다.

    f1 =

    x^5/5 - x^4/4 + x^3/3 - x^2/2 + x

     

  • f2=taylor(f, 10) 라고 하면 10 - 1=9 차의 Maclaurin series expansion 결과를 반환 한다.

    f2 =

    x^9/9 - x^8/8 + x^7/7 - x^6/6 + x^5/5 - x^4/4 + x^3/3 - x^2/2 + x

 

  • f3=taylor(f, 0.2) 라고 하면 a=0.2 , 5차의 taylor series expansion 결과를 반환 한다.

    f3 =

    (5*x)/6 + log(6/5) - (25*(x - 1/5)^2)/72 + (125*(x - 1/5)^3)/648 - (625*(x - 1/5)^4)/5184 + (625*(x - 1/5)^5)/7776 - 1/6

 

  • f4=taylor(f, 10, 0.2) 라고 하면 a=0.2 , 9차의 taylor series expansion 결과를 반환 한다.

    f4 =

    (5*x)/6 + log(6/5) - (25*(x - 1/5)^2)/72 + (125*(x - 1/5)^3)/648 - (625*(x - 1/5)^4)/5184 + (625*(x - 1/5)^5)/7776 - (15625*(x - 1/5)^6)/279936 + (78125*(x - 1/5)^7)/1959552 - (390625*(x - 1/5)^8)/13436928 + (1953125*(x - 1/5)^9)/90699264 - 1/6

 

 


 

MATLAB 에는 taylor serise expansion 을 좀더 쉽게 할 수 있는 GUI tool 도 제공해 준다.

 

command 창에 taylortool 이라고 입력하면 다음과 같은 GUI 창이 뜨게 되며 argument 변경 시마다 그래프로 확인하면서 approximation을 할 수 있게 해 준다.

 


댓글0