三次埃尔米特插值_第1页
三次埃尔米特插值_第2页
三次埃尔米特插值_第3页
三次埃尔米特插值_第4页
三次埃尔米特插值_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、计算方法课程设计报告学生姓名:张学阳学 号:1009300132陈 洋1009300109刘 睿1009300122学 院:理学院班 级:数学101题 目:分段线性及三次埃尔米特插值通用程序指导教师: 宋云飞 职称: 讲师 朱秀丽 讲师 尚宝欣 讲师 2012年12月30日目 录目 录I一、摘要1 二、算法设计2 2.1分段线性插值2 2.2分段三次埃尔米特插值2 2.3功能框图3 三、例题计算4 四、误差及结果分析9 4.1例题误差分析9 4.2结点个数对插值结果的影响9 五、总结及心得体会 12 参考文献13源程序14一、 摘要分段线性插值与分段定义的线性插值,在相邻插值节点的区间上对应的

2、是同一个线性函数。由于它们的表现形式不一样从而产生为两种不同的计算方法,相应的误差表现形式也不一样.拉格朗日插值余项利用f(x)的二阶导数,要f(x)的二阶导数存在,对于二阶导数不存在的情况不能估算出它的误差,所以适用范围比较小.现在我们可以利用一阶导数就估算出误差,给计算带来许多的方便。为了避免高次插值可能出现的大幅度波动现象,在实际应用中通常采用分段低次插值来提高近似程度,比如可用分段线性插值或分段三次埃尔米特插值来逼近已知函数,但它们的总体光滑性较差。为了克服这一缺点,一种全局化的分段插值方法三次样条插值成为比较理想的工具。在代数插值过程中,人们为了获得较好的近似效果,通常情况下是增加插

3、值节点数.由于二次插值比线性插值近似效果好,因此容易错误地认为插值多项式次数越高越好.事实上,随着插值节点的增多,插值多项式不一定收敛到被插值函数.。通过分段低次插值或样条插值可以得到较好的近似逼近函数,分段低次插值具有公式简单、运算量小、稳定性好、收敛性有保证等优点.随着子区间长度h取得足够小,分段低次插值总能满足所要求的精度.因此分段低次插值应用十分广泛.。分段线性插值是分段低次插值中常见的方法之一,在本文中对函数在(-5,5)上进行分段线性插值,取不同节点个数n,得到不同分段线性插值函数.并用MATLAB编写分段线性插值函数,最后比较用不同节点数所得插值函数与真实函数的误差,从而得出节点

4、数与插值效果的关系。二、算法设计2.1 分段线性插值分段线性插值就是通过插值点用折线段连接起来的逼近函数。设已知节点上的函数值记求一折线函数满足:(1)(2)(3)在每个小区间上是线性函数.则称为分段线性插值函数。由定义可知在每个小区间上可表示为分段线性插值的误差估计可利用插值余项公式得到或其中由此还可得到在上一致成立,故在上一致收敛到。2.2 分段三次埃尔米特插值分段线性插值函数的导数是间断的,若在节点上除已知函数值外还给出导数值这样就可构造一个导数连续的分段插值函数它满足条件:(1)(2);(3)在每个小区间上是三次多项式。根据两点三次插值多项式可知,在区间上的表达式为上式对于成立。利用三

5、次埃尔米特插值多项式的余项可得误差估计其中2.3功能框图程序可以通过输入插值函数,插值结点个数,来实现插值,还可以选择插值方式,具体框图如下开 始输入插值函数选择插值方法分段线性插值分段埃尔米特插值输入插值结点个数是否继续是退 出否 三、例题计算1. 插值函数为输入6个节点的分段线性插值输入6个节点的分段三次埃尔米特插值请输入插值函数:x2+1请选择插值法(1为分段线性插值,2为分段三次埃尔米特插值):>> 1请输入插值节点数N=6是否继续(1为继续):1请输入插值函数:x2请选择插值法(1为分段线性插值,2为分段三次埃尔米特插值):>> 2请输入插值节点数N=6是否继

6、续(1为继续):22.插值函数为输入节点为8的分段线性插值输入节点为8的分段三次埃尔米特插值请输入插值函数:cos(x)请选择插值法(1为分段线性插值,2为分段三次埃尔米特插值):>> 1请输入插值节点数N=8是否继续(1为继续):1请选择插值法(1为分段线性插值,2为分段三次埃尔米特插值):>> 2请输入插值节点数N=83.插值函数为输入节点为10的分段线性插值输入节点为10的分段线三次埃尔米特插值请输入插值函数:exp(x)请选择插值法(1为分段线性插值,2为分段三次埃尔米特插值):>> 1请输入插值节点数N=10是否继续(1为继续):1请选择插值法(1

7、为分段线性插值,2为分段三次埃尔米特插值):>> 2请输入插值节点数N=10四、误差及结果分析4.1例题误差分析1. 误差n值取8,由分段线性插值余项公式可得误差限为由插值图像和误差可知误差结果较大由分段三次埃尔米特插值余项公式可得误差限为误差为零因此分段三次埃尔米特插值较为精确2. 误差n值取10,分段线性插值误差限为分段三次埃尔米特插值误差限为由误差结果可知分段三次埃尔米特插值得到的结果更为精确3. 误差n值取12,分段线性插值误差限为分段三次埃尔米特插值误差限为由误差结果可知分段三次埃尔米特插值得到的结果更为精确综上可知,同等条件下分段三次埃尔米特插值得到的结果更为精确4.2

8、结点个数对插值结果的影响为了进一步研究误差与插值节点的关系,我们以例题3的分段三次埃尔米特插值为例n值取4时,误差为15.0974,插值图像如下n值取5时,误差为6.1839,插值图像如下n值取6时,误差为2.9822,插值图像如下n值取8时,误差为0.9436,插值图像如下通过误差限和得到的图像可知,插值节点越多,得到的图像越精确。五、总结及心得体会刚看到题目时,心里一片茫然不知该如何下手,因为计算方法的课程设计和之前做的课程设计有很大的不同,特别是不知论文该写哪些东西,后来通过查阅书籍和网络搜索同类论文了解了它的写作内容。总是有很多的问题存在,只是大多时候都隐藏了起来,当我们发现问题时,应

9、该以平常的心态去对待,着急是没有用的,我们要做的就是在最短的时间内找出解决的办法。在学习计算方法课程的时候,发现它确实不好学,只是应付考试就尚且有些费劲,要想真正弄精就更是困难了,不过这也是没有办法的事,毕竟就是有很多东西很难理解甚至是理解不了的,要想比别人更厉害,就得花些时间在难以理解的问题上。在做课设时有些同学做了界面现一想还急火攻心,开始自己也想着做一下界面,可是有难度,不得不佩服那些能人,既然那东西不会,就只能乖乖用自己会的了。有时候我不得不再次钦佩自己的团队协作能力,同样又是和不同的人组队,依旧是碰撞出激情的火花,我只想说团结就是力量。我们最大的敌人是我们自己,我一直深信,在做的过程

10、中,脑海中一直在想别人做的怎么样了,是不是比自己做的更好,当静下心来时,才恢复过来,管别人干什么,尽自己最大的努力把东西最好不就可以了吗,相信自己一定能做好。有一个伟人曾说过如果给他一把斧头用六个小时去砍柴,他会用四个钟头取磨这把斧头,课设前的准备是很重要的,还好,通过学习计算方法了解了许多计算方法的知识。我们学习的知识有很多是模糊的,当在规定的时间去完成任务是,我们所要做的就是把可能用到的知识拾起来或是尽快学会一种方法来解决它,这是一种能力,是需要我们通过锻炼去提高的。参考文献1李庆扬,王能超,易大义 数值分析(第5版)北京:清华大学出版社,20082李庆扬,关治,白峰杉 数值计算原理北京:

11、清华大学出版社,20003李海,邓樱 MATLAB程序设计教程北京:高等教育出版社,20024张学敏,倪虹霞. MATLAB基础及应用. 中国电力出版社,2009.5易大义, 沈云宝, 李有法. 计算方法M. 浙江大学出版社, 2002.源程序c=1;while(c=1)syms f x lx;f=input('请输入插值函数');B=input('请选择插值法(1为分段线性插值,2为分段三次埃尔米特插值):');if B=1 N=input('请输入插值节点数N='); xx=-5:10/N:5; ff=zeros(1,length(xx);

12、for i=1:(N+1) x=xx(i); ff(i)=eval(f); end M = -5:0.01:5; output = zeros(1,length(M); n = 1; for i=2:N+1 for x=-5:0.01:5 if x<xx(i) && x>=xx(i-1) lx(1)=ff(i-1)*(x-xx(i)/(xx(i-1)-xx(i); lx(2)=ff(i)*(x-xx(i-1)/(xx(i)-xx(i-1); output(n) = lx(1)+lx(2); n = n+1; end end end ezplot(f,-5,5) ho

13、ld on A =-5:0.01:5; plot(A,output,'r');endif B=2 N=input('请输入插值节点数N='); f1=diff(f); xx=-5:10/N:5; ff=zeros(1,length(xx); for i=1:(N+1) x=xx(i); ff(i)=eval(f); ff1(i)=eval(f1); end M = -5:0.01:5; output = zeros(1,length(M); n = 1; for i=2:N+1 for x=-5:0.01:5 if x<xx(i) && x

14、>=xx(i-1) lx(1)=ff(i-1)*(x-xx(i)2/(xx(i-1)-xx(i)2*(1+2*(x-xx(i-1)/(xx(i)-xx(i-1); lx(2)=ff(i)*(x-xx(i-1)2/(xx(i)-xx(i-1)2*(1+2*(x-xx(i)/(xx(i-1)-xx(i); lx(3)=ff1(i-1)*(x-xx(i)2/(xx(i-1)-xx(i)2*(x-xx(i-1); lx(4)=ff1(i)*(x-xx(i-1)2/(xx(i)-xx(i-1)2*(x-xx(i); output(n) = lx(1)+lx(2)+lx(3)+lx(4); n =

15、n+1; end end end ezplot(f,-5,5) hold on A =-5:0.01:5; plot(A,output,'r');endif B=1&&B=2 disp('输入有误,请重新输入')endc=input('是否继续(1为继续):');closeend注:设计报告撰写说明一、正文内容要求:正文内容层次序号为: 1、1.1、。 正文内容一般为:1、选题背景:说明本课题应解决的主要问题及应达到的技术要求;简述本设计的指导思想。 2、方案论证(设计理念):说明设计原理(理念)并进行方案选择,阐明为什么要选择这个设计方案以及所采用方案的特点。 3、过程论述:对设计工作的详细表述。要求层次分明、表达确切。 4、结果分析:对研究过程中所获得的主要的数据、现象进行定性或定量分析,得出结论和推论。5、结论或总结:对整个研究工作进行归纳和综合。6、课程设计心得体会。二、图表、公式

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论