XLPack 7.0
XLPack Numerical Library (C API) Reference Manual
Loading...
Searching...
No Matches

◆ zhpr2()

void zhpr2 ( char  uplo,
int  n,
doublecomplex  alpha,
doublecomplex  x[],
int  incx,
doublecomplex  y[],
int  incy,
doublecomplex  ap[] 
)

Rank 2 operation: A <- αxyH + conjg(α)yxH + A (Hermitian matrices in packed form) (BLAS 2)

Purpose
This routine performs the rank 2 operation
A <- alpha*x*y^H + conjg(alpha)*y*x^H + A
where alpha is a scalar, x and y are n element vectors and A is an n x n Hermitian matrix, supplied in packed form.
Parameters
[in]uploSpecifies whether the upper or lower triangular part of the matrix A is supplied in the packed array ap[] as follows:
= 'U': The upper triangular part of A is supplied in ap[].
= 'L': The lower triangular part of A is supplied in ap[].
[in]nOrder of the matrix A. (n >= 0) (If n = 0, returns without computation)
[in]alphaScalar alpha.
[in]x[]Array x[lx] (lx >= 1 + (n - 1)*abs(incx))
Vector x.
[in]incxStorage spacing between elements of x. (incx != 0)
[in]y[]Array y[ly] (ly >= 1 + (n - 1)*abs(incy))
Vector y.
[in]incyStorage spacing between elements of y. (incy != 0)
[in,out]ap[]Array ap[lap] (lap >= n(n + 1)/2)
[in] n x n Hermitian matrix A in packed form. According to uplo, upper or lower triangular part is to be supplied. The imaginary parts of the diagonal elements need not be set and are assumed to be zero.
[out] alpha*x*y^H + conjg(alpha)*y*x^H + A in packed form. According to uplo, upper or lower triangular part is stored. The imaginary parts of the diagonal elements are set to zero.
Reference
BLAS