LINPACK_D
Linear Algebra Library
Double Precision Real
LINPACK_D
is a FORTRAN90 library which
solves systems of linear
equations for a variety of matrix types and storage modes.
LINPACK has officially been superseded by the
LAPACK library. The LAPACK
library uses more modern algorithms and code structure. However,
the LAPACK library can be extraordinarily complex; what is done
in a single LINPACK routine may correspond to 10 or 20 utility
routines in LAPACK. This is fine if you treat LAPACK as a black
box. But if you wish to learn how the algorithm works, or
to adapt it, or to convert the code to another language, this
is a real drawback. This is one reason I still keep a copy
of LINPACK around.
Versions of LINPACK in various arithmetic precisions are available
through the NETLIB web site.
Licensing:
The computer code and data files described and made available on this web page
are distributed under
the GNU LGPL license.
Languages:
LINPACK_D is available in
a C version and
a C++ version and
a FORTRAN90 version and
a MATLAB version and
a Python version.
Related Data and Programs:
BLAS1_D,
a FORTRAN90 library which
contains basic linear algebra routines for vectorvector operations,
using double precision real arithmetic.
CONDITION,
a FORTRAN90 library which
implements methods of computing or estimating the condition number
of a matrix.
GEQP3,
a FORTRAN90 library which
contains the portion of the LAPACK library that carries out the
QR factorization, with column pivoting, of an M by N rectangular matrix,
with N <= M.
LAPACK_EXAMPLES,
a FORTRAN90 program which
demonstrates the use of the LAPACK linear algebra library.
LINPACK_BENCH,
a FORTRAN90 program which
is a benchmark which measures the time
taken by LINPACK to solve a particular linear system.
LINPACK_C,
a FORTRAN90 library which
is a version of LINPACK for single precision
complex arithmetic.
LINPACK_Q,
a FORTRAN90 library which
implements a few of the LINPACK library of linear solvers,
using quadruple precision.
LINPACK_S,
a FORTRAN90 library which
is a version of LINPACK for single precision
real arithmetic.
LINPACK_Z,
a FORTRAN90 library which
is a version of LINPACK for double precision
complex arithmetic.
NMS,
a FORTRAN90 library which
includes LINPACK.
QR_SOLVE,
a FORTRAN90 library which
computes the least squares solution of a linear system A*x=b.
SLATEC,
a FORTRAN90 library which
includes LINPACK.
SVD_DEMO,
a FORTRAN90 program which
demonstrates the singular value decomposition for a simple example.
TEST_MAT,
a FORTRAN90 library which
defines test matrices, some of
which have known determinants, eigenvalues and eigenvectors,
inverses and so on.
TOEPLITZ_CHOLESKY,
a FORTRAN90 library which
computes the Cholesky factorization of a nonnegative definite symmetric
Toeplitz matrix.
Reference:

Jack Dongarra, Jim Bunch, Cleve Moler, Pete Stewart,
LINPACK User's Guide,
SIAM, 1979,
ISBN13: 9780898711721,
LC: QA214.L56.

Charles Lawson, Richard Hanson, David Kincaid, Fred Krogh,
Algorithm 539,
Basic Linear Algebra Subprograms for Fortran Usage,
ACM Transactions on Mathematical Software,
Volume 5, Number 3, September 1979, pages 308323.
Source Code:
Examples and Tests:
List of Routines:

DCHDC computes the Cholesky decomposition of a positive definite matrix.

DCHDD downdates an augmented Cholesky decomposition.

DCHEX updates the Cholesky factorization of a positive definite matrix.

DCHUD updates an augmented Cholesky decomposition.

DGBCO factors a double precision band matrix and estimates its condition.

DGBDI computes the determinant of a band matrix factored by DGBCO or DGBFA.

DGBFA factors a double precision band matrix by elimination.

DGBSL solves a double precision banded system factored by DGBCO or DGBFA.

DGECO factors a double precision matrix and estimates its condition number.

DGEDI computes the determinant and inverse of a matrix factored by DGECO or DGEFA.

DGEFA factors a double precision matrix.

DGESL solves a double precision general linear system A * X = B.

DGTSL solves a general tridiagonal linear system.

DPBCO factors a double precision symmetric positive definite banded matrix.

DPBDI computes the determinant of a matrix factored by DPBCO or DPBFA.

DPBFA factors a double precision symmetric positive definite matrix stored in band form.

DPBSL solves a double precision symmetric positive definite band factored by DPBCO or DPBFA.

DPOCO factors a double precision symmetric positive definite matrix and estimates its condition.

DPODI computes the determinant and inverse of a certain matrix.

DPOFA factors a double precision symmetric positive definite matrix.

DPOSL solves a linear system factored by DPOCO or DPOFA.

DPPCO factors a double precision symmetric positive definite matrix in packed form.

DPPDI computes the determinant and inverse of a matrix factored by DPPCO or DPPFA.

DPPFA factors a double precision symmetric positive definite matrix in packed form.

DPPSL solves a double precision symmetric positive definite system factored by DPPCO or DPPFA.

DPTSL solves a positive definite tridiagonal linear system.

DQRDC computes the QR factorization of a double precision rectangular matrix.

DQRSL computes transformations, projections, and least squares solutions.

DSICO factors a double precision symmetric matrix and estimates its condition.

DSIDI computes the determinant, inertia and inverse of a double precision symmetric matrix.

DSIFA factors a double precision symmetric matrix.

DSISL solves a double precision symmetric system factored by DSIFA.

DSPCO factors a double precision symmetric matrix stored in packed form.

DSPDI computes the determinant, inertia and inverse of a double precision symmetric matrix.

DSPFA factors a double precision symmetric matrix stored in packed form.

DSPSL solves the double precision symmetric system factored by DSPFA.

DSVDC computes the singular value decomposition of a double precision rectangular matrix.

DTRCO estimates the condition of a double precision triangular matrix.

DTRDI computes the determinant and inverse of a double precision triangular matrix.

DTRSL solves triangular linear systems.
You can go up one level to
the FORTRAN90 source codes.
Last revised on 23 June 2009.