本文讲解lsqcurvefit函数的基本用法:
一.lsqcurvefit函数的简单使用格式:
x = lsqcurvefit(fun,x0,xdata,ydata);
[x,resnorm] = lsqcurvefit(fun,x0,xdata,ydata),
lsqcurvefit函数主要应用于非线性优化问题
lsqcurvefit函数优化说明:
输入xdata(数组),在fun函数中运算得出结果,与ydata(数组)进行比对,调整x的取值,使最后的x取值满足最小二乘法意义下的残差平方和最小。
二.示例:
x0=[2 3];
% x0 初始值
xdata=1:6;
ydata=[2 2.5 3 5 6 10 ];
% xdata,ydata 拟合数据
fun=@(x,xdata)x(1)*xdata.^2+x(2)*xdata;
% fun 拟合函数:y=a*x^2+b*x;
[x,resnorm]=lsqcurvefit(fun,x0,xdata,ydata);
% 曲线优化
plot(xdata,fun(x,xdata),xdata,ydata,'*');
%画出优化后的曲线
参考:
lsqcurvefit函数介绍- https://ww2.mathworks.cn/help/optim/ug/lsqcurvefit.html#buuhcjo-residual