matlab之多项式

本文详细介绍了MATLAB中如何表示和操作多项式,包括求值、求根、部分分式展开、乘除法、微积分、拟合和插值等。通过polyval进行求值,roots计算根,residue进行部分分式展开,conv和deconv实现乘除法,polyder和积分运算,并利用polyfit进行多项式拟合,以及interp1和interp2进行插值运算。

一、多项式表示

p(x)=anxn+an-1xn-1+···+a1x+a0

则在matlab可以这样表示
p=[an an-1 ···a1 a0]

例如
x3+2x2+x+3
可以表示为
[1 2 1 3]

二、多项式求值、求根和部分分式展开

1.多项式求值

polyval(p,s),其中p为多项式,s为给定矩阵

例如:
p= [1 2 1 3]
polyval(p,2) %求当x=2时候多项式的值

s=[1,2,3,4]
polyval(p,s) %求当x分别为1,2,3,4时候多项式的值,返回一个向量

2.多项式求根

roots计算多项式的根
语法:
r=root§
%r为多项式的根,以列向量的形式保存

和roots相反,可以用poly函数根据多项式的根计算多项式的系数
语法:
p=poly®

3.部分分式展开

语法:
[r,p,k]=residue(b,a)

三、多项式的乘除法和微积分

(1) 多项式的乘法
p=conv(p1,p2)

(2)多项式的除法
[q,r]=deconv(p1,p2)
%除法不一定除尽,多项式p1除以p2最后得到多项式q,剩下的r是余子式

(3)多项式的微分和积分
多项式微分polyder§
多项式积分[p./length ( p ) : -1:1,k] %k为常数,就是高数里面积分要加C

四、多项式拟合和插值

1.多项式拟合
多项式拟合使用1个多项式逼近一组给定的数据
p=polyfit(x,y,n)
其中x,y向量分别为一组数据点的横纵坐标,n是用来拟合的多项式的次数,
p为拟合的多项式

2.插值运算
一维插值
语法:
yi=interp1(x,y,xi,‘method’)

其中x,y为行向量,xi是插值范围内的任意点的x坐标,yi则是插值运算后对应y坐标。method是插值函数的类型,
“linear”为线性插值;
“nearest”为用最接近的相邻点插值;
“spline”为三次条样插值;
“cubic”为三次插值。

二维插值
语法:
zi=interp2(x,y,z,xi,yi,“method”)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值