MATLAB软件提供了基本的曲线拟合函数的命令.
1.函数拟合
多项式函数拟合:a=polyfit(xdata,ydata,n)
其中n表示多项式的最高阶数,xdata,ydata为将要拟合的数据,它是用数组的方式输入.输出参数a为拟合多项式
y=a1xn+...+anx+a n+1的系数
多项式在x处的值y可用下面程序计算.
y=polyval(a,x,m)
线性:m=1,
二次:m=2,
…
polyfit的输出是一个多项式系数的行向量。为了计算在xi数据点的多项式值,调用MATLAB的函数polyval。
例:
x=0:0.1:1;
y=[-0.447 1.978 3.28 6.16 7.08 7.34 7.66 9.56 9.48 9.30
11.2];
A=polyfit(x,y,2)
Z=polyval(A,x);
Plot(x,y,’r*’,x,z,’b’)
一般的曲线拟合:p=curvefit(‘Fun’,p0,xdata,ydata)
其中Fun表示函数Fun(p,data)的M函数文件,p0表示函数的初值.curvefit()命令的求解问题形式是最小二乘解
若要求解点x处的函数值可用程序f=Fun(p,x)计算.
2、函数插值
一维插值:
interp1(x,y,cx,’method’)
一维插值:
interp