matlab-lsqcurvefit函数

lsqcurvefit函数(least-squares curve-fitting):用于最小二乘法求解非线性曲线拟合问题。即已知输入向量xdata和输出向量ydata,并且知道输入与输出的函数关系为ydata=F(x, xdata),但不知道系数向量x。

1.语法

x = lsqcurvefit(fun,x0,xdata,ydata)

从 x0 开始,求取合适的系数 x,使非线性函数 fun(x,xdata) 对数据 ydata 的拟合最佳(基于最小二乘指标)。ydata 必须与 fun 返回的向量(或矩阵)F 大小相同。

(1)fun:符号函数句柄,如果是以m文件的形式调用的时候,别忘记加@;
(2)x0:最开始预估的值(预拟合的未知参数的估计值)。即方程系数的预估值。
(3)xdata:已有的xdata.
(4)ydata:与xdata对应的ydata.

复杂一点的结构:x = lsqcurvefit(fun,x0,xdata,ydata,lb,ub,options) 使用 options 所指定的优化选项执行最小化。使用 optimoptions 可设置这些选项。如果不存在边界,则为 lb 和 ub 传递空矩阵。

算法选择:
默认的 ‘trust-region-reflective’ 算法,可以通过设置改为’levenberg-marquardt’ 算法:

options = optimoptions('lsqcurvefit','Algorithm','levenberg-marquardt');
lb = [];
ub = [];
x
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值