数据插值与拟合

  在工程测量和科学实验中,所得到的数据通常是离散的,要得到这些离散点以外的其他点的数值,就需要根据已知的数据进行插值。插值函数一般由线性函数、多项式、样条函数或这些函数的分段函数充当。

一维插值

  一维差值:被插值函数只有单一变量,常见的插值函数有临近点插值(nearest),线性插值(linear),三次样条插值(spline)和分段立方插值(cubic/pchip)。

  调用形式:

  yi=interp1(x,y,xi,method);

  其中:x为自变量的取值向量,y为x对应的因变量,method为插值方法。

x=[-5:0.5:5];
y=(x.^3)*34+3*x;
x1=[-5:0.1:5]; y1=interp1(x,y,x1,'nearesr');


二维差值

  二维差值: 在给定的矩形区域[x1,xm]×[y1,ym]上,构造多项式,去逼近(x,y,z),然后用构造的多项式来

调用形式:

yi=interp2(x,y,z,xi,yi,method);
Method={‘nearest’, ‘linear’, ‘spline’, ‘cubic’}



拟合

  数值插值要求逼近函数在采样点与被逼近函数相等,但由于测量误差,所获得的数据不一定准确,如果强求逼近显然不够合理。曲线拟合不要求逼近函数通过各采样点,但要尽量的接近这些点,使误差在某种意义上达到最小

  曲线拟合的实现:用polyfit函数来求得最小二乘拟合多项式的系数,再用polyval函数所得的多项式计算所给出点上的函数近似值。

polyfit函数的调用格式为:

[P,S] = polyfit(X,Y,m);

   函数根据采样点X和采样点函数值Y,产生一个m次多项式P及其在采样点的误差向量S。其中X、Y是两个等长的向量,P是一个长度为m+1的向量,P的元素是多项式系数。

polyval函数的调用格式为:

 y = polyval(P,x);

函数能够按多项式的系数计算x点多项式的值。




猜你喜欢

转载自blog.csdn.net/mashui21/article/details/80153333