新乡学院数学与信息科学系实验报告实验名称插值与拟合所属课程数学软件与实验实验类型综合型实验专业信息与计算科学班级2011 级 1 班学号姓名指导教师朱耀生一、实验概述【实验目的】学会用 一维插值函数yi=interp1(xo,yo,x,’menthod’) 求出函数在插值点处的函 数值 , 和 用 二维 函 数plot()作 图 。 用 二 维插 值 函 数zi=interp2(x0,y0,z0,x,y,’method’) 求其在网格节点数据的插值,和用三维函数surfc()作图 . 【实验原理】1,一维插值函数 yi=interp1(xo,yo,x,’menthod’) ,yi 被插值点处的函数值,xo,yo 插值节点 ,x 被插值点, nearest 最邻近插值, linear线性插值, spline三次样条插值, cubic 立方插值,缺省时,为分段线性插值. 2, 二维作图函数 plot(x,y),x,y 都是向量时,则以 x 中元素为横坐标, y 中元素为纵坐标,且 x,y 长度相同。 x,y 都是矩阵, x 列与 y 列结合,绘制多条平面曲线,且必同大小。3,用作网格节点数据的插值zi=interp2(x0,y0,z0,x,y,’method’) ,zi为被插值点的函数值, x0,y0,z0点, x,y 被插值点,’ method’中’ nearest ’为最邻近差值,’ linear ’为双线性插值,’ cubic ’为双三次插值,缺省时为双线性插值。4,网格生成函数 [X,Y]meshgrid(x,y),x,y为给定的向量, X,Y 是网格划分后得到的网格矩阵绘制三维曲面图; 三维曲面绘制函数surfc(x,y,z) 【实验环境】MatlabR2010b二、实验内容问题 1 对函数21( )1f xx,x[-5,5],分别用分段线性插值和三次样条插值作插值(其中插值节点不少于20),并分别作出每种插值方法的误差曲线. 1. 分析问题通过一维插值函数yi=interp1(xo,yo,x,’menthod’) 求出函数在插值点处的函数值,然后用二维函数plot()作图。2. 问题求解function y=lagrange(x0,y0,x) % x0插值节点, y0 插值节点处的函数值,x要计算函数值的点;n=length(x0); %计算 x0的长度m=length(x); %计算 x的长度for i=1:m s=0;z=x(i);for k=1:n p=1.0;for j=1:n if j~=k p=p*(z-x0(j))/(x0(k)-x0(j)); %计算插值基函数endend s=p*y0(k)+s;endy(i)=s; %计算在 x(i)处的函数值(拉格朗日)endx0=-5:0.5:5;y0=1./(1+x0.^2);x=-5:0.1:5;y=1./(1+x.^2);y1=lagrange(x0,y0,x);z1=y1-y;plot(x,y1,'k+') %拉格朗日插值作图hold onplot(x,z1,'k+') %拉格朗日下的误差曲线y2=interp1(x0,y0,x);...