jburkardt

MINPACK\ Least Squares Minimization {#minpack-least-squares-minimization align=”center”} ==========================


MINPACK is a C++ library which solves systems of nonlinear equations, or carries out the least squares minimization of the residual of a set of linear or nonlinear equations.

MINPACK includes software for solving nonlinear equations and nonlinear least squares problems. Five algorithmic paths each include a core subroutine and an easy-to-use driver. The algorithms proceed either from an analytic specification of the Jacobian matrix or directly from the problem functions. The paths include facilities for systems of equations with a banded Jacobian matrix, for least squares problems with a large amount of data, and for checking the consistency of the Jacobian matrix with the functions.

Given a set of N nonlinear equations in N unknowns, F(X) = 0, Powell’s method is used to seek a solution X.

Given a set of M nonlinear functions in N unknowns, F(X), the Levenberg-Marquardt method is used to seek an X which minimizes the L2 norm of the residual ||F(X)||.

The user supplies a subroutine to evaluate the nonlinear function; the jacobian matrix dFi(X)/dXj may also be supplied by the user in a subroutine, or approximated by finite differences.

License: {#license align=”center”}

This code may freely be copied, modified, and used for any purpose.

Languages: {#languages align=”center”}

MINPACK is available in a C++ version and a FORTRAN90 version.

LLSQ, a C++ library which solves the simple linear least squares problem of finding the formula of a straight line y=a*x+b which minimizes the root-mean-square error to a set of N data points.

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

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

Reference: {#reference align=”center”}

  1. Jorge More, Burton Garbow, Kenneth Hillstrom,\ User Guide for MINPACK-1,\ Technical Report ANL-80-74,\ Argonne National Laboratory, 1980.
  2. Jorge More, Danny Sorenson, Burton Garbow, Kenneth Hillstrom,\ The MINPACK Project,\ in Sources and Development of Mathematical Software,\ edited by Wayne Cowell,\ Prentice-Hall, 1984,\ ISBN: 0-13-823501-5,\ LC: QA76.95.S68.

Source Code: {#source-code align=”center”}

Examples and Tests: {#examples-and-tests align=”center”}

List of Routines: {#list-of-routines align=”center”}

You can go up one level to the C++ source codes.


Last revised on 06 April 2010.