LINPACK
Linear Algebra Library


LINPACK is a library of C++ 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 the BLAS Level 1 library of routines for vector operations, which are incorporated into LINPACK.

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

LINPACK is also available in a FORTRAN77 version and a FORTRAN90 version and a MATLAB version.

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

LINPLUS is a set of C++ routines similar to LINPACK, but for some more unusual matrix formats.

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.

TEST_MAT is a library of FORTRAN90 routines defining matrices with known inverses, determinants, eigenvalues 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 C++ source codes.


Last revised on 10 May 2006.