Triangular packed matrix-vector multiply

F_STPMV/F_DTPMV/F_CTPMV/F_ZTPMV

Name

F_STPMV/F_DTPMV/F_CTPMV/F_ZTPMV

 

Triangular packed matrix-vector multiply

Purpose

F_xTPMV multiplies a vector x by a packed triangular matrix (T), its transpose

 

(TT), or its conjugate transpose (T*), and copies the resulting vector to the

 

vector operand x. If n is less than or equal to zero, this routine returns

 

immediately.

 

 

 

x ← αTx

 

 

x ← αTT x

 

 

x ← αTx

 

Refer to “STPMV/DTPMV/CTPMV/ZTPMV” on page 308 for a description of the

 

equivalent HP MLIB legacy BLAS subprograms.

Matrix

You supply the upper or lower triangle of A, stored column-by-column in packed

Storage

form in a 1-dimensional array. This saves memory compared to storing the

 

entire matrix. Refer to “STPMV/DTPMV/CTPMV/ZTPMV” on page 308 for

 

examples that illustrate the packed storage of a triangular matrix.

Usage

VECLIB

 

 

INTEGER*4

DIAG, INCX, N, TRANS, UPLO

 

REAL*4

ALPHA

 

REAL*4

AP( * ), X( * )

 

SUBROUTINE F_STPMV (UPLO, TRANS, DIAG, N, ALPHA, AP, X, INCX)

 

INTEGER*4

DIAG, INCX, N, TRANS, UPLO

 

REAL*8

ALPHA

 

REAL*8

AP( * ), X( * )

 

SUBROUTINE F_DTPMV (UPLO, TRANS, DIAG, N, ALPHA, AP, X, INCX)

 

INTEGER*4

DIAG, INCX, N, TRANS, UPLO

 

COMPLEX*8

ALPHA

 

COMPLEX*8

AP( * ), X( * )

 

SUBROUTINE F_CTPMV (UPLO, TRANS, DIAG, N, ALPHA, AP, X, INCX)

 

INTEGER*4

DIAG, INCX, N, TRANS, UPLO

 

COMPLEX*16

ALPHA

 

COMPLEX*16

AP( * ), X( * )

 

SUBROUTINE F_ZTPMV (UPLO, TRANS, DIAG, N, ALPHA, AP, X, INCX)

VECLIB

Chapter 3 Basic Matrix Operations 403