Basic Linear Algebra Subprograms
Level 1
Double Precision Real Arithmetic

BLAS1_D a FORTRAN90 library which constitutes the Level 1 Basic Linear Algebra Subprograms (BLAS), for vector-vector operations using double precision real arithmetic, by Charles Lawson, Richard Hanson, David Kincaid, Fred Krogh.

The BLAS are a small core library of linear algebra utilities, which can be highly optimized for various architectures. Software that relies on the BLAS is thus highly portable, and will typically run very efficiently.

The Level 1 BLAS are primarily for use in vector operations. In certain cases, they may also be used to operate on the rows or columns of a two-dimensional array.


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


BLAS1_D 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:

BLAS, a FORTRAN90 library which contains the Basic Linear Algebra Subprograms (BLAS) for level 1 (vector-vector operations), level 2 (matrix-vector operations) and level 3 (matrix-matrix operations), for single precision real arithmetic, double precision real arithmetic, single precision complex arithmetic, and double precision complex arithmetic.

GSL, a C++ library which includes an implementation of the BLAS1 routines.

LAPACK_EXAMPLES, a FORTRAN90 program which demonstrates the use of the LAPACK linear algebra library.

LINPACK_D, a FORTRAN90 library which is a linear algebra package using double precision real arithmetic.

NMS, a FORTRAN90 library which includes BLAS1.

SLATEC, a FORTRAN90 library which includes BLAS1.


Original FORTRAN77 version by Charles Lawson, Richard Hanson, David Kincaid, Fred Krogh. FORTRAN90 version by John Burkardt.


  1. Edward Anderson, Zhaojun Bai, Christian Bischof, Susan Blackford, James Demmel, Jack Dongarra, Jeremy Du Croz, Anne Greenbaum, Sven Hammarling, Alan McKenney, Danny Sorensen,
    LAPACK User's Guide,
    Third Edition,
    SIAM, 1999,
    ISBN: 0898714478,
    LC: QA76.73.F25L36.
  2. Thomas Coleman, Charles vanLoan,
    Handbook for Matrix Computations,
    SIAM, 1988,
    ISBN13: 978-0-898712-27-8,
    LC: QA188.C65.
  3. Jack Dongarra, Jim Bunch, Cleve Moler, Pete Stewart,
    LINPACK User's Guide,
    SIAM, 1979,
    ISBN13: 978-0-898711-72-1,
    LC: QA214.L56.
  4. 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.

Source Code:

Examples and Tests:

List of Routines:

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

Last revised on 28 March 2007.