help-octave
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[leasqr] simple fit does not converge


From: John W. Eaton
Subject: [leasqr] simple fit does not converge
Date: Tue, 25 Jan 2011 18:12:52 -0500

On 25-Jan-2011, Martijn wrote:

| I am fitting a dispersion function (the Sellmeier equation) to
| tablulated refractive index data but leasqr.m does not converge. I am
| able to fit e.g. a sine to a data set, so leasqr does work.
| 
| After reduction to the bare essentials my code looks like:
| 
| 
| E=0.5:.05:6;
| E=E(:);
| Ntab = sqrt(GetSopraDielFunc(E, 'bk7'));
| f = @(E, p) sqrt(1+p(1)./(1-p(2)*E.^2/1.54));
| p0 = [1.25, .011];
| [Nslm, p, convg, niter] = leasqr(E, Ntab, p0, f);
| plot(E, [Ntab, Nslm], 'linewidth', 2)
| 
| The strange thing is that not only the covergence is not achieved, but p
| does not differ from p0, indicating something is going really wrong.
| 
| The initial estimate is pretty good as can be seen by
| plot(E, Ntab, E, f(E, [1.25, 0.011])
| 
| What's wrong here? Is it possible to show the intermediate values of p?
| Where is leasqrdemo gone? If I remember correctly, it did show the
| intermediate parameter values.

What is GetSopraDielFunc?

If you have a bug to report, please use the bug tracker.  You can find
a link to the tracker at http://www.octave.org/bugs.html along with
other information about how to submit a useful report.

jwe


reply via email to

[Prev in Thread] Current Thread [Next in Thread]