HP MLIB User's Guide Vol. 1 7th Ed.
394 HP MLIB User’s Guide
F_SSYR2/F_DSYR2/F_CSYR2/F_ZSYR2 Symmetric rank-2 update
Name F_SSYR2/F_DSYR2/F_CSYR2/F_ZSYR2
Symmetric rank-2 update
Purpose F_xSYR2 performs the symmetric rank-2 update
where A is an n-by-n real symmetric matrix, α and β are real or complex
scalars, is the complex conjugate of α, x and y are real or complex n-vectors,
and x
T
and y
T
are the transposes of x and y, respectively.
This F_xSYR2 interface encompasses the legacy BLAS routine SSYR2 with
added functionality for complex symmetric matrices. Refer to
“SSYR2/DSYR2/CHER2/ZHER2” on page 279 for a description of the HP MLIB
legacy BLAS subprograms.
Matrix
Storage
Because either triangle of A can be obtained from the other, these subprograms
reference and apply the update to only one triangle of A. You can supply either
the upper or the lower triangle of A, in a two-dimensional array large enough to
hold the entire matrix, and the same triangle of the updated matrix is returned
in the array. The other triangle of the array is not referenced.
Usage VECLIB
INTEGER*4 INCX, INCY, LDA, N, UPLO
REAL*4 ALPHA, BETA
REAL*4 A( LDA, * ), X( * ), Y( * )
SUBROUTINE F_SSYR2 (UPLO, N, ALPHA, X, INCX, Y, INCY, BETA, A,
LDA)
INTEGER*4 INCX, INCY, LDA, N, UPLO
REAL*8 ALPHA, BETA
REAL*8 A( LDA, * ), X( * ), Y( * )
SUBROUTINE F_DSYR2 (UPLO, N, ALPHA, X, INCX, Y, INCY, BETA, A,
LDA)
INTEGER*4 INCX, INCY, LDA, N, UPLO
COMPLEX*8 ALPHA, BETA
COMPLEX*8 A( LDA, * ), X( * ), Y( * )
SUBROUTINE F_CSYR2 (UPLO, N, ALPHA, X, INCX, Y, INCY, BETA, A,
LDA)
A αxy
T
αyx
T
βA with A=A
T
++←
α