收藏 分销(赏)

实验次样条插值实验知识讲解.doc

上传人:精*** 文档编号:3917779 上传时间:2024-07-23 格式:DOC 页数:6 大小:127.50KB
下载 相关 举报
实验次样条插值实验知识讲解.doc_第1页
第1页 / 共6页
实验次样条插值实验知识讲解.doc_第2页
第2页 / 共6页
实验次样条插值实验知识讲解.doc_第3页
第3页 / 共6页
实验次样条插值实验知识讲解.doc_第4页
第4页 / 共6页
实验次样条插值实验知识讲解.doc_第5页
第5页 / 共6页
点击查看更多>>
资源描述

1、实验次样条插值实验精品文档数值分析实验报告姓 名忘川学 号1205025106系 别数学系班级12级 主讲教师指导教师实验日期2014/6/25专业信息与计算科学专业 课程名称数值分析同组实验者无一、实验名称: 实验四、三次样条插值实验二、 实验目的:1掌握三次样条插值的运用;2了解拉格朗日插值在高次上的误差。三、实验内容及要求:给定函数节点(1)编写三次样条程序求,取 (2)作原函数、Langrage插值函数和三次样条插值函数的图像,并比较它们的区别。附:算法描述:三次样条插值(Cubic Spline Interpolation)PURPOSE: To find a piecewise c

2、ubic spline function . (, ).where , and ,. INPUT: interpolated points; clamped boundary condition.OUTPUT: Step 1 For Step 2 By clamped boundary condition, Set ,Step 3 Solve tri-diagonal systemStep 4 Output . Stop四、实验步骤(或记录)(1)编写三次样条程序求,取 程序如下:function s,m=selfspline(x0,y0,df,x,conds)n=length(x0);h=d

3、iff(x0);b=ones(1,n)*2;for j=2:n-1 a(j)=h(j-1)/(h(j-1)+h(j); c(j)=h(j)/(h(j-1)+h(j); d(j)=6*(h(j-1)*(y0(j+1)-y0(j)-h(j)*(y0(j)-y0(j-1)/(h(j)*h(j-1)*(h(j)+h(j-1);enda(1:n-2)=a(2:n-1);switch condscase 1 a(n-1)=1; c(1)=1; d(1)=6*(y0(2)-y0(1)/(x0(2)-x0(1)-df(1)/(x0(2)-x0(1); d(n)=6*(df(2)-(y0(n)-y0(n-1)/

4、(x0(n)-x0(n-1)/(x0(n)-x0(n-1); case 2 a(n-1)=0; c(1)=0; d(1)=2*df(1); d(n)=2*df(2);otherwise error(conds值错误, conds只能为1或2)endfor i=2:n r=a(i-1)/b(i-1); b(i)=b(i)-r*c(i-1); d(i)=d(i)-r*d(i-1);endm(n)=d(n)/b(n);for i=n-1:-1:1 m(i)=(d(i)-c(i)*m(i+1)/b(i);endfor j=1:length(x) for i=1:n-1 if x(j)=x0(i)&x(

5、j) k=0:10; x0=-5+k; y0=1./(x.2+1); x=-5:0.5:5; y=1./(x.2+1); df=diff(y)得到如下数据:df = 0.0086 0.0118 0.0166 0.0245 0.0379 0.0621 0.1077 0.1923 0.3000 0.2000 -0.2000 -0.3000 -0.1923 -0.1077 -0.0621 -0.0379 -0.0245 -0.0166 -0.0118 -0.0086(2)作原函数、Langrage插值函数和三次样条插值函数的图像,并比较它们的区别。先写拉格朗日插值的程序,如下:function y=

6、lagr1(x0,y0,x)n=length(x0); m=length(x);for i=1:m z=x(i); s=0.0; for k=1:n p=1.0; for j=1:n if j=k p=p*(z-x0(j)/(x0(k)-x0(j); end end s=p*y0(k)+s; end y(i)=s;endend然后直接在matlab的命令窗口输入:x0=-5 -4 -3 -2 -1 0 1 2 3 4 5 ;y0=1./(x0.2+1);x=-5:0.01:5;df=diff(y0);conds=1;y=selfspline(x0,y0,df,x,conds);y1=1./(x.2+1);y2=lagr1(x0,y0,x);plot(x,y1,b,x,y,y-,x,y2,r:)legend(原函数,三次样条插值,Lagrange插值)即可得到以下图形:(3) 分析结果:根据图像可知,用拉格朗日插值函数进行插值时,在次数较高时会出现龙格现象,导致其值与原函数相差甚大,在一定范围内插值拟合效果不好,而三次样条插值函数可以很好地接近原函数且光滑性较好,是比较理想的插值函数。五、教师评语(或成绩) 教师签字 : 年 月 日收集于网络,如有侵权请联系管理员删除

展开阅读全文
相似文档                                   自信AI助手自信AI助手
猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 教育专区 > 其他

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

关于我们      便捷服务       自信AI       AI导航        获赠5币

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

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

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

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服