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

 

 

 

 

A ← αx yT +

α

yxT + βA with A=AT

 

where A is an n-by-nreal symmetric matrix, α and β are real or complex

 

scalars,

α

is the complex conjugate of α, x and y are real or complex n-vectors,

 

and xT and yT 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

Because either triangle of A can be obtained from the other, these subprograms

Storage

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)

 

 

 

394HP MLIB User’s Guide