upgtr#

Functions

void cupgtr(
    const char* uplo,
    const INT   n,
    const c64*  AP,
    const c64*  tau,
          c64*  Q,
    const INT   ldq,
          c64*  work,
          INT*  info
);
void cupgtr(const char *uplo, const INT n, const c64 *AP, const c64 *tau, c64 *Q, const INT ldq, c64 *work, INT *info)#

CUPGTR generates a complex unitary matrix Q which is defined as the product of n-1 elementary reflectors H(i) of order n, as returned by CHPTRD using packed storage:

if UPLO = ‘U’, Q = H(n-1) … H(2) H(1),

if UPLO = ‘L’, Q = H(1) H(2) … H(n-1).

Parameters

in
uplo

= ‘U’: Upper triangular packed storage used in previous call to CHPTRD; = ‘L’: Lower triangular packed storage used in previous call to CHPTRD.

in
n

The order of the matrix Q. N >= 0.

in
AP

Single complex array, dimension (N*(N+1)/2). The vectors which define the elementary reflectors, as returned by CHPTRD.

in
tau

Single complex array, dimension (N-1). TAU(i) must contain the scalar factor of the elementary reflector H(i), as returned by CHPTRD.

out
Q

Single complex array, dimension (LDQ,N). The N-by-N unitary matrix Q.

in
ldq

The leading dimension of the array Q. LDQ >= max(1,N).

out
work

Single complex array, dimension (N-1).

out
info

= 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value

Functions

void zupgtr(
    const char* uplo,
    const INT   n,
    const c128* AP,
    const c128* tau,
          c128* Q,
    const INT   ldq,
          c128* work,
          INT*  info
);
void zupgtr(const char *uplo, const INT n, const c128 *AP, const c128 *tau, c128 *Q, const INT ldq, c128 *work, INT *info)#

ZUPGTR generates a complex unitary matrix Q which is defined as the product of n-1 elementary reflectors H(i) of order n, as returned by ZHPTRD using packed storage:

if UPLO = ‘U’, Q = H(n-1) … H(2) H(1),

if UPLO = ‘L’, Q = H(1) H(2) … H(n-1).

Parameters

in
uplo

= ‘U’: Upper triangular packed storage used in previous call to ZHPTRD; = ‘L’: Lower triangular packed storage used in previous call to ZHPTRD.

in
n

The order of the matrix Q. N >= 0.

in
AP

Double complex array, dimension (N*(N+1)/2). The vectors which define the elementary reflectors, as returned by ZHPTRD.

in
tau

Double complex array, dimension (N-1). TAU(i) must contain the scalar factor of the elementary reflector H(i), as returned by ZHPTRD.

out
Q

Double complex array, dimension (LDQ,N). The N-by-N unitary matrix Q.

in
ldq

The leading dimension of the array Q. LDQ >= max(1,N).

out
work

Double complex array, dimension (N-1).

out
info

= 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value