![]() |
Octopus
|
--------------— gemm ---------------— performs one of the matrix-matrix operations More...
--------------— gemm ---------------— performs one of the matrix-matrix operations
\[ C := \alpha op( A ) op( B ) + \beta C, \]
where op(X) is one of
\[ op( X ) = X \mbox{ or } op( X ) = X^T, \]
\( \alpha \) and \( \beta \) are scalars, and A, B and C are matrices, with op(A) an \( m \times k \) matrix, op(B) a \( k \times n \) matrix and C an \( m \times n \)m matrix.
Public Member Functions | |
| subroutine | dgemm (transa, transb, m, n, k, alpha, a, lda, b, ldb, beta, c, ldc) |
| subroutine | zgemm (transa, transb, m, n, k, alpha, a, lda, b, ldb, beta, c, ldc) |
| subroutine | zdgemm (transa, transb, m, n, k, alpha, a, lda, b, ldb, beta, c, ldc) |
| A real matrix multiplying a complex one, added to a complex matrix. More... | |
| subroutine blas_oct_m::blas_gemm::dgemm | ( | character(1), intent(in) | transa, |
| character(1), intent(in) | transb, | ||
| integer, intent(in) | m, | ||
| integer, intent(in) | n, | ||
| integer, intent(in) | k, | ||
| real(real64), intent(in) | alpha, | ||
| real(real64), intent(in) | a, | ||
| integer, intent(in) | lda, | ||
| real(real64), intent(in) | b, | ||
| integer, intent(in) | ldb, | ||
| real(real64), intent(in) | beta, | ||
| real(real64), intent(inout) | c, | ||
| integer, intent(in) | ldc | ||
| ) |
| subroutine blas_oct_m::blas_gemm::zgemm | ( | character(1), intent(in) | transa, |
| character(1), intent(in) | transb, | ||
| integer, intent(in) | m, | ||
| integer, intent(in) | n, | ||
| integer, intent(in) | k, | ||
| complex(real64), intent(in) | alpha, | ||
| complex(real64), intent(in) | a, | ||
| integer, intent(in) | lda, | ||
| complex(real64), intent(in) | b, | ||
| integer, intent(in) | ldb, | ||
| complex(real64), intent(in) | beta, | ||
| complex(real64), intent(inout) | c, | ||
| integer, intent(in) | ldc | ||
| ) |
| subroutine blas_oct_m::blas_gemm::zdgemm | ( | character(1), intent(in) | transa, |
| character(1), intent(in) | transb, | ||
| integer, intent(in) | m, | ||
| integer, intent(in) | n, | ||
| integer, intent(in) | k, | ||
| real(real64), intent(in) | alpha, | ||
| complex(real64), intent(in), target | a, | ||
| integer, intent(in) | lda, | ||
| real(real64), intent(in) | b, | ||
| integer, intent(in) | ldb, | ||
| real(real64), intent(in) | beta, | ||
| complex(real64), intent(inout), target | c, | ||
| integer, intent(in) | ldc | ||
| ) |
A real matrix multiplying a complex one, added to a complex matrix.
A real matrix multiplies the real and imaginary parts alike, so this is dgemm over matrices with twice the rows, which the caller accounts for in m, lda and ldc. As above, a and c are reinterpreted rather than copied.
| [in] | a | a(lda,ka) ka=k if transa='N' or 'n'; m otherwise |
| [in] | b | b(ldb,kb) kb=k if transa='N' or 'n'; m otherwise |
| [in,out] | c | c(ldc,n) |