lawson


lawson, a FORTRAN77 code which solves least squares problems, by Charles Lawson, Richard Hanson,

The most common least squares problems considers an overdetermined M by N linear system A*X=B. A least squares solution X is sought which has the property that, although it generally is not a solution of the system, it is the best approximation to a solution, in the sense that it minimizes the L2 norm of the residual R=A*X-B.

In some cases, a unique solution to the system A*X=B will exist, and in that case the least squares solution will coincide with what is ordinarily meant by a solution.

In underdetermined cases, where multiple solutions exist, the least squares solution is usually taken to be that solution X which has minimum L2 norm, that is, which minimizes ||X||.

The original FORTRAN77 source code is available through NETLIB at
https://www.netlib.org/lawson-hanson/index.html.

Licensing:

The computer code and data files described and made available on this web page are distributed under the GNU LGPL license.

Languages:

lawson is available in a FORTRAN77 version and a FORTRAN90 version.

Related Data and Programs:

lawson_test

brent, a FORTRAN77 library which contains Richard Brent's routines for finding the zero, local minimizer, or global minimizer of a scalar function of a scalar argument, without the use of derivative information.

BVLS, a FORTRAN90 library which applies least squares methods to solve a linear system for which lower and upper constraints may have been placed on every variable.

DQED, a FORTRAN77 library which solves constrained least squares problems.

NL2SOL, a FORTRAN77 library which implements an adaptive nonlinear least-squares algorithm.

PRAXIS, a FORTRAN77 library which minimizes a scalar function of several variables.

QR_SOLVE, a FORTRAN77 library which computes the least squares solution of a linear system A*x=b.

TEST_LS, a FORTRAN77 library which implements linear least squares test problems of the form A*x=b.

TOMS581, a FORTRAN77 library which implements an improved algorithm for computing the singular value decomposition (SVD) of a rectangular matrix; this is ACM TOMS algorithm 571, by Tony Chan.

TOMS611, a FORTRAN77 library which seeks the minimizer of a scalar functional of multiple variables.

Reference:

  1. Gene Golub, Christian Reinsch,
    Singular Value Decomposition and Least Squares Solutions,
    Numerische Mathematik,
    Volume 14, Number 5, April 1970, pages 403-420.
  2. Charles Lawson, Richard Hanson,
    Solving Least Squares Problems,
    Revised edition,
    SIAM, 1995,
    ISBN: 0898713560,
    LC: QA275.L38.

Source Code:


Last revised on 18 October 2023.