?orgql
?orgql
Generates the real matrix Q of the QL factorization formed by
?geqlf
.Syntax
lapack_int
LAPACKE_sorgql
(
int
matrix_layout
,
lapack_int
m
,
lapack_int
n
,
lapack_int
k
,
float
*
a
,
lapack_int
lda
,
const
float
*
tau
);
lapack_int
LAPACKE_dorgql
(
int
matrix_layout
,
lapack_int
m
,
lapack_int
n
,
lapack_int
k
,
double
*
a
,
lapack_int
lda
,
const
double
*
tau
);
Include Files
- mkl.h
Description
The routine generates an of order *...* as returned by the routines geqlf. Use this routine after a call to
m
-by-n
real matrix Q
with orthonormal columns, which is defined as the last n
columns of a product of k
elementary reflectors H
(i
)m
: Q
= H
(k
)H
(2)
*H
(1)sgeqlf
/dgeqlf
. Input Parameters
- matrix_layout
- Specifies whether matrix storage layout is row major (LAPACK_ROW_MAJOR) or column major (LAPACK_COL_MAJOR).
- m
- The number of rows of the matrixQ().m≥0
- n
- The number of columns of the matrixQ().m≥n≥0
- k
- The number of elementary reflectors whose product defines the matrixQ().n≥k≥0
- a,tau
- Arrays:a(size max(1,,lda*n) for column major layout and max(1,lda*m) for row major layout)tau.On entry, the (n-k+i)th column ofamustcontain the vector whichdefines the elementary reflectorH(i), fori= 1,2,...,k, as returned bysgeqlf/dgeqlfin the lastkcolumns of its array argumenta;must contain the scalar factor of the elementary reflectortau[i- 1]H(i), as returned bysgeqlf/dgeqlf;The size oftaumust be at least max(1,k).
- lda
- The leading dimension ofa; at least max(1,m)for column major layout and max(1,.n) for row major layout
Output Parameters
- a
- Overwritten by the lastncolumns of them-by-morthogonal matrixQ.
Return Values
This function returns a value
info
.If , the execution is successful.
info
=0If , the
info
= -i
i
-th parameter had an illegal value.Application Notes
The complex counterpart of this routine is ungql.