Symmetric band matrix-vector multiply

F_SSBMV/F_DSBMV/F_CSBMV/F_ZSBMV

 

INTEGER*8

INCX, INCY, K, LDA, N, UPLO

 

REAL*4

ALPHA, BETA, A( LDA, * ), X( * ), Y( * )

 

SUBROUTINE F_SSBMV (UPLO, N, K, ALPHA, A, LDA, X, INCX, BETA,

 

Y, INCY)

 

 

INTEGER*8

INCX, INCY, K, LDA, N, UPLO

 

REAL*8

ALPHA, BETA, A( LDA, * ), X( * ), Y( * )

 

SUBROUTINE F_DSBMV (UPLO, N, K, ALPHA, A, LDA, X, INCX, BETA,

 

Y, INCY)

 

 

INTEGER*8

INCX, INCY, K, LDA, N, UPLO

 

COMPLEX*8

ALPHA, BETA, A( LDA, * ), X( * ), Y( * )

 

SUBROUTINE F_CSBMV (UPLO, N, K, ALPHA, A, LDA, X, INCX, BETA,

 

Y, INCY)

 

 

INTEGER*8

INCX, INCY, K, LDA, N, UPLO

 

COMPLEX*16

ALPHA, BETA, A( LDA, * ), X( * ), Y( * )

 

SUBROUTINE F_ZSBMV (UPLO, N, K, ALPHA, A, LDA, X, INCX, BETA,

 

Y, INCY)

 

Input

UPLO

Specifies whether a triangular matrix is upper or lower

 

 

triangular. Use either BLAS_UPPER or BLAS_LOWER.

 

N

Number of columns in matrix A, n > 0. If n 0 , the

 

 

subprograms do not reference A, X, or Y.

 

K

The number of non zero diagonals above or below the

 

 

principal diagonal.

 

ALPHA

The scalar ALPHA. If beta = 1 and alpha = 0, this

 

 

routine returns immediately.

 

A

REAL or COMPLEX array, dimension (LDA, N).

 

LDA

Leading dimension of array A. If lda < 1 or lda < k+1,

 

 

an error condition is generated.

 

X

REAL or COMPLEX array, minimum length

 

 

N - 1) x incx + 1.

 

INCX

Increment for the array x. A vector x having component

 

 

xi, i = 1,..., n, is stored in an array X() with increment

 

 

argument incx. If incx > 0 then xi is stored in

 

 

X (1 + (i - 1) x incx). If incx < 0 then xiis stored in

 

 

X (1 + (N - i) x incx). incx = 0 is an illegal value.

 

BETA

The scalar BETA. If beta = 1 and alpha = 0, this

 

 

routine returns immediately.

Chapter 3 Basic Matrix Operations 379