lsqnonlin doesn't work in my case

2 次查看(过去 30 天)
21did21
21did21 2011-11-3
dear all,
i have a function "calculs" which have in input a vector of parameters [a,b,c] and in output a residu vector like [1e-9 5e-8 1e-7 5e-4 0.001]
i want to minimize this residu vector, so i use lsqnonlin like this:
A=0.21;
B=5100;
C=-0.07;
parameters=[A B C];
lb=[0.13 3500 -1.5];
ub=[2.6 8000 5];
options = optimset('Display','iter','MaxIter',40,'TolX',1e-10,'TolFun',1e-10)
[x,resnorm] = lsqnonlin(@calculs,parameters,lb,ub,options);
when i run this "lsqnonlin" do just 1 iteration and give this "resnorm" without minimization: 0.000757
and the output in matlab is:
Optimization completed: The final point is the initial point.
The first-order optimality measure, 0.000000e+000, is less than
options.TolFun = 1.000000e-008.
Optimization Metric Options
relative first-order optimality = 0.00e+000 TolFun = 1e-008 (selected)
but it's not the minimum! to have a proof i vary a little A,B,C and i find a "resnorm" like: 0.000607
so with lsqnonlin don't minimize my function ??
thanks for your help

回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Problem-Based Optimization Setup 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by