插值实验讲义 计算方法课件及实验 教学课件.docVIP

插值实验讲义 计算方法课件及实验 教学课件.doc

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
插值实验讲义 计算方法课件及实验 教学课件

与插值有关的MATLAB 函数 预备知识:matlab多项式计算 在matlab里,多项式由一个行向量表示,它的系数是按降序排列。 例如,输入多项式x4-12x3+0x2+25x+116 ? p=[1 -12 0 25 116] 注意,必须包括具有零系数的项。除非特别地辨认,MATLAB无法知道哪一项为零。给出这种形式,用函数roots找出一个多项式的根。 r=roots(p) 结果: r =11.7473 2.7028 -1.2251 + 1.4672i -1.2251 - 1.4672i 在MATLAB中,无论是一个多项式,还是它的根,都是向量,MATLAB按惯例规定,多项式是行向量,根是列向量。 (一) poly函数 求多项式的系数(由已知根求多项式的系数) 调用格式:Y = poly (V) X1=[1,2]; l1=poly(X1), l1=[ 1 -3 2] (二) poly2sym函数 将多项式系数向量转为解析式形式 调用格式:poly2sym (C) poly2sym(l1) ans = x^2 - 3*x + 2 (三) polyval函数 给定多项式求值Y = polyval(P,X) polyval(l1,2) ans = 0 (四) conv函数 求多项式相乘后的多项式系数。(执行两个数组的卷积) 调用格式:poly2sym (C) 例如 求(x^2 - 3*x + 2)* (x-3) l1=[ 1 -3 2]; l2=[ 1 -3]; l=conv(l1,l2) 结果l = 1 -6 11 -6 poly2sym(l) 结果ans =x^3 - 6*x^2 + 11*x – 6 poly([1,2,3]) 结果ans = 1 -6 11 -6 (五) 其它多项式函数 deconv(a,b)—多项式除法 polyder(p)—多项式求导 1.2拉格朗日(Lagrange)插值及其MATLAB程序 1.2.1 线性插值及其MATLAB程序 例6.2.1 已知函数在上具有二阶连续导数,,且满足条件.求线性插值多项式和函数值,并估计其误差. 解 输入程序 X=[1,3];Y=[1,2]; l01= poly(X(2))/( X(1)- X(2)); l11= poly(X(1))/( X(2)- X(1)); l0=poly2sym (l01), l1=poly2sym (l11) P = l01* Y(1)+ l11* Y(2), L=poly2sym (P), x=1.5; Y = polyval(P,x) 运行后输出基函数l0和l1及其插值多项式的系数向量P(略)、插值多项式L和插值Y为 l0 = l1 = L = Y = -1/2*x+3/2 1/2*x-1/2 1/2*x+1/2 1.2500 输入程序 M=5;R1=M*abs((x-X(1))* (x-X(2)))/2 运行后输出误差限为 R1 = 1.8750 1.2.2 拉格朗日多项式和基函数的MATLAB程序 求拉格朗日插值多项式和基函数的MATLAB主程序 function [C, L,L1,l]=lagran1(X,Y) m=length(X); L=ones(m,m); for k=1: m V=1; for i=1:m if k~=i V=conv(V,poly(X(i)))/(X(k)-X(i)); end end L1(k,:)=V; l(k,:)=poly2sym (V) end C=Y*L1;L=Y*l 例1.2 给出节点数据,,,, ,,作五次拉格朗日插值多项式和基函数,并写出估计其误差的公式. 解 在MATLAB工作窗口输入程序 X=[-2.15 -1.00 0.01 1.02 2.03 3.25]; Y=[17.03 7.24 1.05 2.03 17.06 23.05]; [C, L ,L1,l]= lagran1(X,Y) 运行后输出五次拉格朗日插值多项式L及其系数向量C,基函数l及其系数矩阵L1如下 C = -0.2169 0.0648 2.1076 3.3960 -4.5745 1.0954 L = 1.0954-4.5745*x+3.3960*x^2+2.1076*x^3+0.0648*x^4-0.2169*x^5 L1 = -0.0056 0.0299 -0.

文档评论(0)

skvdnd51 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档