Linear Solver for Double Dimensioned Arrays

SOLVE is a FORTRAN77 library which solves a linear system of equations A*x=b using Gauss elimination.

There are many automatic ways to solve linear systems, as in MATLAB, and sophisticated packages such as LAPACK. However, this simpler set of routines may have some uses for students, beginners and those who need a quick and simple solver that can be replaced later if it turns out to be inadequate.

This library is useful because:


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


SOLVE is available in a C version and a C++ version and a FORTRAN77 version and a FORTRAN90 version and a MATLAB version.

Related Data and Programs:

LINPACK, a FORTRAN77 library which solves linear systems for a variety of matrix storage schemes, real or complex arithmetic, and single or double precision. It includes a routine for computing the singular value decomposition (SVD) of a rectangular matrix. The original version of this library is by Jack Dongarra, Jim Bunch, Cleve Moler, Pete Stewart.

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

R8LIB, a FORTRAN77 library which contains many utility routines using double precision real (R8) arithmetic.

Source Code:

Examples and Tests:

List of Routines:

You can go up one level to the FORTRAN77source codes.

Last revised on 29 May 2014.