What is lambda in lsqcurvefit?

3 views (last 30 days)
Prashant Govindarajan
Prashant Govindarajan on 18 Apr 2019
Edited: Matt J on 19 Apr 2019
lsqcurvefit returns the lambda values as a structure with fields lower and upper. But according to the Levenberg-Marquardt algorithm
,
where we have to specify the initial value of lambda, which is a scalar and it changes its value after each iteration.
Why is the lambda returned by the lsqcurvefit function having two vectors for upper and lower separately and why are they zeros in most of the cases?

Accepted Answer

Matt J
Matt J on 18 Apr 2019
Edited: Matt J on 18 Apr 2019
The lambda returned by lsqcurvefit are not Levenberg-Marquardt parameters. They are the Lagrange multiplers at the solution. If the Lagrange multipliers are zero most of the time, it is probably because your solutions tend not to lie at the upper and lower boundaries.
  2 Comments
Prashant Govindarajan
Prashant Govindarajan on 19 Apr 2019
Edited: Prashant Govindarajan on 19 Apr 2019
So is there any way to obtain the parameter λ (damping parameter) from the lsqcurvefit function? I require it to calculate the standard errors of the estimated parameters.
Matt J
Matt J on 19 Apr 2019
Edited: Matt J on 19 Apr 2019
You can use the OutputFcn option to get it, or display it to the screen (to some precision) by settings the Display option to 'iter', as described here,

Sign in to comment.

More Answers (0)

Categories

Find more on Interpolation in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!