matlab-lsqcurvefit 函数
(least-squares curve-fitting):⽤于最⼩⼆乘法求解⾮线性曲线拟合问题。即已知输⼊向量xdata和输出向量ydata,并且知道输⼊与输出的函数关系为ydata=F(x, xdata),但不知道系数向量x。
1.语法
从 x0 开始,求取合适的系数 x,使⾮线性函数 fun(x,xdata) 对数据 ydata 的拟合最佳(基于最⼩⼆乘指标)。ydata 必须与 fun 返回的向量(或矩阵)F ⼤⼩相同。
(1)fun:符号函数句柄,如果是以m⽂件的形式调⽤的时候,别忘记加@;
(2)x0:最开始预估的值(预拟合的未知参数的估计值)。即⽅程系数的预估值。
n3
(3)xdata:已有的xdata.
sarcastic(4)ydata:与xdata对应的ydata.
2.测试x = lsqcurvefit (fun,x0,xdata,ydata )
1%test xdata = [0.9 1.5 13.8 19.8 24.1 28.2 35.2 60.3 74.6 81.3];ydata = [455.2 428.6 124.1 67.3 43.2 学习雷锋演讲稿
28.1 13.1 -0.4 -1.3 -1.5];fun = @(x,xdata )x (1)*exp (x (2)*xdata );x0 = [100,-1];x = lsqcurvefit (fun,x0,xdata,ydata )times = linspace (xdata (1),xdata (end ));plot (xdata,ydata,'ko',times,fun (x,times ),'b-')legend ('Data','Fitted exponential')title ('Data and Fitted Curve')1
2
wrap up
3
4
5
说服性演讲>preview6share
7
8口语培训
9
10
兼收并蓄
11
12hotel booking