[2018年必威体育精装版整理]131张艳-埃尔米特(Hermite)插值逼近的C语言程序.docVIP

[2018年必威体育精装版整理]131张艳-埃尔米特(Hermite)插值逼近的C语言程序.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文档。上传文档
查看更多
[2018年必威体育精装版整理]131张艳-埃尔米特(Hermite)插值逼近的C语言程序

论文题目:埃尔米特(Hermite) 插值逼近的C语言程序 院 系: 数学科学学院 专 业: 数学与应用数学 姓 名: 张 艳 学 号: 指导教师: 侯 存 贵 完成时间: 2007-5-15 埃尔米特(Hermite) 插值逼近的C语言程序 张艳 包头师范学院数学科学学院 摘要:本文主要探讨埃尔米特(Hermite) 插值逼近的C语言程序算法,着重分析其推导过程,并给出了其C语言程序以及埃尔米特(Hermite)插值逼近的简单应用. 关键词:Hermite插值多项式;插值条件; Hermite插值基函数. 一、Hermite插值多项式定义 定义: 设基点互异.给定,,.要求插值多项式满足 (1) 则称为二重密切Hermite插值多项式,简称为Hermite插值多项式.称为二重插值基点. (1)式共有个条件,因此Hermite插值多项式通常次数不超过,故可将记为. 二、埃尔米特(Hermite)插值多项式的存在唯一性 定理:关于互异基点满足条件(1)的二重密切次Hermite插值多项式存在且唯一. 证明:设有2n+1次多项式 (2) 满足条件(1)即 (3) 由(2)式知(3)式是一个关于的阶线性方程组.的存在唯一性决定于(3)式为齐次线性方程系组,即当=0,=0()时,(3)式仅有平凡解 .现用反证法证明:若齐次方程组有非平凡解,则表示存在一个次数不高于的多项式满足 为的互异的二重零点,即次多项式有个零点(包括重数),这和代数基本定理相矛盾. 三、埃尔米特(Hermite)插值多项式的构造 由定理知存在且唯一,我们用类似于拉格朗日插值多项式的构造方法来构造Hermite插值多项式 设,,,分别满足插值条件 (4) (5) (其中表示克罗内克(Kronecker)符号.当, 时=1;当,时=0.)的次多项式,于是次数不超过次多项式 能够满足插值条件 .因而就是所要求的次多项式.因此只要构造出满足条件(4)(5)的和即可.我们把满足插值条件(4)(5)的次多项式和()称为Hermite插值基函数.下面构造和 由于关于基点的拉格朗日基函数满足 ( ,)且是次多项式,结合插值条件(4)设为,则依据条件(4)要求应有 当时,由于 故 当时应有 从中解出 可得 从而得到 设为 则 依据条件(5)要求应有 当时,由于 故 当时,故也应有 而 故 即 因此,我们得到埃尔米特插值函数的基函数为 根据插值条件,利用二重密切的Hermite插值基函数的性质,Hermite插值多项式可简单地表示为 四、埃尔米特(Hermite)插值多项式误差 在求解某些数学问题时,用有限的过程代替无限过程所产生的误差称为截断误差(或方法误差). 定理:a:设的导数于[a,b]连续,于(a,b)内存在, ()互异; b:为Hermite插值多项式; 则 . 其中与有关。 五、埃尔米特(hermite)插值程序 功能:给定个基点,()上的函数值及一阶导数值,,用埃尔米特(Hermite)插值公式计算出给定插值点处的函数近似值. 程序如下: #include stdio.h #include stdlib.h #include math.h #include ctype.h #define EPSILON 1.0e-12 #define N 3 double hermite(double x,double xi[N],double yi[N],double dyi[N]) { int i,j; static double li,sum,y,gix[N],hix[N]; for(i=0;iN;i++) { li=1.0;sum=0.0; for(j=0;jN;j++) if(j!=i) { if(fabs(xi[i]-xi[j])EPSILON) { printf(The interpolation base points overlapping!\n); printf(Strike any key to exit!\n); getch(); exit(1); }

文档评论(0)

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

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

1亿VIP精品文档

相关文档