DBLAS - Double Precision Basic Linear Algebra Subprograms
The DBLAS are the Double Precision version of the
BLAS, or Basic Linear Algebra Subprograms.
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 LINPACK and LAPACK linear algebra
libraries make extensive use of the BLAS.
-
Reference 1:
-
Dongarra, Moler, Bunch, Stewart,
LINPACK User's Guide,
SIAM, 1979.
-
Reference 2:
-
Lawson, Hanson, Kincaid and Krogh,
Basic Linear Algebra Subprograms for FORTRAN usage,
ACM Transactions on Mathematical Software,
Volume 5, Number 3, pages 308-323, 1979.
-
Reference 3:
-
Coleman and Van Loan,
Handbook for Matrix Computations,
Society for Industrial and Applied Mathematics,
3600 University City Science Center,
Philadelphia, PA 19104-2688.
Files you may copy include:
The Level 1 BLAS deal with vector - vector operations:
-
DASUM sums the absolute values of the entries of a vector.
-
DAXPY adds a constant times one vector to another.
-
DCOPY copies one real vector into another.
-
DDOT forms the dot product of two vectors.
-
DMACH computes real machine parameters.
-
DNRM2 computes the Euclidean norm of a vector.
-
DROT applies a plane rotation.
-
DROTG constructs a Givens plane rotation.
-
DROTM applies a modified Givens plane rotation.
-
DROTMG constructs a modified Givens plane rotation.
-
DSCAL scales a vector by a constant.
-
DSWAP interchanges two vectors.
-
IDAMAX finds the index of the vector element of maximum absolute value.
-
LSAME returns .TRUE. if CA is the same letter as CB regardless of case.
-
XERBLA is an error handler for the LAPACK routines.
The Level 2 BLAS deal with matrix - vector operations:
-
DGBMV SY:=alpha*A*SX+beta*SY, A a band matrix.
-
DGEMV SY:=alpha*A*SX+beta*SY, A a rectangular matrix.
-
DGER A:=A+alpha*SX*TRANSPOSE(SY), rank 1 update, A a rectangular matrix.
-
DMXPY SY:=SY+A*SX
-
DSBMV SY:=alpha*A*SX+beta*SY, A a symmetric band matrix.
-
DSPMV SY:=alpha*A*SX+beta*SY, A a packed symmetric matrix.
-
DSPR A:=A+alpha*SX*TRANSPOSE(SX), A a packed symmetric matrix.
-
DSPR2 A:=A+alpha*SX*TRANSPOSE(SY)+alpha*SY*TRANSPOSE(SX), A packed symmetric.
-
DSYMV SY:=alpha*A*SX+beta*SY, A a symmetric matrix.
-
DSYR A:=A+alpha*SX*TRANSPOSE(SX), A a symmetric matrix.
-
DSYR2 A:=A+alpha*SX*TRANSPOSE(SY)+alpha*SY*TRANSPOSE(SX), A a symmetric matrix.
-
DTBMV SX:=A*SX, A a triangular band matrix.
-
DTBSV SX:=INVERSE(A)*SX, A a triangular band matrix.
-
DTPMV SX:=A*SX, A a packed symmetric matrix.
-
DTPSV SX:=INVERSE(A)*SX, A a packed symmetric matrix.
-
DTRMV SX:=A*SX, A a triangular matrix.
-
DTRSV SX:=INVERSE(A)*SX, A a triangular matrix.
-
DXMPY SY:=SY+SX*A
The Level 3 BLAS deal with matrix - matrix operations:
-
DGEMM C:=alpha*A*B+beta*C, A, B, C rectangular.
-
DSYMM C:=alpha*A*B+beta*C, A symmetric, B and C rectangular.
-
DSYRK C:=alpha*A*TRANSPOSE(A)+beta*C, C symmetric.
-
DSYR2K C:=alpha*A*TRANSPOSE(B)+alpha*B*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.
Back to the FORTRAN software page.
Last revised on 27 March 2001.