version 1.14, 2017/06/17 10:53:43
|
version 1.17, 2023/08/07 08:38:43
|
Line 97
|
Line 97
|
*> |
*> |
*> \param[in] A |
*> \param[in] A |
*> \verbatim |
*> \verbatim |
*> A is DOUBLE PRECISION array of DIMENSION ( LDA, ka ), where ka is |
*> A is DOUBLE PRECISION array, dimension ( LDA, ka ), where ka is |
*> k when TRANSA = 'N' or 'n', and is m otherwise. |
*> k when TRANSA = 'N' or 'n', and is m otherwise. |
*> Before entry with TRANSA = 'N' or 'n', the leading m by k |
*> Before entry with TRANSA = 'N' or 'n', the leading m by k |
*> part of the array A must contain the matrix A, otherwise |
*> part of the array A must contain the matrix A, otherwise |
Line 116
|
Line 116
|
*> |
*> |
*> \param[in] B |
*> \param[in] B |
*> \verbatim |
*> \verbatim |
*> B is DOUBLE PRECISION array of DIMENSION ( LDB, kb ), where kb is |
*> B is DOUBLE PRECISION array, dimension ( LDB, kb ), where kb is |
*> n when TRANSB = 'N' or 'n', and is k otherwise. |
*> n when TRANSB = 'N' or 'n', and is k otherwise. |
*> Before entry with TRANSB = 'N' or 'n', the leading k by n |
*> Before entry with TRANSB = 'N' or 'n', the leading k by n |
*> part of the array B must contain the matrix B, otherwise |
*> part of the array B must contain the matrix B, otherwise |
Line 142
|
Line 142
|
*> |
*> |
*> \param[in,out] C |
*> \param[in,out] C |
*> \verbatim |
*> \verbatim |
*> C is DOUBLE PRECISION array of DIMENSION ( LDC, n ). |
*> C is DOUBLE PRECISION array, dimension ( LDC, N ) |
*> Before entry, the leading m by n part of the array C must |
*> Before entry, the leading m by n part of the array C must |
*> contain the matrix C, except when beta is zero, in which |
*> contain the matrix C, except when beta is zero, in which |
*> case C need not be set on entry. |
*> case C need not be set on entry. |
Line 166
|
Line 166
|
*> \author Univ. of Colorado Denver |
*> \author Univ. of Colorado Denver |
*> \author NAG Ltd. |
*> \author NAG Ltd. |
* |
* |
*> \date December 2016 |
|
* |
|
*> \ingroup double_blas_level3 |
*> \ingroup double_blas_level3 |
* |
* |
*> \par Further Details: |
*> \par Further Details: |
Line 187
|
Line 185
|
* ===================================================================== |
* ===================================================================== |
SUBROUTINE DGEMM(TRANSA,TRANSB,M,N,K,ALPHA,A,LDA,B,LDB,BETA,C,LDC) |
SUBROUTINE DGEMM(TRANSA,TRANSB,M,N,K,ALPHA,A,LDA,B,LDB,BETA,C,LDC) |
* |
* |
* -- Reference BLAS level3 routine (version 3.7.0) -- |
* -- Reference BLAS level3 routine -- |
* -- Reference BLAS is a software package provided by Univ. of Tennessee, -- |
* -- Reference BLAS is a software package provided by Univ. of Tennessee, -- |
* -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..-- |
* -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..-- |
* December 2016 |
|
* |
* |
* .. Scalar Arguments .. |
* .. Scalar Arguments .. |
DOUBLE PRECISION ALPHA,BETA |
DOUBLE PRECISION ALPHA,BETA |
Line 215
|
Line 212
|
* .. |
* .. |
* .. Local Scalars .. |
* .. Local Scalars .. |
DOUBLE PRECISION TEMP |
DOUBLE PRECISION TEMP |
INTEGER I,INFO,J,L,NCOLA,NROWA,NROWB |
INTEGER I,INFO,J,L,NROWA,NROWB |
LOGICAL NOTA,NOTB |
LOGICAL NOTA,NOTB |
* .. |
* .. |
* .. Parameters .. |
* .. Parameters .. |
Line 224
|
Line 221
|
* .. |
* .. |
* |
* |
* Set NOTA and NOTB as true if A and B respectively are not |
* Set NOTA and NOTB as true if A and B respectively are not |
* transposed and set NROWA, NCOLA and NROWB as the number of rows |
* transposed and set NROWA and NROWB as the number of rows of A |
* and columns of A and the number of rows of B respectively. |
* and B respectively. |
* |
* |
NOTA = LSAME(TRANSA,'N') |
NOTA = LSAME(TRANSA,'N') |
NOTB = LSAME(TRANSB,'N') |
NOTB = LSAME(TRANSB,'N') |
IF (NOTA) THEN |
IF (NOTA) THEN |
NROWA = M |
NROWA = M |
NCOLA = K |
|
ELSE |
ELSE |
NROWA = K |
NROWA = K |
NCOLA = M |
|
END IF |
END IF |
IF (NOTB) THEN |
IF (NOTB) THEN |
NROWB = K |
NROWB = K |
Line 379
|
Line 374
|
* |
* |
RETURN |
RETURN |
* |
* |
* End of DGEMM . |
* End of DGEMM |
* |
* |
END |
END |