数值计算实习报告-牛顿插值算法(高分).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文档。上传文档
查看更多
PAGE 安徽工业大学 数理科学与工程学院 《数值计算实习》 牛顿插值算法 姓 名: 班 级: 学 号: 指导老师: 2014年6月23日星期一 安徽工业大学数理科学与工程学院《数值计算实习》 PAGE 4 目 录 TOC \o 1-3 \u 1.提出问题 2 2.实验目的: 2 3.基础概念: 2 3.1牛顿插值多项式的原理 2 3.2均差(差商)及其性质 4 3.3牛顿插值公式及其余项的公式: 5 4.算法设计 5 5. Matlab程序实现及应用 6 5.1举例应用 6 5.2命令执行图: 8 6.结果分析 9 参考文献 9 附录一:牛顿插值的MATLAB实现 10 附录二:误差的Matlab实现 10 附录三:生成图像 10 1.提出问题 上学期通过对《数值分析》的学习,我们知道可以用插值法求一个待定函数来近似反映函数的特性,使得待定函数在给定点上等于函数值,在其它点上的函数的值作为函数的近似值。利用差值函数很容易得到Lagrange插值多项式,公式结构紧凑,在理论分析中甚为方便。 而由Lagrange插值多项式的插值基函数: 可知其公式中的每一项与所有的插值结点有关.因此,Lagrange 插值虽然易算,但若要增加一个节点时,全部基函数 都需重新算过,计算量太大,在实际计算中十分不利,为了克服这一缺点,于是产生了Newton插值法。 2.实验目的: 通过对牛顿插值多项式的Matlab程序实现,深入了解牛顿插值多项式的原理及编程解决实际问题的能力。 3.基础概念: 3.1牛顿插值多项式的原理 我们知道两点直线公式有: 我们考虑点斜式,两点为((x,y)(x,y)),则直线方程为: 那么,在此基础上增加一个节点(x2,y2),则过这三个点的插值多项式就是: c(x)应该是一个二次多项式。根据插值条件 有 根据插值条件: 可以求出: 重新写P2(x): 有 3.2均差(差商)及其性质 定义: 一阶均差 二阶均差 n+1阶均差 均差均有如下的基本性质: (2) k 阶差商关于节点是对称的,或者说均差与节点顺序无关,即 均差表 一阶差商 二阶差商 三阶差商 四阶差商 3.3牛顿插值公式及其余项的公式: newton插值多项式的表达式如下: 其中每一项的系数ci的表达式如下: 即为f (x)在点处的i阶差商,(,),由差商的性质可知: 则有: 其中 4.算法设计: 牛顿插值法利用函数在某区间中若干点的函数值,作出牛顿插值多项式,在这些点上取已知值,在区间的其他点上用牛顿插值多项式的值作为函数的近似值。 输入值及(;要计算的函数点。 对给定的由 计算的值。 3.输出。 4. 利用输出误差的表达式。 5. Matlab程序实现及应用 利用Matlab可以实现牛顿插值的求解、均差、误差,多项式系数,并可以通过生成Matlab图像直观地描述原函数图像与牛顿插值的比较,具体源代码见附录。 5.1举例应用(改自于《数值分析》教材P48第2题) 例:给出f(x)=lnx的数值如表所示, x 0.4 0.5 0.6 0.7 0.8 lnx -0.916291 -0.693147 -0.510826 -0.356675 -0.223144 列出差商表,构造牛顿插值多项式并求ln0.54的值。 估计ln0.54误差 分析: 由牛顿插值的算法,运用Matlab建立newtoncz.m和wucha.m文件,具体代码分别见附录一(牛顿插值的MATLAB实现)和附录二(误差的Matlab实现) 由表可知: x0=0.4, x1=0.5, x2=0.6, x3=0.7, x4=0.8, 函数值:y0=-0.916291,y1=-0.693147,y2=-0.510826,y3=-0.356675,y4=-0.223144 所以运用Matlab求解过程如下: (1)在matlab中输入如下命令: clear X=[0.4,0.5,0.6,0.7,0.8]; Y=[ -0.916291, -0.693147, -0.510826, -0.356675, -0.223144]; [A,C,P]=newtoncz(X,Y) f=polyval(C,0.54) 得出运行结果: A = -0.9163 0 0 0 0 -0.6931 2.2314 0 0 0 -0.5108 1.8232

文档评论(0)

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

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

1亿VIP精品文档

相关文档