分段线性插值.docVIP

  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 PAGE4 精品文档 PAGE 纲要 用函数来表示变量间的数量关系宽泛应用于各学科领域,可是在实际问题中,往往是经过实验、观察以及计算等方法,得到的是函数在一些点上的函数值。怎样经过这些离散数据找到函数的一个知足精度要求且便于使用的近似表达式,是经常碰到的问题。 对于这类问题我们解决的方法为插值法,而最常用也最简单的插值方法就是多项式插值。自然用插值法得到的近似表达式必须知足插值条件即假定给定了n+1个点的自变量的值以及函数值,近似函数必须要过这n+1个点。多项式插值,从几何角度看,就是寻求n次代数曲线y=Pn(x)经过n+1个点作为f(x)的近似。 可是随着插值节点个数的增加,高次插值多项式的近似效果并不理想。根据大量实验得出,在进行高次多项式插值时,会出现龙格现象。龙格(Runge)现象即当n趋于无穷大时,x在某一邻域内,f(x)收敛,而在这个地区外f(x)发散。 因此,为认识决这样的一个问题,我们能够经过缩小插值区间的办法达到减小误差的目的,所以本实验将针对低次分段插值多项式来做详细的议论和学习。 重点词:龙格现象分段差值 1、实验目的 经过对分段线性插值算法程序的编写,提高自己编写程序的能力 体会分段线性插值是怎样除去龙格现象的。 用实验报告的形式展现,提高自己在写论文方面的能力 2、算法理论 设y=f(x)在节点a=x0x1?x 在区间xi-1,x 误差为: Rix=fx- S(x)在xi-1 S(x)∈Ca,b S(x)∈C 如果f(x)∈C2a,b,由线性插值的误差公式得到 Ri(x)=f 能够按如下方式考虑,若记M=1≤i≤nmax Mi 于是,当h→0,时R(x)→0,说明分段线性插值S(x)收敛于fx 3、数值算例 已知点坐标如下表所示: xi 0.5 0.7 0.9 1.1 1.3 yi 0.4579 0.644 0.783 0.891 0.964 用分段线性插值法,求解当x为0.8时,对应y的值 解:详细程序如下所示: #includestdafx.h floatFdline(floatx[],floaty[],floatx1,intlen) { inti=0; floats=0; for(i=0;ilen-1;i++) { if(x1=x[i]x1x[i+1]) break; } s=(x1-x[i])/(x[i-1]-x[i])*y[i-1]+(x1-x[i-1])/(x[i]-x[i-1])*y[i]; returns; } floatFdline(floatx[],floaty[],floatx1,intlen); voidmain() { floatx[]={0.5,0.7,0.9,1.1,1.3}; floaty[]={0.479,0.644,0.783,0.891,0.964}; intlen=sizeof(x)/sizeof(x[0]); floatx1=0; floats=0; printf(请输入要求解的x1的值:\n); scanf(%f,x1); s=Fdline(x,y,x1,len); printf(经过分段三次Hermite插值的结果为:\n); printf(%f\n,s); } 运行结果: 5、对结果进行剖析 根据分段线性插值的原理,能够看出分段线性插值虽然有很好的收敛性质,但却不是圆滑的,所以线性插值的结果和实际的结果差距较大。 经过用编程实现对上例的求解,能够看出结果较为正确,可是由于在计算机上计算,会存在计算误差。 6、参照文件

文档评论(0)

186****3257 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档