MATLAB应用(多项式插值)ppt课件.ppt

MATLAB应用(多项式插值)ppt课件.ppt

ID:58882172

大小:780.50 KB

页数:54页

时间:2020-09-30

MATLAB应用(多项式插值)ppt课件.ppt_第1页
MATLAB应用(多项式插值)ppt课件.ppt_第2页
MATLAB应用(多项式插值)ppt课件.ppt_第3页
MATLAB应用(多项式插值)ppt课件.ppt_第4页
MATLAB应用(多项式插值)ppt课件.ppt_第5页
资源描述:

《MATLAB应用(多项式插值)ppt课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、二多项式与插值多项式插值的主要目的是用一个多项式拟合离散点上的函数值,使得可以用该多项式估计数据点之间的函数值。可导出数值积分方法,有限差分近似关注插值多项式的表达式、精度、选点效果。2.1多项式MATLAB命令一个多项式的幂级数形式可表示为:也可表为嵌套形式或因子形式N阶多项式n个根,其中包含重根和复根。若多项式所有系数均为实数,则全部复根都将以共轭对的形式出现幂系数:在MATLAB里,多项式用行向量表示,其元素为多项式的系数,并从左至右按降幂排列。例:被表示为>>p=[2145]>>poly2sym(p)ans=2*x^3

2、+x^2+4*x+5Roots:多项式的零点可用命令roots求的。例:>>r=roots(p)得到r=0.2500+1.5612i0.2500-1.5612i-1.0000所有零点由一个列向量给出。Poly:由零点可得原始多项式的各系数,但可能相差一个常数倍。例:>>poly(r)ans=1.00000.50002.00002.5000注意:若存在重根,这种转换可能会降低精度。例:>>r=roots([1-615-2015-61])r=1.0042+0.0025i1.0042-0.0025i1.0000+0.0049i1.0

3、000-0.0049i0.9958+0.0024i0.9958-0.0024i舍入误差的影响,与计算精度有关。polyval:可用命令polyval计算多项式的值。例:计算y(2.5)>>c=[3,-7,2,1,1];xi=2.5;yi=polyval(c,xi)yi=23.8125如果xi是含有多个横坐标值的数组,则yi也为与xi长度相同的向量。>>c=[3,-7,2,1,1];xi=[2.5,3];>>yi=polyval(c,xi)yi=23.812576.0000polyfit:给定n+1个点将可以唯一确定一个n阶多项

4、式。利用命令polyfit可容易确定多项式的系数。例:>>x=[1.1,2.3,3.9,5.1];>>y=[3.887,4.276,4.651,2.117];>>a=polyfit(x,y,length(x)-1)a=-0.20151.4385-2.74775.4370>>poly2sym(a)ans=-403/2000*x^3+2877/2000*x^2-27477/10000*x+5437/1000多项式为Polyfit的第三个参数是多项式的阶数。多项式积分:功能:求多项式积分调用格式:py=poly_itg(p)p:被积

5、多项式的系数py:求积后多项式的系数poly_itg.mfunctionpy=poly_itg(p)n=length(p);py=[p.*[n:-1:1].^(-1),0]不包括最后一项积分常数多项式微分:Polyder:求多项式一阶导数的系数。调用格式为:b=polyder(c)c为多项式y的系数,b是微分后的系数,其值为:两个多项式的和与差:命令poly_add:求两个多项式的和,其调用格式为:c=poly_add(a,b)多项式a减去b,可表示为:c=poly_add(a,-b)功能:两个多项式相加调用格式:b=poly

6、_add(p1,p2)b:求和后的系数数组poly_add.mfunctionp3=poly_add(p1,p2)n1=length(p1);n2=length(p2);ifn1==n2p3=p1+p2;endifn1>n2p3=p1+[zeros(1,n1-n2),p2];endifn1

7、nv算出。例:[q,r]=deconv(a,b)例>>a=[2,-5,6,-1,9];b=[3,-90,-18];>>c=conv(a,b)c=6-195432-4539-792-162>>[q,r]=deconv(c,b)q=2-56-19r=0000000>>poly2sym(c)ans=6*x^6-195*x^5+432*x^4-453*x^3+9*x^2-792*x-1622.2Lagrange插值方法介绍对给定的n个插值点及对应的函数值,利用n次Lagrange插值多项式,则对插值区间内任意x的函数值y可通过下式求的

8、:MATLAB实现functiony=lagrange(x0,y0,x)ii=1:length(x0);y=zeros(size(x));fori=iiij=find(ii~=i);y1=1;forj=1:length(ij),y1=y1.*(x-x0(ij(j)));end

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。