1 / 7
文档名称:

实验报告-插值法.doc

格式:doc   大小:243KB   页数:7页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

实验报告-插值法.doc

上传人:63229029 2017/3/7 文件大小:243 KB

下载得到文件列表

实验报告-插值法.doc

文档介绍

文档介绍:计算机上机实验报告专业和班级姓名成绩学号课程名称数值计算方法实验名称插值法实验目的和要求实验目的 1、掌握用 MATLAB 计算拉格朗日、分段线性、三次样条三种插值的方法,改变节点的数目,对三种插值结果进行初步分析。 2、掌握用 MAT L AB 作线性最小二乘的方法。 3、通过实例学****如何用插值方法与拟合方法解决实际问题,注意二者的联系和区别。实验内容和步骤实验的主要内容 1、编制拉格朗日、牛顿插值程序,并运行一个简单的实例。( 1)拉格朗日插值程序: function v=polyinterp(x,y,u) n=length(x); v=zeros(size(u)); for k=1:n w=ones(size(u)); for j=[1:k-1 k+1:n] w=(u-x(j))./(x(k)-x(j)).*w; end v=v+w*y(k); end 实例:当 x=144,169,225 时, y=12,13,15, 用拉格朗日差值法求根号 175 。如下: (2)牛顿插值程序: function y=newinterp(X,Y,x)% 牛顿插值函数 m=length(X); for k=2:m for j=1:k-1 Y(k)= (Y(k)- Y(j))/(X(k)-X(j)); end end y=Y(m); for j=m-1:-1:1 y=y.*(x-X(j))+Y(j); end 实例:当 x=144,169,225 时, y=12,13,15, 用牛顿差值法求根号 175 。如下: 2、给定函数 xxf?)( ,已知: 414214 .1.)(?f449138 .1.)(?f483240 .1.)(?f516575 .1.)(?f549193 .1.)(?f 用牛顿插值法求 4次 Newton 插值多项式在 处的值,以此作为函 y=exp(-x 2) (-2 ≤x≤ 2), 在n个节点上( n不要太大,如 5~11 )用拉格朗日、分段线性、三次样条三种插值方法,计算 m 个插值点的函数值(m要适中,如 50~100 )。通过数值和图形输出, 将三种插值结果与精确值进行比较。适当增加 n,在作比较,由此作初步分析。程序: %不同插值方法是否会出现震荡 runge 现象%M 文件 function runge10 [X,Y]=fenduan(10,1);% 将[-1,] 区间分成 10等份,返回对应的(x,y) 五组数据 x=linspace(-2,2,100);% 将[-1,1] 划分成 100 等份,以便作出样条插值多项式的图形。 for i=1:length(x)% 绘制原函数曲线图 y(i)=exp(-x(i)^2); end hold on plot(x,y); text(0,1,'\leftarrow 原函数')% 对曲线添加标注 y=newinterp(X,Y,x);% 多项式插值中的牛顿插值法 hold on plot(x,y); title(' 插值函数中的 runge 现象,区间等分为 10段');%添加标题 xlabel('X 轴'); ylabel('Y 轴'); text(-,,'\leftarrow 牛顿插值')% 对曲线添加标注 y=int