matlab数值分析离散数据拟合相关函数
(2010-11-15 12:55:39)
标签:
it |
分类: 软件工程 |
转载自http://blog.163.com/caoyaqiang0410@126/blog/static/16778872320102296522330/
polyfit() 求离散数据的多项式拟合
命令格式: a=polyfit(x,y,n),x,y 是离散数据自变量和因变量构成的向量, n 为拟合多项式的次数,输出项 a 为拟合多项式的系数,系数由高到低排列。
polyval() 求多项式在某一点出的函数值
命令格式: y=polyval(p,x) 其中 p 为多项式, y 是拟合多项式在点 x 处的值。
例子:某实验测得数据,求数据表的最小二乘拟合函数
X -2 -1 0 1 2 3 4
Y 19.5 10.2 3.5 4.8 12.4 26.1 43.9
x=[-2 -1 0 1 2 3 4 ];
y=[19.5 10.2 3.5 4.8 12.4 26.1 43.9 ];
a=polyfit(x,y,2);
xx=-2:0.1:4;
yy=polyval(a,xx);
plot(xx,yy,x,y, '*' )
lsqcurvefit() 非线性最小二乘拟合函数
命令格式: x=lsqcurvefit(fun,x0,xdata,ydata)
Fun 是要拟合的非线性函数, x0 是初始参数向量, xdata , ydata 是拟合点的数据
例子 求一形如 y=aexp(bx) 的经验公式,使他和下面的数据拟合
Xi 1 2 3 4
Yi 7 11 17 27
x=[12 3 4];
y=[711 17 27];
f=inline( 'a(1)*exp(a(2).*x)' , 'a' , 'x' );
a=lsqcurvefit(f,[40.4],x,y)
lsqnonlin() 非线性最小二乘拟合函数
命令格式: x=lsqnonlin(fun,x0)
其中 fun 的与 lsqcurvefit 中的 fun 有差别
nlinfit() 非线性回归函数,可以用于求非线性最小二乘问题
命令格式 :beta=nlinfit(x,y,fun,beta0)
Xy 是离散数据自变量与因变量构成的向量, fun 是 被回归(拟合)的函数, beta0 是初始参数向量
例子 求一形如 y=aexp(bx) 的经验公式,使他和下面的数据拟合
Xi 1 2 3 4
Yi 7 11 17 27
x=[12 3 4];
y=[711 17 27];
f=inline( 'a(1)*exp(a(2).*x)' , 'a' , 'x' );
a=nlinfit(x,y,f,[40.4])
polyfit()
命令格式:
polyval()
命令格式:
例子:某实验测得数据,求数据表的最小二乘拟合函数
X
Y
x=[-2
y=[
a=polyfit(x,y,2);
xx=-2:0.1:4;
yy=polyval(a,xx);
plot(xx,yy,x,y,
lsqcurvefit()
命令格式:
Fun
例子
Xi
Yi
x=[1
y=[7
f=inline(
a=lsqcurvefit(f,[4
lsqnonlin()
命令格式:
其中
nlinfit()
命令格式
Xy
例子
Xi
Yi
x=[1
y=[7
f=inline(
a=nlinfit(x,y,f,[4
前一篇:matlab数值分析插值相关函数