nlsq & nnnlsq Least squares

Robust & non negative non linear least squares: nlsq & nnnlsq

You are now following this Submission

Robust & non negative non linear least squares: nlsq & nnnlsq
nlsq Robust non linear least squares
uses singular value decomposition and attempts
a solution to singular and near singular cases.
nnnlsq Robust non negative non linear least squares
uses robust version of nnls and constrains parameters
to be positive.
Both can be used with regularisation techniques to solve
ill conditioned problems.
p=nlsq(@fnct,data,p0) % robust non linear least squares
p=nnnlsq(@fnct,data,p0) % non linear non negative least squares
where
err=fnct(p,data) calculates a vector of error terms for parameters p,
optionally [err,der]=fnct(p,data) for given derivatives.
data contains all the values needed by fnct to calculate
the error terms s. Can be any type but typically a struct.
p0 is an initial value for the parameters p. Note for singular
cases fitted parameters p may vary with p0

For regularisation append in fnct a small multiple of p to the error
terms calculated.

See nlsqdemo.html, doc nlsq, doc nnnlsq

Includes:
38003 nnls - Non negative least squares
38881 Optional function arguments

Will run ok in earlier Matlab versions.

Cite As

Bill Whiten (2026). nlsq & nnnlsq Least squares (https://au.mathworks.com/matlabcentral/fileexchange/52616-nlsq-nnnlsq-least-squares), MATLAB Central File Exchange. Retrieved .

General Information

MATLAB Release Compatibility

  • Compatible with any release

Platform Compatibility

  • Windows
  • macOS
  • Linux
Version Published Release Notes Action
1.0.0.0

Added image
Signal processing toolbox not required