F_CHPMV/F_ZHPMV | Hermitian packed | |
Name | F_CHPMV/F_ZHPMV |
|
| Hermitian packed | |
Purpose | F_xHPMV multiplies a vector x by a Hermitian packed matrix A, scales the | |
| resulting vector and adds it to the scaled vector operand y. If n is less than or | |
| equal to zero, or if β is equal to one and α is equal to zero, this routine returns | |
| immediately. The imaginary part of the diagonal entries of the matrix operand | |
| are supposed to be zero and should not be referenced. | |
| y ← αAx + βy | with A=A∗ |
| Refer to “SSPMV/DSPMV/CHPMV/ZHPMV” on page 249 for a description of | |
| the equivalent HP MLIB legacy BLAS subprograms. | |
Matrix | Because either triangle of A can be obtained from the other, you only need to | |
Storage | provide one triangle of A, either the upper or the lower triangle. Compared to | |
| storing the entire matrix, you save memory by supplying that triangle stored | |
| ||
| “SSPMV/DSPMV/CHPMV/ZHPMV” on page 249 for an example of the packed | |
| storage of symmetric or Hermitian matrices. | |
Usage | VECLIB |
|
INTEGER*4 | INCX, INCY, N, UPLO |
COMPLEX*8 | ALPHA, BETA |
COMPLEX*8 | AP( * ), X( * ), Y( * ) |
SUBROUTINE F_CHPMV (UPLO, N, ALPHA, AP, X, INCX, BETA, Y, | |
INCY) |
|
INTEGER*4 | INCX, INCY, N, UPLO |
COMPLEX*16 | ALPHA, BETA |
COMPLEX*16 | AP( * ), X( * ), Y( * ) |
SUBROUTINE F_ZHPMV (UPLO, N, ALPHA, AP, X, INCX, BETA, Y,
INCY)
VECLIB8
INTEGER*8 | INCX, INCY, N, UPLO |
COMPLEX*8 | ALPHA, BETA |
COMPLEX*8 | AP( * ), X( * ), Y( * ) |
SUBROUTINE F_CHPMV (UPLO, N, ALPHA, AP, X, INCX, BETA, Y,
INCY)
348HP MLIB User’s Guide