牛顿插值法matlab程序_第1页
牛顿插值法matlab程序_第2页
牛顿插值法matlab程序_第3页
全文预览已结束

下载本文档

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

文档简介

1、计算方法数值实验报告班级 学号姓名 实验室3-128设备编号D12日期 实验题目编写牛顿插值方法的MATLAB主程序并验算P183.111、实验目的:通过编程实现牛顿插值方法,加深对多项式插值的理解。应用所编程序解决实际算例。2、实验要求:(1)认真分析课题要求,复习相关理论知识,选择适当的解决方案;(2)上机实验程序,做好上机前的准备工作;(3)调试程序,记录计算结果;(4)分析和解释计算结果;(5)按照要求书写实验报告。3、实验内容:(1)算法原理或计算公式算法原理:根据均差定义,把x看成a,b上一点,可得 只要把后一式代入前一式,就得到其中 由式(1-1)确定的多项式显然满足插值条件,且

2、次数不超过n次的多项式,其系数为 称为牛顿(Newton)均差插值多项式。系数就是书本表5-1中第一条斜线上对应的数值。式(1-2)为插值余项,由插值多项式唯一性可知,它与书本式(5.1.19)是等价的,事实上,利用均差与导数关系式可由式(1-2)推出书本式(5.1.19)。但式(1-2)更有一般性,它对f是由离散点给出的情形或f导数不存在时均适用。(2)程序设计思路 1)输入:n的值及要计算的函数点x(本文取x0,x1两个函数点);2)由计算的值;3)输出:。(3)源程序function f=Newton(x,y,x0,x1)syms t;if(length(x)=length(y) n=l

3、ength(x); c(1:n)=0.0;else disp(x和y的维数不相等!); return;endf=y(1);y1=0;l =1;for(i=1:n-1) for(j=i+1:n) y1(j)=(y(j)-y(i)/(x(j)-x(i); end c(i)=y1(i+1); l=l*(t-x(i); f=f+c(i)*l; y=y1;endf=simplify(f);g=subs(f,t,x0)g1=subs(f,t,x1)A=zeros(n,n-1);A=y,A;for j=2:n for i=j:n A(i,j)=(A(i,j-1)-A(i-1,j-1)/(x(i)-x(i+1-j); endenddisp(差商表为);disp(A);(4)运行结果 x=0 1 2 3; y=1 2 17 64; x0=0.5; x1=2.5; f=Newton(x,y,x0,x1)g = 0.8750g1 = 35.3750差商表为 0 0 0 0 1.0000 1.0000 0 0 7.0000 6.0000 2.5000 0 3.0000 -4.0000 -5.0000 -2.5000 f = 1-2*t2+3*t34、实验小结体会:1)通过本次实验让我从实践验证了理论-插值多项式的基本思想;2)牛顿插值法建立过程中用到了插商计算,这是有别于拉格朗日插值法的一部分,在已知

温馨提示

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

评论

0/150

提交评论