MINPACK is a FORTRAN77 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.
MINPACK is available in a C++ version and a FORTRAN77 version and a FORTRAN90 version.
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.
SLATEC, a FORTRAN90 library which includes MINPACK.
TEST_LS, a FORTRAN77 library which implements linear least squares test problems of the form A*x=b.
TEST_OPT, a FORTRAN90 library which defines test problems for the minimization of a scalar function of several variables.
TOMS611, a FORTRAN77 library which seeks the minimizer of a scalar functional of multiple variables.
You can go up one level to the FORTRAN77 source codes.