[Top][All Lists]

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

Re: lsqnonlin and nonlin_residmin

From: Olaf Till
Subject: Re: lsqnonlin and nonlin_residmin
Date: Mon, 10 Aug 2015 21:30:03 +0200
User-agent: Mutt/1.5.23 (2014-03-12)

On Mon, Aug 10, 2015 at 03:05:31PM +0100, Asma Afzal wrote:
> I have added a test and demo block for lsqnonlin and lsqcurvefit
> [1-2]. Are there any further changes required before integration to
> optim?

Chiefly option handling and option documentation, these seem not yet
complete to me (only looked at lsqnonlin). In particular, there is no
option documentation (of applicable optimset options).

- You provide some Matlab-lsqnonlin-specific options, but not
  all. What will you tell the user about this?

- You document exitflag==-1 as 'Output function terminated the
  algorithm.' but the Matlab option 'OutputFcn' is not mapped (to
  'user_interaction'), so it has no effect.

- Currently you pass all set options to nonlin_residmin, even those
  that Matlabs lsqnonlin doesn't even know of. I don't think that's
  good, since nonlin_residmin options might conflict with Matlab
  options (as already is the case for "lbound" and "ubound"). I'd say
  rather make a new settings structure and populate it only with the
  options corresponding (e.g. by mapping) to those which Matlabs
  lsqnonlin supports.
- Is it worth trying to map further Matlab-lsqnonlin-specific options
  to nonlin_residmin options?

A few further minor things to be changed:

- docs, third output: not EuclidianNorm, just f(x)

- 'sumsq (residmin_out{2})' is better than 'sum (residmin_out{2} .^  2)'

- There is no exitflag of '1'.

> Should I submit a patchset on savannah?

Why this if you already have a VCS?

If the functions are ready, or require only minor changes which I can
do while reviewing, I'll adjust the optim packages info and commit the
functions for you.


public key id EAFE0591, e.g. on x-hkp://pool.sks-keyservers.net

Attachment: signature.asc
Description: Digital signature

reply via email to

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