Search All of the Math Forum:
Views expressed in these public forums are not endorsed by
NCTM or The Math Forum.


Torsten
Posts:
1,631
Registered:
11/8/10


Re: Fitting an equation to data using the LevenbergMarquardt algorithm,
Posted:
Feb 19, 2013 10:46 AM


Nanna Pedersen <nannamp86@gmail.com> wrote in message <26f143b564884228b29a9161d5dda618@googlegroups.com>... > Hi everyone. > > I am using lsqcurvefit to fit a signalequation to some data. I am using the LevenbergMarqaurdt algorithm but would really like to put some boundary constraints on the output. The most important constraint is that all the output parameters are positive but I would like to constrain the values to certain ranges. > > lsqcurvefit does not accept boundary constraints for the LevenbergMarquardt algorithm, so do any of you have an idea how I can cheat lsqcurvefit to accept boundary conditions indirectly somehow or (even better): do any of you know of another implementation in matlab? > > Thank you! > > Best regards, Nanna
Instead of the parameter p handed to you in the function routine of lsqcurvefit, use p'=(lb+ub)/2 + sin(p)*(ublb)/2 in the evaluation of your residuals. Then p' ranges from lb to ub where lb is a lower bound and ub is an upper bound for the parameter you want to fit.
Best wishes Torsten.



