Matlab的应用-多项式函数及多项式拟合(一)

来源:百度文库 编辑:神马文学网 时间:2024/04/28 02:35:02

Matlab的应用-多项式函数及多项式拟合(一)

(2010-09-12 02:07:17) 标签:

数学建模

2010a

matlab

程序

多项式

拟合

教育

分类: 经典收藏

此博文来自前人所写,在此摘抄过来与大家分享,不含有个人意见与看法,谨用于学术交流。在此将向大家简要介绍matlab 在多项式处理方面的应用。

多项式函数主要有:

roots   求多项式的根

poly   特征多项式

polyval   多项式的计算

poly2str(p,'x')多项式代换

polyfit   多项式曲线拟合

conv      多项式乘法

deconv   多项式除法

polyder   微分多项式

 

下面我们将介绍这些函数的用法:

1,roots---求多项式的根

格式:roots(c)

说明:它表示计算一个多项式的根,此多项式系数是向量c的元素.如果c有n+1个元素,那么此多项式为:

c(1)*x^n+c(2)*x^(n-1)+c(3)*x^(n-2)+--+c(n)*x+c(n+1)

2,poly---特征多项式

格式:poly(a)

说明:(1)如果a是一个n阶矩阵,poly(a)是一个有n+1个元素的行向量,这n+1个元素是特征多项式的系数(降幂排列).

(2)如果a是一个n维向量,则poly(a)是多项式(x-a(1))*(x-a(2))*..(x-a(n)),即该多项式以向量a的元素为根。

3,polyval—多项式计算

格式:polyval(v,s)

说明:

如果v是一个向量,它的元素是一个多项式的系数,那麽polyval(v,s)是多项式在s处的值.

如果s是一个矩阵或是一个向量,则多项式在s中所有元素上求值

例如:

v=[1 2 3 4];vv=poly2str(v,’s’)

(即 v=s^3+2*s^2+3*s+4)

s=2;

x=polyval(v,s)

x =

    26

例如:

v=[1 2 3 4];

s=[2 4];

polyval(v,s)

ans=26    112

4,conv-多项式乘法

例:as=[1 2 3]

 

as =

 

           3

 

>> az=[2 4 2 1]

 

az =

 

              1

 

>> conv(as,az)

 

ans =

 

          16    17        3

conv(az,as)

 

ans =

 

          16    17        3

5,deconv-多项式除法

例:deconv(az,as)%返回结果是商式的系数

 

ans =

 

        0

[awwq,qw]=deconv(az,as)%awwq是商式的系数,qw是余式的系数

 

awwq =

 

        0

 

qw =

 

          -4     1

6,polyder   微分多项式

polyder(as)

 

ans =

 

        2