收藏 分销(赏)

分段线性插值.doc

上传人:w****g 文档编号:3562625 上传时间:2024-07-09 格式:DOC 页数:5 大小:296KB 下载积分:6 金币
下载 相关 举报
分段线性插值.doc_第1页
第1页 / 共5页
分段线性插值.doc_第2页
第2页 / 共5页


点击查看更多>>
资源描述
摘要 用函数来表示变量间的数量关系广泛应用于各学科领域,但是在实际问题中,往往是通过实验、观测以及计算等方法,得到的是函数在一些点上的函数值。如何通过这些离散数据找到函数的一个满足精度要求且便于使用的近似表达式,是经常遇到的问题。 对于这类问题我们解决的方法为插值法,而最常用也最简单的插值方法就是多项式插值。当然用插值法得到的近似表达式必须满足插值条件即假设给定了n+1个点的自变量的值以及函数值,近似函数必须要过这n+1个点。多项式插值,从几何角度看,就是寻求n次代数曲线y=Pn(x)通过n+1个点作为f(x)的近似。 但是随着插值节点个数的增加,高次插值多项式的近似效果并不理想。根据大量实验得出,在进行高次多项式插值时,会出现龙格现象。龙格(Runge)现象即当n趋于无穷大时,x在某一邻域内,f(x)收敛,而在这个区域外f(x)发散。 因此,为了解决这样的一个问题,我们可以通过缩小插值区间的办法达到减小误差的目的,所以本实验将针对低次分段插值多项式来做具体的讨论和学习。 关键词:龙格现象 分段差值 1、实验目的 1) 通过对分段线性插值算法程序的编写,提高自己编写程序的能力 2) 体会分段线性插值是如何消除龙格现象的。 3) 用实验报告的形式展现,提高自己在写论文方面的能力 2、算法理论 设在节点处的函数值为,i=0,1,,n。为了提高近似程度,可以考虑用分段线性插值来逼近原函数,这时的插值函数为分段函数: 在区间上的线性函数为 误差为: 易见,是平面上以点为节点的折线,有如下的特点: 1. 在上为次数不超过一次的多项式; 2. ; 3. ; 如果,由线性插值的误差公式得到 令,则有 关于整体误差: 可以按如下方式考虑,若记则对任一都有 于是,当时,说明分段线性插值收敛于。 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的值 解:具体程序如下所示: #include "stdafx.h" float Fdline(float x[],float y[],float x1,int len) { int i=0; float s=0; for(i=0;i<len-1;i++) { if(x1>=x[i] && x1<x[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]; return s; } float Fdline(float x[],float y[],float x1,int len); void main() { float x[]={0.5,0.7,0.9,1.1,1.3}; float y[]={0.479,0.644,0.783,0.891,0.964}; int len=sizeof(x)/sizeof(x[0]); float x1=0; float s=0; printf("请输入要求解的x1的值:\n"); scanf("%f",&x1); s=Fdline(x,y,x1,len); printf("经过分段三次Hermite插值的结果为:\n"); printf("%f\n",s); } 运行结果: 5、对结果进行分析 根据分段线性插值的原理,可以看出分段线性插值虽然有很好的收敛性质,但却不是光滑的,所以线性插值的结果和实际的结果差距较大。 通过用编程实现对上例的求解,可以看出结果较为准确,但是由于在计算机上计算,会存在计算误差。 6、参考文献 [1] 秦新强.数值逼近.西安:西安理工大学出版社,2010
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服