A Matlab Toolbox for

Sparse Least Squares problems

This toolbox in MatLab is a set of rutines for solving sparse least square problem;

min ||Ax-b||2

the constrained least squares problem with non negativity constraints;

min ||Ax-b||2  s.t.  0 < x

and problems with box constraints,

min ||Ax-b||2  s.t.  l < x < u

The toolbox consists of the following routines:

Click on a name to get more information

Sparse factorisation


sqr Sparse multifrontal QR factorisation.
sqr2 Sparse multifrontal QR factorisation.

Sparse Least squares solvers


csne Solve sparse linear least squares problem by the corrected semi normal equations. R'Rx=A'b with one step of itertive refinement.
qls Solve sparse linear least squares problem by QR factorization.
sbls Solve linear least squares with box constraints by an interior point method.
sbls2 Solve linear least squares with box constraints by an active set method.
snnls Solve sparse linear least squarest problem with nonnegativity constraints by an active set method.

Test generators


sblsgen Generate random sparse least square test problems with box constraints.
quadres Calculate a residual using quadruple precision. Must be compiled with a C compiler.

To get the code


Click here for the MATLAB V4 version (tar)
Click here for the MATLAB V5 version (tar)

New version 2.1 of the sparse QR factorization routine sqr2! Click here for sqr2.tar (sqr.tar.gz)

Individual files for MATLAB V5. (observe that there are some dependencies between the different m-files)
Click here for README
Click here for quadres.m
Click here for quadres.c
Click here for sbls.m
Click here for sbls2.m
Click here for snnls.m
Click here for qls.m
Click here for sqr.m
Click here for sqrA.m
Click here for sqrB.m
Click here for amalg.m
Click here for cne.m
Click here for csne.m

For more information, please email to: Mikael Adlers, Åke Björck or Pontus Matstoms