Visible to Intel only — GUID: GUID-0E3F5CB3-9812-489D-BE79-957D9EB193E6
Visible to Intel only — GUID: GUID-0E3F5CB3-9812-489D-BE79-957D9EB193E6
?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 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) of order m: Q = H(k) *...* H(2)*H(1) as returned by the routines geqlf. Use this routine after a call to 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 matrix Q (m≥ 0).
- n
-
The number of columns of the matrix Q (m≥ n≥ 0).
- k
-
The number of elementary reflectors whose product defines the matrix Q (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 of a must contain the vector which defines the elementary reflector H(i), for i = 1,2,...,k, as returned by sgeqlf/dgeqlf in the last k columns of its array argument a; tau[i - 1] must contain the scalar factor of the elementary reflector H(i), as returned by sgeqlf/dgeqlf;
The size of tau must be at least max(1, k).
- lda
-
The leading dimension of a; at least max(1, m)for column major layout and max(1, n) for row major layout.
Output Parameters
- a
-
Overwritten by the last n columns of the m-by-m orthogonal matrix Q.
Return Values
This function returns a value info.
If info=0, the execution is successful.
If info = -i, the i-th parameter had an illegal value.
Application Notes
The complex counterpart of this routine is ungql.