小弟最近刚学习用matlab拟合参数,但编写完运行显示Initial point is a local minimum.得到的k值为k0,求给位大神给指点一下怎么解决这种问题!急求,新人啥也不懂啊!先在此谢过啦!
function zixie
clear all;
clc;
data=[0 8.32 0;
1 7.37 0.211;
2 6.74 0.738;
3 5.92 1.106;
4 5.68 1.296;
5 5.01 1.583;
6 6.09 1.364;
8 5.35 1.84;
10 4.99 2];
x0=[8.32 0];
k0=[10 10 10 10 10 ];
lb=[0 0 0 0 0];
ub=[+inf +inf +inf +inf +inf];
yexp=data(:,2:3);
[k,resnorm,residual,exitflag,output,lambda,jacobin]=lsqnonlin(@objFunc1,k0,lb,ub,[],x0,yexp)
fprintf('\tk1=%.4\n',k(1)),
fprintf('\tk2=%.4\n',k(2)),
fprintf('\tk3=%.4\n',k(3)),
fprintf('\tk4=%.4\n',k(4)),
fprintf('\tk5=%.4\n',k(5))