2010년 2월 5일 금요일

[Matlab] - 다항식 계산 함수들

우선 설명해야 하는건:
매트랩에서 다항식(1차)을 표시할때는 계수만 표시함으로서 끝낼수 있는데
얘를 들어서 p = [1,7,9,8,3]; 이라면 p가 표시하고 있는 다항식은
y = f(x) = 1*x^4 + 7*x^3 + 9*x^2 + 8*x^1 + 3;
이 된다.

그럼 이걸 이해한다 하고 뒤의 함수들을 설명하겠다.


1.    y = ployval(p,x);
       말그대로 y = f(x)를 구한다. 얘를 들어 p = [1,3,10]이고 x=3일때 y = polyval(p,x)를 실행시킨다면
       y = 1*3^2 + 3*3^1 + 10 = 28
       이 된다.


2.    y = roots(p);
       이 함수는 방정식 y = f(x) = 0 의 근을 구한다. 근이 여러게 있으면 모든근을 다 구하고(솔직히 모든 근          을 다 구할수 있다고 생각하지는 않지만...이걸로 모든근을 다 구할수 있으면 어떤방정식이든 다 풀수          있다는 얘기인데...상식적으로 모든 방정식을 다 푼다는건 불가능한 얘기 아닌가!) 복소수 근이 있다면          복소수근도 구한다.


3.    poly2str(p,'x');
        말 그대로 다항식 p를 써준다. 얘를 들어 p = [1,3,10]이고 poly2str(p,'x')를 실행시키면
        x^2 + 3 x + 10
        가 나온다.


4.     q = polyder(p);
         다항식 미분함수이다. 당연히 결과도 하나의 다항식이어야 한다. 얘를 들어 p = [1,3,10]이고 이 식을 미분한다면(즉 q = polyder(p) 를 실행한다면)
         q = [2,3]
         이 나온다. (당연히 1*x^2 + 3*x + 10 을 미분하면 2*x + 3 이 나온다)








댓글 없음:

댓글 쓰기