当前位置:文档之家› 曲线拟合和插值运算原理和方法

曲线拟合和插值运算原理和方法

实验10 曲线拟合和插值运算一. 实验目的学会MATLAB 软件中软件拟合与插值运算的方法。

二. 实验内容与要求在生产和科学实验中,自变量x 与因变量y=f(x)的关系式有时不能直接写出表达式,而只能得到函数在若干个点的函数值或导数值。

当要求知道观测点之外的函数值时,需要估计函数值在该点的值。

要根据观测点的值,构造一个比较简单的函数y=t (x),使函数在观测点的值等于已知的数值或导数值,寻找这样的函数t(x),办法是很多的。

根据测量数据的类型有如下两种处理观测数据的方法。

(1) 测量值是准确的,没有误差,一般用插值。

(2) 测量值与真实值有误差,一般用曲线拟合。

MATLAB 中提供了众多的数据处理命令,有插值命令,拟合命令。

1.曲线拟合已知离散点上的数据集[(1x ,1y ),………(n x ,n y )],求得一解析函数y=f (x),使f(x)在原离散点i x 上尽可能接近给定i y 的值,之一过程叫曲线拟合。

最常用的的曲线拟合是最小二乘法曲线拟合,拟合结果可使误差的平方和最小,即使求使21|()|n i ii f x y =-∑ 最小的f(x).格式:p=polyfit(x,Y ,n).说明:求出已知数据x,Y 的n 阶拟合多项式f(x)的系数p ,x 必须是单调的。

[例 1.9]>>x=[0.5,1.0,1.5,2.0,2.5,3.0]; %给出数据点的x 值>>y=[1.75,2.45,3.81,4.80,7.00,8.60]; %给出数据点的y 值>>p=polyfit (x,y,2); %求出二阶拟合多项式f(x)的系数>>x1=0.5:0.05:3.0; %给出x 在0.5~3.0之间的离散值>>y1=polyval(p,1x ); %求出f(x)在1x 的值>>plot(x,y,‟*r ‟, 11,x y ‟-b ‟) %比较拟合曲线效果计算结果为:p=0.5614 0.8287 1.1560即用f(x)=0.56142x +0.8287x+1.1560拟合已知数据,拟合曲线效果如图所示。

问题1.32:将上题改为6阶拟合,拟合效果又如何?(拟合曲线经过所有已知数据点)从以上例子可看出,选择不同的阶数,会得到不同的效果,如何选择阶数,需要进一步了解系统辨识方面的知识。

2. 一维插值已知离散点上的数据集[(1x ,1y ),………(n x ,n y )],找出一解析函数连接自变量相邻的两个点(,1i i x x ),并求得两点间的数值,之一过程叫插值。

格式一:yi=inter 1p (X,Y,1x ,method)说明:该命令用指定的算法对数据点之间计算内插值,它找出一元函数f(x)在中间点的数值,其中函数f(x)由所给数据决定,各个参量之间的关系如图1.32所示。

“nearest ”:最近邻点插值,直接完成计算。

“linear ”线性插值(缺省方式),直接完成计算。

“spline ”三次样条函数插值。

“cubic ”三次函数插值。

对于超出x 的范围的1x 的分量,使用其他的方法,inter 1p 将对超出的分量执行外插值算法。

格式二: 1y = inter 1p (X,Y ,1x ,method,‟extrap ‟)%对于超出x 范围的1x 中的分量将执行特殊的外插值法extrap.yi=inter 1p (X,Y ,1x ,method,extrapval)%确定超出x 范围的1x 中的分量的外插值extrapval,其值通常取NaN 或0.[例 1.96]>> year = 1900:10:2010;>>product = [75.995,91.972,105.711,123.203,131.669,….249.633,256.344,267.893 ];>>p2005 = =interpl (year , product , 2005)x = 1900 : 1: 2010;>>y= interpl(year,product,x, …cubic‟);>>plot(year,product,‟o‟,x,y)插值结果为p1995 =262.11853.二维插值格式:Z I=interp2 (X,Y,Z,X I,Y I,method)说明:用指定的算法method计算二维插值,返回矩阵Z I,其元素对应于参量X I与Y元素,用户可以输入行向量和列向量XI和YI,此时,输出向量ZI与矩阵meshgrid(xi,yi)是同型的,参量X 与Y必须是单调的,且相同的划分格式,就像由命令meshgrid生成的一样,method有: …linear‟:双线性插值算法(缺省算法)…nearest‟:最临近插值…spline‟:三次样条插值…cubic‟:双三次插值[例1.97]>> years=1950:10:1990;>> service=10:10:30;>>wage=[150.697,199.592,187.625;179.323,195.072,250.287;203.212,179.092,322.767;226.505, 153.706,426.730;249.636,120.281,598.243];>> w=interp2(service,years,wage,15,1975)插值结果为:w=190.6288[例1.98]>> x=1:6;y=1:4;>> t=[12,10,11,11,13,15;16,22,28,35,27,20;18,21,26,32,28,25;20,25,30,33,32,30];>> subplot(1,2,1)>> mesh(x,y,t)>> x1=1:0.1:6;>> y1=1:0.1:4;>> [x2,y2]=meshgrid(x1,y1);>> t1=interp2(x,y,t,x2,y2,'cubic');>> subplot(1,2,2)>> mesh(x1,y1,t1)图形结果为:三,练习与思考1)已知x=[1.2,1.8,2.1,2.4,2.6,3.0,3.3],y=[4.85,5.2,5.6,6.2,6.5,7.0,7.5],求对x和y进行6阶多项式拟合的系数.2)分别用2,3,4,5阶多项式来逼近[0,3]上的正弦函数sin x,并做出拟合曲线及sin x函数曲线图,了解多项式的逼近程度和有效拟合区间随多项式的阶数有何变化.3)已知x=[0.1,0.8,1.3,1.9,2.5,3.1],y=[1.2,1.6,2.7,2.0,1.3,0.5],用不同的方法求x=2点的插值,并分析所得结果有何不同.四,提高内容1.三维数据插值格式:V I=interp3(X,Y,Z,V,X I,Y I,Z I,method).说明:用指定的算法method找出由参量X,Y,Z决定的三元函数V=V(X,Y,Z)在点(X I,Y I,Z I)的值,参量X I,Y I,Z I是同型阵列或向量.…cubic‟:三次插值…spline‟:三次样条插值.…nearest‟:最邻近插值.注意:在所有的算法中,都要求X,Y,Z是单调且有相同的格点形式,当X,Y,Z是等距且单调时,且算法‟*linear‟,ۢ*cubic‟,ۢ*nearest‟可得到快速插值.[例1.99]>> [x,y,z,v]=flow(20);>> [xx,yy,zz]=meshgrid(0.1:0.25:10,-3:0.25:3,-3:0.25:3);>> vv=interp3(x,y,z,v,xx,yy,zz);>> slice(xx,yy,zz,vv,[6,9.5],[1,2],[-2,0.2]);>> shading interp>> colormap cool插值图形如下:2一维插值的快速傅里叶算法格式:y=interpft(x,n).说明:返回包含周期函数x在重采用的n个等距的点的插值y.若length(x)=m,且x有采样间隔dx,则新的y的采样间隔dy=dx*m/n,注意,必须要n m,若x为一矩阵,则按x的列进行计算,返回的矩阵y有与x相同的列数,但有n行.数据格点格式:Z I=griddata(x,y,z,X I,Y I,method).说明:用二元函数z=f(x,y)的曲面拟合有不规则的数据向量x,y,z.griddata将返回曲面z在点)XI,YI)处的插值,曲面总是经过这些数据点(x,y,z)的,输入参量(X I,Y I)通常是规则的格点(像用命令meshgrid生成的一样),X I可以是行向量,这时X I指定一有常数列向量的矩阵,类似地,Y I 可以是一列向量,它指定一个有常数行向量的矩阵.…linear‟:基于三角形的线性插值(缺省算法)…cubic‟:基于三角形的三次插值.…nearest‟:最邻近插值法.3.三次样条数据插值格式:yy=spline(x,y,xx).说明:对于给定的离散的测量数据x,y(称为断点),要寻找一个三项式y=p(x),以逼近每对数据(x,y)点间的曲线.该命令用三次样条插值计算出由向量x与y确定的一元函数y=f(x)在点xx处的值,若参量若参量是一个矩阵,则以y的每一列和x配对,再分别计算由它们确定的函数在点xx处的值.则yy是一阶数为length(xx)*size(y,2)的矩阵.[例1.100] 对离散地分布在y=e x sinx函数曲线上的数据点进行样条插值计算.>> x=[0 2 4 5 6 12 12.8 17.2 19.9 20];>> y=exp(x).*sin(x);>> xx=0:.25:20;>> yy=spline(x,y,xx);>> plot(x,y,'o',xx,yy)插值图形结果如图所示:(报告来源)。

相关主题