BLAS3_D
Level 3 Basic Linear Algebra Subprograms
BLAS3_D
a FORTRAN90 library which
constitutes the Level 3 Basic Linear Algebra Subprograms (BLAS),
for matrix-matrix operations
using double precision real arithmetic.
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.
Licensing:
The computer code and data files described and made available on this web page
are distributed under
the GNU LGPL license.
Languages:
BLAS3_D is available in
a C version and
a C++ 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.
LAPACK_EXAMPLES,
a FORTRAN90 program which
demonstrates the use of the LAPACK linear algebra library.
Reference:
-
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.
-
Thomas Coleman, Charles vanLoan,
Handbook for Matrix Computations,
SIAM, 1988,
ISBN13: 978-0-898712-27-8,
LC: QA188.C65.
-
Jack Dongarra, Jim Bunch, Cleve Moler, Pete Stewart,
LINPACK User's Guide,
SIAM, 1979,
ISBN13: 978-0-898711-72-1,
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 308-323.
Source Code:
Examples and Tests:
List of Routines:
-
DGEMM C:=alpha*A*B+beta*C, A, B, C rectangular.
-
DSYMM C:=alpha*A*B+beta*C, A symmetric, B and C rectangular.
-
DSYR2K C:=alpha*A*TRANSPOSE(B)+alpha*B*TRANSPOSE(A)+beta*C, C symmetric.
-
DSYRK C:=alpha*A*TRANSPOSE(A)+beta*C, C symmetric.
-
DTRMM B:=A*B or B:=B*A, A triangular, B rectangular.
-
DTRSM B:=INVERSE(A)*C or B:=C*INVERSE(A), B and C rectangular, A triangular.
You can go up one level to
the FORTRAN90 source codes.
Last revised on 18 January 2014.