HP MLIB User's Guide Vol. 1 7th Ed.
Chapter 3 Basic Matrix Operations 309
Matrix-vector multiply STPMV/DTPMV/CTPMV/ZTPMV
then A is packed column by column into an array ap as follows:
Lower-triangular matrix element a
ij
is stored in array element
ap(i+((j−1)×(2n−j))/2).
Usage VECLIB:
CHARACTER*1 uplo, trans, diag
INTEGER*4 n, incx
REAL*4 ap(lenap), x(lenx)
CALL STPMV(uplo, trans, diag, n, ap, x, incx)
CHARACTER*1 uplo, trans, diag
INTEGER*4 n, incx
REAL*8 ap(lenap), x(lenx)
CALL DTPMV(uplo, trans, diag, n, ap, x, incx)
CHARACTER*1 uplo, trans, diag
INTEGER*4 n, incx
COMPLEX*8 ap(lenap), x(lenx)
CALL CTPMV(uplo, trans, diag, n, ap, x, incx)
CHARACTER*1 uplo, trans, diag
INTEGER*4 n, incx
COMPLEX*16 ap(lenap), x(lenx)
CALL ZTPMV(uplo, trans, diag, n, ap, x, incx)
VECLIB8:
CHARACTER*1 uplo, trans, diag
INTEGER*8 n, incx
REAL*4 ap(lenap), x(lenx)
CALL STPMV(uplo, trans, diag, n, ap, x, incx)
CHARACTER*1 uplo, trans, diag
INTEGER*8 n, incx
REAL*8 ap(lenap), x(lenx)
CALL DTPMV(uplo, trans, diag, n, ap, x, incx)
CHARACTER*1 uplo, trans, diag
INTEGER*8 n, incx
COMPLEX*8 ap(lenap), x(lenx)
CALL CTPMV(uplo, trans, diag, n, ap, x, incx)
k 12345678910
ap(k) 11213141223242334344