lsqnonlin doesn't work in my case

2 Ansichten (letzte 30 Tage)
21did21
21did21 am 3 Nov. 2011
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

Antworten (0)

Kategorien

Mehr zu Nonlinear Optimization finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by