{S,D,C,Z}GEMT ( trans, m, n, alpha, a, lda, b, ldb )
trans character*1 On entry, specifies the form of op(A) as follows: When trans = 'N' or When trans = 'T' or When trans = 'R' or When trans = 'C' or On exit, trans is unchanged. m integer*4 On entry, the number of rows in the matrices (op)A and B; m >= 0. On exit, m is unchanged. n integer*4 On entry, the number of columns in the matrices (op)A, and B; n >= 0. On exit, n is unchanged. alpha real*4 | real*8 | complex*8 | complex*16 On entry, specifies the scalar alpha. On exit, alpha is unchanged. a real*4 | real*8 | complex*8 | complex*16 On entry, a two-dimensional array A with dimensions lda by k. For (op)A = A or conjugate(A), k = n and the leading m by n part of array A contains the matrix A. For (op)A = transp(A) or conjug_transp(A), k = m and the leading n by m part of array A contains the matrix A. On exit, a is unchanged. lda integer*4 On entry, specifies the first dimension of array A. For (op)A = A or conjugate(A), lda >= MAX(1, m). For (op)A = transp(A) or conjug_transp(A), lda >= MAX(1, n). On exit, lda is unchanged. b real*4 | real*8 | complex*8 | complex*16 On entry, an array with dimensions ldb by n. On exit, the leading m by n part of the array B is overwritten by the matrix alpha*op(A). ldb integer*4 On entry, specifies the first dimension of array B; ldb >= MAX(1, m). On exit, ldb is unchanged.
The _GEMT routines perform the following operation: B = alpha * op(A) (op)(X) = X, transp(X), conjugate(X), or conjug_transp(X) , alpha is a scalar, and A and B are matrices. (op)A and B are m by n matrices. These subroutines can also perform matrix scaling when lda = ldb, and trans = A = alpha * op(A) where (op)(X) = X or conjugate(X) , alpha is a scalar, and A and (op)A are m by n matrices. An in place matrix transpose or conjugate transpose may be performed when lda = ldb, trans = m = n: A = alpha * op(A) where (op)(X) = transp(X) or conjug_transp(X), alpha is a scalar, and A and (op)A are m by n matrices.