ungr2#
Functions
-
void cungr2(const INT m, const INT n, const INT k, c64 *restrict A, const INT lda, const c64 *restrict tau, c64 *restrict work, INT *info)#
CUNGR2 generates an m by n complex matrix Q with orthonormal rows, which is defined as the last m rows of a product of k elementary reflectors of order n.
Q = H(0)**H H(1)**H … H(k-1)**H
as returned by CGERQF.
Parameters
inmThe number of rows of Q. m >= 0.
innThe number of columns of Q. n >= m.
inkThe number of elementary reflectors whose product defines Q. m >= k >= 0.
inoutAOn entry, the (m-k+i)-th row must contain the vector which defines the elementary reflector H(i), for i = 0,1,…,k-1, as returned by CGERQF in the last k rows of its array argument A. On exit, the m-by-n matrix Q.
inldaThe leading dimension of A. lda >= max(1, m).
intauArray of dimension (k). TAU(i) must contain the scalar factor of the elementary reflector H(i), as returned by CGERQF.
outworkWorkspace, dimension (m).
outinfo= 0: successful exit
< 0: if info = -i, the i-th argument had an illegal value.
void cungr2(
const INT m,
const INT n,
const INT k,
c64* restrict A,
const INT lda,
const c64* restrict tau,
c64* restrict work,
INT* info
);
Functions
-
void zungr2(const INT m, const INT n, const INT k, c128 *restrict A, const INT lda, const c128 *restrict tau, c128 *restrict work, INT *info)#
ZUNGR2 generates an m by n complex matrix Q with orthonormal rows, which is defined as the last m rows of a product of k elementary reflectors of order n.
Q = H(0)**H H(1)**H … H(k-1)**H
as returned by ZGERQF.
Parameters
inmThe number of rows of Q. m >= 0.
innThe number of columns of Q. n >= m.
inkThe number of elementary reflectors whose product defines Q. m >= k >= 0.
inoutAOn entry, the (m-k+i)-th row must contain the vector which defines the elementary reflector H(i), for i = 0,1,…,k-1, as returned by ZGERQF in the last k rows of its array argument A. On exit, the m-by-n matrix Q.
inldaThe leading dimension of A. lda >= max(1, m).
intauArray of dimension (k). TAU(i) must contain the scalar factor of the elementary reflector H(i), as returned by ZGERQF.
outworkWorkspace, dimension (m).
outinfo= 0: successful exit
< 0: if info = -i, the i-th argument had an illegal value.
void zungr2(
const INT m,
const INT n,
const INT k,
c128* restrict A,
const INT lda,
const c128* restrict tau,
c128* restrict work,
INT* info
);