【MATLAB】数据分析之多项式及其函数

1、多项式的表达式和创建

MATLAB中使用一维向量来表示多项式。将多项式按照降幂次序存放在向量中。

多项式2x^{4}+3x^{3}+5x^{2}+1就可以用向量 [2 3 5 0 1]来表示。

2、多项式求根

>> p=[1 2 1]

p =

     1     2     1

>> r = roots(p)

r =

    -1
    -1

3、由根创建多项式

>> r = [2;3]

r =

     2
     3

>> p=poly(r)

p =

     1    -5     6

4、多项式的四则运算

1)多项式的加法

>> a=[1,2,3];
>> b=[4,5,6];
>> c=a+b

c =

     5     7     9

2)多项式的乘法

>> a=[1,0];
>> b=[1,0];
>> c=conv(a,b)

c =

     1     0     0

3)多项式的除法

>> a=[1 -5 6];
>> b=[1 -2];
>> c=deconv(a,b)

c =

     1    -3

4)多项式的导数

>> a=[1,1,1,1];
>> e=polyder(a)

e =

     3     2     1

5)多项式的积分

>> a=[3,2,1];
>> e=polyint(a)

e =

     1     1     1     0
%这里默认了常数项是零,需要注意一下

6)多项式的估值

x=-1:0.01:1;
g=[1,35,7,9];
y=polyval(g,x);
plot(x,y)
xlabel('x');
title('x^{3}+35x^{2}+7x+9');

7)有理多项式:residue和ployder

clear all;clc;
num=[5 3 -2 7];
den=[-4 0 8 3];
[r,p,k]=residue(num,den)

r =

   -1.4167
   -0.6653
    1.3320


p =

    1.5737
   -1.1644
   -0.4093


k =

   -1.2500
>> [n,d] = residue(r,p,k)

n =

   -1.2500   -0.7500    0.5000   -1.7500


d =

    1.0000   -0.0000   -2.0000   -0.7500

本例的结果可表示成为:

\frac{5x^{3}+3x^{2}-2x+7}{-4x^{3}+8x+3}=\frac{-1.4167}{x-1.5737}+\frac{-0.6653}{x+1.1644}+\frac{1.332}{x+0.4093}-1.25

residue也可执行逆运算,本例的结果可表示为:

\frac{n(x)}{d(x)}=\frac{-1.25x^{3}-0.75x^{2}+0.5x-1.75}{x^{3}-2x-0.75}

ployder可以对多项式求导

clear all;clc;
num=[5 3 -2 7];
den=[-4 0 8 3];
[b,a]=polyder(num,den)

b =

    12    64   153    18   -62


a =

    16     0   -64   -24    64    48     9

猜你喜欢

转载自blog.csdn.net/csdn___csdn/article/details/81153937
今日推荐