hpr2(3F)

CHPR2, ZHPR2 - Performs Hermitian rank 2 update of a packed complex Hermitian matrix

As shipped in IRIX 6.5.30. Last changed in IRIX 6.5.19.

NAME
     CHPR2, ZHPR2 - Performs Hermitian rank 2 update of a packed complex
     Hermitian matrix

SYNOPSIS
     Complex

        CALL CHPR2 (uplo, n, alpha, x, incx, y, incy, ap)

     Double complex

        CALL ZHPR2 (uplo, n, alpha, x, incx, y, incy, ap)

DESCRIPTION
     These routines perform the following Hermitian rank 2 operation:

          A  <- alpha xyH + (complex conjugate of alpha)* yxH + A

     where alpha is a scalar, x and y are n-element vectors, xH and yH

     conjugate transposes of x and y, respectively, and A is an n-by-n
     packed complex Hermitian matrix.

     These routines have the following arguments:

     uplo      Character*1.  (input)
               Specifies whether the upper or lower triangular part of
               matrix A is packed into the array argument ap, as follows:

               uplo= 'U' or 'u': the upper triangular part of A is being
               supplied in the argument ap.
               uplo= 'L' or 'l': the lower triangular part of A is being
               supplied in the argument ap.

     n         Integer.  (input)
               Specifies the order of matrix A.  n >= 0.

     alpha     Scalar alpha.  (input).
               CHPR2: Complex.
               ZHPR2: Double complex.

     x         Array of dimension 1+(n-1) * |incx|.  (input)
               CHPR2: Complex array.
               ZHPR2: Double complex array.
               Contains vector x.

     incx      Integer.  (input)
               Increment for the elements of x.  incx must not be 0.

     y         Array of dimension 1+(n-1) * |incy|.  (input)
               CHPR2: Complex array.
               ZHPR2: Double complex array.
               Contains vector y.

     incy      Integer.  (input)
               Increment for the elements of y.  Argument incy must not be
               0.

     ap        Array of dimension (n(n+1))/2 .  (input and output)
               CHPR2: Complex array.
               ZHPR2: Double complex array.

               Before entry with uplo = 'U' or 'u', array ap must contain
               the upper triangular part of the Hermitian matrix packed
               sequentially, column-by-column, so that ap(1) contains
               A(1,1), ap(2) contains A(1,2), ap(3) contains A(2,2), and so
               on.  On exit, the upper triangular part of the updated
               matrix overwrites array ap.

               Before entry with uplo = 'L' or 'l', array ap must contain
               the lower triangular part of the Hermitian matrix packed
               sequentially, column-by-column, so that ap(1) contains
               A(1,1), ap(2) contains A(2,1), ap(3) contains A(3,1), and so
               on.  On exit, the lower triangular part of the updated
               matrix overwrites array ap.

               The imaginary parts of the diagonal elements need not be
               set.  They are assumed to be 0; on exit, they are set to 0.

NOTES
     CHPR2/ZHPR2 is a Level 2 Basic Linear Algebra Subprogram (Level 2
     BLAS).

     When working backward (incx < 0 or incy < 0), this routine starts at
     the end of the vector and moves backward, as follows:

          x(1-incx * (n-1)), x(1-incx * (n-2)) , ..., x(1)

          y(1-incy * (n-1)), y(1-incy * (n-2)) , ..., y(1)

SEE ALSO
     SPR(3F)