LINPACK
Linear Algebra Library


LINPACK is a library of FORTRAN90 routines, using single or double precision arithmetic in both real and complex modes, which can solve 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.

Copies of the LINPACK library are made available in single or double precision using real or complex arithmetic. For more information, refer to:

Related Data and Programs:

BLAS1 is a FORTRAN90 library which contains a set of routines for vector operations, which have been incorporated into LINPACK.

LAPACK is a more modern linear algebra package, which has replaced LINPACK.

LINPACK is also available in a C++ version and a FORTRAN77 version and a MATLAB version.

LINPACK_BENCH is a FORTRAN90 executable benchmark program which measures the time taken by LINPACK to solve a particular linear system.

LINPLUS is a FORTRAN90 library of routines to carry out some linear algebra operations on matrices stored in formats not handled by LINPACK.

NMS is a FORTRAN90 library which includes LINPACK.

PETSC is a scientific library for use in parallel computation, which includes an implementation of the LINPACK routines.

SLATEC is a FORTRAN90 library which includes LINPACK.

SVD_DEMO is an executable FORTRAN90 program which demonstrates the singular value decomposition for a simple example.

TEST_MAT is a FORTRAN90 library of routines which define test matrices, some of which have known determinants, eigenvalues and eigenvectors, inverses and so on.

Reference:

  1. Jack Dongarra, Jim Bunch, Cleve Moler, Pete Stewart,
    LINPACK User's Guide,
    SIAM, 1979,
    ISBN13: 978-0-898711-72-1,
    LC: QA214.L56.
  2. 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 308-323.

You can go up one level to the FORTRAN90 source codes.


Last revised on 28 March 2006.