SSPMV/DSPMV/CHPMV/ZHPMV

Matrix-vector multiply

Lower triangular storage

If the lower triangle of A is

11

21 22

31 32 33

41 42 43 44

then A is packed column-by-column into an array ap as follows:

k

1

2

3

4

5

6

7

8

9

10

ap(k)

11

21

31

41

22

32

42

33

43

44

 

 

 

 

 

 

 

 

 

 

 

Lower triangular matrix element aij is stored in array element ap(i+((j−1)⋅(2nj))/2).

Usage

VECLIB:

 

 

CHARACTER*1

uplo

 

INTEGER*4

n, incx, incy

 

REAL*4

alpha, beta, ap(lenap), x(lenx), y(leny)

 

CALL SSPMV(uplo, n, alpha, ap, x, incx, beta, y, incy)

 

CHARACTER*1

uplo

 

INTEGER*4

n, incx, incy

 

REAL*8

alpha, beta, ap(lenap), x(lenx), y(leny)

 

CALL DSPMV(uplo, n, alpha, ap, x, incx, beta, y, incy)

 

CHARACTER*1

uplo

 

INTEGER*4

n, incx, incy

 

COMPLEX*8

alpha, beta, ap(lenap), x(lenx), y(leny)

CALL CHPMV(uplo, n, alpha, ap, x, incx, beta, y, incy)

CHARACTER*1

uplo

INTEGER*4

n, incx, incy

COMPLEX*16

alpha, beta, ap(lenap), x(lenx), y(leny)

CALL ZHPMV(uplo, n, alpha, ap, x, incx, beta, y, incy)

VECLIB8:

CHARACTER*1

uplo

INTEGER*8

n, incx, incy

REAL*4

alpha, beta, ap(lenap), x(lenx), y(leny)

CALL SSPMV(uplo, n, alpha, ap, x, incx, beta, y, incy)

250HP MLIB User’s Guide