Linear Solver for Double Dimensioned Arrays

SOLVE is a FORTRAN90 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 FORTRAN90 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 FORTRAN90 library which computes the linear least squares (LLS) solution of a rectangular linear system A*x=b.

R8LIB, a FORTRAN90 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 FORTRAN90 source codes.

Last revised on Thu May 29 10:01:48 2014