hi everyone, I have one more question about nonlinear least squares fitting, I will use the example from GSL online manual. I copied it to my program and just changed the equation to
y = Ai(1-exp(-t/ti)) + Ap(1-exp(-t/tp)) with parameters Ai, Ap, ti, tp I set correct partial derivations too, there is no problem with this. if I let it be this way, everything works ok (I try few thousand iterations), each one converges to parameters I used to generate my data. But when I add some random noise to the source data, lets say only 1 percent of the value (values are from 400 to 600), solver cannot find solution (10 cases from 1000 tries) even when I give him nearly desired values as a starting guess. I traced the fitting proces and I have found that it is due its first iteration steps, when solver from near-ok initial guess makes some nonsense (parameter is set to 400 when generating equation, guess is 390 and after first iteration it is 1.xxE10). From this point, solver never returns to "way that converges to 400". I tried both solvers which use derivations gsl_multifit_fdfsolver_lmsder gsl_multifit_fdfsolver_lmder but they both produce same results. Is there any way to influence the iteration progress? Some borders for solver which cannot be passed? Or is it possible to choose some non-derivative solver (I have not found any type of gsl_multifit_fsolver) and will it be better? I will appreciate any idea.... best regards Petr Ent _______________________________________________ Help-gsl mailing list Help-gsl@gnu.org http://lists.gnu.org/mailman/listinfo/help-gsl