gemm_i(3PI) Sun Interval Performance Library gemm_i(3PI)NAMEgemm_i - General interval matrix product.
DESCRIPTION
C = ALPHA * A * B + BETA * C
or
C = ALPHA * A_transposed * B + BETA * C
or
C = ALPHA * A * B_transposed + BETA * C
or
C = ALPHA * A_transposed * B_transposed + BETA * C
The routine GEMM_I performs general interval matrix multiply C = ALPHA
* op(A) * op(B) + BETA * C, where op(A) denotes A or A_transposed,
op(B) denotes B or B_transposed. ALPHA and BETA are intervals, and A, B
and C are general interval matrices. This routine returns immediately
if M, N or K is equal to zero.
SYNOPSIS
SUBROUTINE GEMM_I( A, B, C [, TRANSA] [, TRANSB] [, ALPHA] [, BETA] )
INTERVAL, INTENT(IN) :: A(:,:), B(:,:)
INTERVAL, INTENT(INOUT) :: C(:,:)
TYPE(blas_trans_type), INTENT(IN), OPTIONAL :: TRANSA, TRANSB
INTERVAL, INTENT(IN), OPTIONAL :: ALPHA, BETA
where
C has shape (M,N).
If TRANSA = blas_no_trans (default): A has shape (M,K),
if TRANSA /= blas_no_trans : A has shape (K,M)
If TRANSB = blas_no_trans (default): B has shape (K,N)
if TRANSB /= blas_no_trans : B has shape (N,K)
ARGUMENTS
A (input)
On entry, A is array of DIMENSION (M,K)
if TRANSA = blas_no_trans (default).
A is array of DIMENSION (K,M)
if TRANSA /= blas_no_trans.
Unchanged on exit.
B (input)
On entry, B is array of DIMENSION (K,N)
if TRANSB = blas_no_trans (default).
B is array of DIMENSION (N,K)
if TRANSB /= blas_no_trans.
Unchanged on exit.
C (input/output)
On entry, C is array of DIMENSION (M,N).
On exit, C = ALPHA * op(A) * op(B) + BETA * C
where op(A) denotes A or A_transposed,
op(B) denotes B or B_transposed.
ALPHA (input)
On entry, ALPHA specifies the scalar ALPHA.
Default value is ALPHA = [1,1].
Unchanged on exit.
BETA (input)
On entry, BETA specifies the scalar BETA.
Default value is BETA = [0,0].
Unchanged on exit.
TRANSA (input)
Scalar element.
Specifies the matrix A transpose.
Possible values:
TRANSA = blas_no_trans (default)
TRANSA = blas_trans
Unchanged on exit.
TRANSB (input)
Scalar element.
Specifies the matrix B transpose.
Possible values:
TRANSB = blas_no_trans (default)
TRANSB = blas_trans
Unchanged on exit.
ERRORS
blas_error_alloc
A, B or C is unallocated array
blas_error_shape
A, B or C has unappropriate shape
6 Mar 2009 gemm_i(3PI)