


下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、数值分析实验报告姓名忘川学号1205025106系另U数学系班级12级主讲教师指导教师实验日期2014/6/25专业信息与计算科学专业课程名称数值分析同组实验者无一、实验名称:实验四、三次样条插值实验二、实验目的:1.掌握三次样条插值的运用;2.了解拉格朗日插值在高次上的误差。、实验内容及要求:一、一1一一,_、给正函数f(x)=,x?5,5,下点a=-5+k(k=0,1,L,10),x+1(1) 编写三次样条程序求Si0(x),取Sio(Xk)=f(xQ(k=0,1,L,10),斗好-5)=f(-5),Sio(5)=f(5).(2) 作原函数f(x)、Langrage插值函数L10(x)和三
2、次样条插值函数§0(x)的图像,并比较它们的区别。附:算法描述:三次样条插值(CubicSplineInterpolation)PURPOSE:TofindapiecewisecubicsplinefunctionMi3Mi13yiMiy1Mi1S(x)=(x+-x)+(x-x)+(h)(xix)+(3hi)(xx).6hi6hih6h6(Xxx1,i=0,1,,n-1).whereSxi=Mii=0,1,n,andS''(x)=Mjx*x+Mi+JxxWxi,xz,i=0,1,,n1.hhiINPUT:interpolatedpoints(xi,yi);clampe
3、dboundarycondition*(冷)=):,SgNy:.OUTPUT:Mii=0,1,nStep1Fori=1,2",n-1hihihi1hi-0二=1)hihi1_6N1fyi-yii=(一)hihi1hi1hiStep2Byclampedboundarycondition,Setn。=6(yTy。_y。),n=!(yny二加)hih加加Step3Solvetri-diagonalsystem一2ft1-M01飞1菁2RM1%2P2M2役-11-OtnA2PnXMn:.«n2JMn_1InStep4OutputMii=0,1,n-Stop四、实验步骤(或记录)(1
4、)编写三次样条程序求Sio(x),取Sio(Xk)=f(Xk)(k=0,1,L,10),So¥-5)=f(-5),Si0(5)=f(5).程序如下:functions,m=selfspline(x0,y0,df,x,conds)n=length(x0);h=diff(x0);b=ones(1,n)*2;forj=2:n-1a(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-
5、2)=a(2:n-1);switchcondscase1a(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)/(x0(n)-x0(n-1)/(x0(n)-x0(n-1);case2a(n-1)=0;c=0;d(1)=2*df(1);d(n)=2*df(2);otherwiseerror('conds值错误,conds只能为1或2')endfori=2:nr=a(i-1)/b(i-1);b(i)=b(i)-r*c(i-1);d(i)=d(i)
6、-r*d(i-1);endm(n)=d(n)/b(n);fori=n-1:-1:1m(i)=(d(i)-c(i)*m(i+1)/b(i);endforj=1:length(x)fori=1:n-1ifx(j)>=x0(i)&x(j)<=x0(i+1)s(j)=m(i)*(x0(i+1)-x(j)A3/(6*h(i)+m(i+1)*(x(j)-x0(i)A3/(6*h(i)+(y0(i)-m(i)*h(i)A2/6)*(x0(i+1)-x(j)/h(i)+(y0(i+1)-m(i+1)*h(i)A2/6)*(x(j)-x0(i)/h(i);endendend在matlab的命
7、令窗口输入:>>k=0:10;>>x0=-5+k;>>y0=1./(x.A2+1);>>x=-5:0.5:5;>>y=1./(x.A2+1);>>df=diff(y)得到如下数据:df=0.00860.01180.01660.02450.03790.06210.10770.19230.30000.2000-0.2000-0.3000-0.1923-0.1077-0.0621-0.0379-0.0245-0.0166-0.0118-0.0086(2)作原函数f(x)、Langrage插值函数L10(x)和三次样条插值函数S,
8、0(x)的图像,并比较它们的区别。先写拉格朗日插值的程序,如下:functiony=lagr1(x0,y0,x)n=length(x0);m=length(x);fori=1:mz=x(i);s=0.0;fork=1:np=1.0;forj=1:nifj=kp=p*(z-x0(j)/(x0(k)-x0(j);endends=p*y0(k)+s;endy(i)=s;endend然后直接在matlab的命令窗口输入:x0=-5-4-3-2-1012345;y0=1./(x0.A2+1);x=-5:0.01:5;df=diff(y0);conds=1;y=selfspline(x0,y0,df,x,conds);y1=1./(x.A2+1);y2=lagr1(x0,y0,x);plot(x,y1,'b',x,y,'y-',x,y2,'r:')legend('原函数,三次样条插值,'Lagrange插值)即可得到以下图形:1.50.50原函数三次样条插值Lagrange插值-0
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 喜迎2025年元旦活动方案
- 化学课程的编制与改革
- 配电网运维知识培训课件
- 绩效管理的评价误区
- 高端房地产周末暖场活动
- 广州松田职业学院《建筑设计A4》2023-2024学年第二学期期末试卷
- 秋天漫画节气课件
- 天津商业大学宝德学院《数字产品交互设计》2023-2024学年第二学期期末试卷
- 江苏省无锡市江阴初级中学2024-2025学年9校联考初三物理试题含解析
- 福建福州市台江区达标名校2025年中考英语试题冲刺卷(一)含答案
- 中央环保督察迎检方案
- 组建燃料经销公司方案
- 工程经济学(第6版)全套教学课件
- 2024年腐植酸尿素行业分析报告及未来发展趋势
- 高中单词速记3500表打印
- 五年级下册科学全册知识点总结与梳理(新改版苏教版)
- 加油机维修保养记录表
- 能源管理体系培训课件(2023年EnMS)
- 新视野大学英语(第四版)读写教程4(思政智慧版)课件 Unit1 Urban development Section A
- 23秋国家开放大学《民法学(2)》形考任务1-4参考答案
- 【获奖】英语跨学科项目式作业设计
评论
0/150
提交评论