gbmv_i(3PI) Sun Interval Performance Library gbmv_i(3PI)NAMEgbmv_i - Interval matrix-vector multiplication.
DESCRIPTION
Y = ALPHA * A * X + BETA * Y
or
Y = ALPHA * A_TRANSPOSED * X + BETA * Y
The routine GBMV_I multiplies the interval vector X by general band
interval matrix A or its transpose, scales the resulting interval vec‐
tor and adds it to the scaled interval vector operand Y. The routine
returns immediately if N or M is equal to zero or KL is less than zero.
SYNOPSIS
SUBROUTINE GBMV_I( A, M, KL, X, Y [, TRANSA] [, ALPHA] [, BETA] )
INTERVAL, INTENT(IN) :: A(:,:), X(:)
INTEGER, INTENT(IN) :: M, KL
INTERVAL, INTENT(INOUT) :: Y(:)
TYPE(blas_trans_type), INTENT(IN), OPTIONAL :: TRANSA
INTERVAL, INTENT(IN), OPTIONAL :: ALPHA, BETA
where
A has shape (L,N), L > KL,
X has shape N and Y has shape M if TRANSA = blas_no_trans (default)
X has shape M and Y has shape N if transa /= blas_no_trans
ARGUMENTS
A (input)
Array of DIMENSION (L,N), L > KL.
Unchanged on exit.
M (input)
Number of rows in the source general matrix.
Unchanged on exit.
KL (input)
The number of the subdiagonal bands.
Unchanged on exit.
X (input)
On entry,
array of DIMENSION N if TRANSA = blas_no_trans
(default) or
array of DIMENSION M if TRANSA /= blas_no_trans.
Unchanged on exit.
Y (input/output)
On entry,
array of DIMENSION M if TRANSA = blas_no_trans
(default) or
array of DIMENSION N if TRANSA /= blas_no_trans.
On exit,
if TRANSA = blas_no_trans (default):
Y = ALPHA * A * X + BETA * Y or
if TRANSA /= blas_no_trans:
Y = ALPHA * A_TRANSPOSED * X + BETA * Y
TRANSA (input)
On entry, TRANSA specifies the matrix A transpose.
Possible values:
TRANSA = blas_no_trans (default)
TRANSA = blas_trans
Unchanged on exit.
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 ALPHA = [1,1].
Unchanged on exit.
ERRORS
blas_error_alloc
A, X or Y is unallocated array
blas_error_shape
A, X or Y has unappropriate shape
6 Mar 2009 gbmv_i(3PI)