lsqnonlin doesn't work in my case
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
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 Kommentare
Antworten (0)
Siehe auch
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!