nl2sol, a FORTRAN77 code which implements an adaptive nonlinear least-squares algorithm, by John Dennis, David Gay, Roy Welsch.
The code assumes that there are NVAR variables X, and MEQN nonlinear "residual functions" F(X), and that the task is to find a solution X which minimizes the Euclidean norm of ||F(X)||.
The code is ACM TOMS algorithm 573. The original, true, correct version of ACM TOMS 573 is available in the TOMS subdirectory of the NETLIB web site.
The computer code and data files described and made available on this web page are distributed under the GNU LGPL license.
nl2sol is available in 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.
compass_search, a FORTRAN77 library which seeks the minimizer of a scalar function of several variables using compass search, a direct search algorithm that does not use derivatives.
DQED, a FORTRAN90 library which solves constrained least squares problems.
LAWSON, a FORTRAN77 library which contains routines for solving least squares problems and singular value decompositions, by Lawson and Hanson.
MACHINE, a FORTRAN77 library which supplies the value of certain machine arithmetic constants needed by NL2SOL.
MINPACK, a FORTRAN90 library which carries out the least squares minimization of the residual of a set of linear or nonlinear equations.
PRAXIS, a FORTRAN77 library which minimizes a scalar function of several variables.
TEST_OPT, a FORTRAN90 library which defines test problems requiring the minimization of a scalar function of several variables.
TOMS611, a FORTRAN90 library which can be used to seek the minimizer of a scalar functional of multiple variables.
John Dennis, David Gay, Roy Welsch