以下为《实验6 MATLAB数据插值和拟合方法》的无排版文字预览,完整内容请下载
实验六 MATLAB数据插值和拟合方法
实验目的
1、了解Matlab数值计算的函数功能;
2、掌握数据的插值函数使用技巧;
3、掌握数据的拟合函数使用技巧。
实验原理
1、数据插值和拟合的建模思想和技巧;
2、插值和拟合的求解算法;
实验环境
PC一台,Windows 7系统以上,Matlab软件(7.0版本以上)。
实验要求
1、练习matlab的基本操作;
2、认识matlab数值计算函数;
3、完成数据插值和拟合操作。
实验内容及步骤
在大量的应用领域中,人们经常面临用一个解析函数描述数据(通常是测量值)的任务。而很多时候自变量与因变量间的函数关系是不能写出解析表达式的,只能得到函数在若干点的函数值或导数值,或者表达式过于复杂而需要较大的计算量。当要求知道其它点的函数值时,需要估计函数值在该点的值。
为了完成这样的任务,需要构造一个比较简单的函数,使函数在观测点的值等于已知的值,或使函数在该点的导数值等于已知的值,寻找这样的函数有很多方法。根据测量数据的类型有以下两类处理观测数据的方法。
一种是插值法,数据假定是正确的,没有误差,要求以某种方法描述数据点之间所发生的情况。
另一种方法是曲线拟合。人们设法找出某条光滑曲线,它能最佳的拟合数据,但不必经过任何数据点,即测量值与真实值可以有误差。
数据插值与曲线拟合的不同点:若要求所求曲线(面)通过所给所有数据点,就是插值问题;若不要求曲线(面)通过所有数据点,而是要求它反映对象整体的变化趋势,这就是数据拟合,又称曲线拟合或曲面拟合。曲线插值与拟合都是要根据一组已知数据构造一个函数作为近似,由于近似的要求不同,二者在数学方法上是完全不同的。
在MATLAB中,无论是插值还是拟合,都有相应的函数来处理。
数据插值
数据插值方式有最邻近插值、线性插值、三次样条插值、立方插值和分段线性插值等等,相关理论知识可参阅相关书籍。
本次实验仅介绍简单的插值命令使用方法。
(1)一维插值:
已知离散点上的数据集 ,即已知在点集X上的函数值Y,构造一个解析函数(其图形为一条曲线)通过这些点,并能够求出这些点之间的值,这一过程称为一维插值。
MATLAB命令:
yi=interp1(X, Y, xi, method)
该命令用指定的算法找出一个一元函数,然后以该函数给出xi处的值。其中x=[x1,x2,…,xn]’和 y=[y1,y2,…,yn]’两个向量分别为给定的一组自变量和函数值,用来表示已知样本点数据;xi为待求插值点处横坐标,可以是一个数,也可以是一个向量,是向量时,必须单调;yi得到返回的对应纵坐标。
method可以下列方法之一:
‘nearest’:最近邻点插值,直接完成计算;
‘spline’:三次样条函数插值;
‘linear’:线性插值(缺省方式),直接完成计算;
‘cubic’:三次函数插值;
对于[min{xi},max{xi}]外的值,MATLAB使用外推的方法计算数值。
例1作函数在[0,1]取间隔为0.1的点图,用插值进行实验。
命令如下:
x=0:0.1:1;
y=(x.^2-3*x+7).*exp(-4*x).*sin(2*x); %产生原始数据
subplot(1,2,1);
plot(x,y,x,y,'ro') %作图
xx=0:0.02:1; %待求插值点
yy=interp1(x,y,xx,'spline'); %此处可用nearest,cubic,spline分别试验
subplot(1,2,2)
plot(x, 内容过长,仅展示头部和尾部部分文字预览,全文请查看图片预览。
24
试用三次样条插值法求出该日6:30, 8:30, 10:30, 12:30, 14:30, 16:30的温度。再用三次多项式曲线拟合求这些时间的温度。
2、 山区地貌:
在某山区测得一些地点的高程如下表。平面区域为
1200
以上为《实验6 MATLAB数据插值和拟合方法》的无排版文字预览,完整内容请下载
实验6 MATLAB数据插值和拟合方法由用户“Y____Rix”分享发布,转载请注明出处