资源描述:
《实验 MATLAB插值与拟合实验.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、新乡学院数学与信息科学系实验报告实验名称插值与拟合所属课程数学软件与实验实验类型综合型实验专业信息与计算科学班级2011级1班学号姓名指导教师朱耀生6一、实验概述【实验目的】学会用一维插值函数yi=interp1(xo,yo,x,’menthod’)求出函数在插值点处的函数值,和用二维函数plot()作图。用二维插值函数zi=interp2(x0,y0,z0,x,y,’method’)求其在网格节点数据的插值,和用三维函数surfc()作图.【实验原理】1,一维插值函数yi=interp1(xo,yo,x,’menthod’),yi被插值点处的函数值
2、,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’为双线性插
3、值,’cubic’为双三次插值,缺省时为双线性插值。4,网格生成函数[X,Y]meshgrid(x,y),x,y为给定的向量,X,Y是网格划分后得到的网格矩阵绘制三维曲面图;三维曲面绘制函数surfc(x,y,z)【实验环境】MatlabR2010b二、实验内容问题1对函数,xÎ[-5,5],分别用分段线性插值和三次样条插值作插值(其中插值节点不少于20),并分别作出每种插值方法的误差曲线.1.分析问题通过一维插值函数yi=interp1(xo,yo,x,’menthod’)求出函数在插值点处的函数值,然后用二维函数plot()作图。2.问题求解fu
4、nctiony=lagrange(x0,y0,x)%x0插值节点,y0插值节点处的函数值,x要计算函数值的点;n=length(x0);%计算x0的长度m=length(x);%计算x的长度fori=1:ms=0;z=x(i);fork=1:np=1.0;forj=1:nifj~=kp=p*(z-x0(j))/(x0(k)-x0(j));%计算插值基函数6endends=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.
5、^2);y1=lagrange(x0,y0,x);z1=y1-y;plot(x,y1,'k+')%拉格朗日插值作图holdonplot(x,z1,'k+')%拉格朗日下的误差曲线y2=interp1(x0,y0,x);holdonplot(x,y2,'r')%分段线性插值作图z2=y2-y;plot(x,z2,'r')%分段线性插值下的误差曲线y3=interp1(x0,y0,x,'spline');plot(x,y3,'m.')%三次样条插值作图holdonz3=y3-y;plot(x,z3)%三次样条插值下的误差曲线holdoffaxis([-5
6、501])3.结果664.结论及分析经过多次试验可推知分析无误。问题2山区地貌图在某山区(平面区域(0,2800)´(0,2400)内,单位:米)测得一些地点的高程(单位:米)如表1,试作出该山区的地貌图.表124002000160012008001430145014701320128012001080940145014801500155015101430130012001460150015501600155016001600160013701500120011001550160015501380127015001200110013501450120
7、01150640001230139015001500140090011001060118013201450142014001300700900Y/X0400800120016002000240028001.分析问题要做出该山区的地貌图可依据测得的一些地点的高程通过二维插值函数zi=interp2(x0,y0,z0,x,y,’method’)的方法出多地点的高程,然后再用surfc()函数三维作图.2.问题求解x0=2800:-400:0;%X表示列数?且为减函数y0=2400:-400:0;%行数z0=[14301450147013201280120
8、01080940;14501480150015501510143013001200;146015001550