Visible to Intel only — GUID: GUID-280BB03B-34FC-4FBD-AC59-6E244E77808F
Visible to Intel only — GUID: GUID-280BB03B-34FC-4FBD-AC59-6E244E77808F
?geqrt
Computes a blocked QR factorization of a general real or complex matrix using the compact WY representation of Q.
Syntax
lapack_int LAPACKE_sgeqrt (int matrix_layout, lapack_int m, lapack_int n, lapack_int nb, float* a, lapack_int lda, float* t, lapack_int ldt);
lapack_int LAPACKE_dgeqrt (int matrix_layout, lapack_int m, lapack_int n, lapack_int nb, double* a, lapack_int lda, double* t, lapack_int ldt);
lapack_int LAPACKE_cgeqrt (int matrix_layout, lapack_int m, lapack_int n, lapack_int nb, lapack_complex_float* a, lapack_int lda, lapack_complex_float* t, lapack_int ldt);
lapack_int LAPACKE_zgeqrt (int matrix_layout, lapack_int m, lapack_int n, lapack_int nb, lapack_complex_double* a, lapack_int lda, lapack_complex_double* t, lapack_int ldt);
Include Files
- mkl.h
Description
The strictly lower triangular matrix V contains the elementary reflectors H(i) in the ith column below the diagonal. For example, if m=5 and n=3, the matrix V is
where vi represents one of the vectors that define H(i). The vectors are returned in the lower triangular part of array a.
The 1s along the diagonal of V are not stored in a.
Let k = min(m,n). The number of blocks is b = ceiling(k/nb), where each block is of order nb except for the last block, which is of order ib = k - (b-1)*nb. For each of the b blocks, a upper triangular block reflector factor is computed:t1, t2, ..., tb. The nb-by-nb (and ib-by-ib for the last block) ts are stored in the nb-by-n array t as
t = (t1t2 ... tb).
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 in the matrix A (m ≥ 0).
- n
-
The number of columns in A (n ≥ 0).
- nb
-
The block size to be used in the blocked QR (min(m, n) ≥ nb ≥ 1).
- a
-
Array a of size max(1, lda*n) for column major layout and max(1, lda*m) for row major layout contains the m-by-n matrix A.
- lda
-
The leading dimension of a; at least max(1, m) for column major layout and max(1, n) for row major layout.
- ldt
-
The leading dimension of t; at least nb for column major layout and max(1, min(m, n)) for row major layout.
Output Parameters
- a
-
Overwritten by the factorization data as follows:
The elements on and above the diagonal of the array contain the min(m,n)-by-n upper trapezoidal matrix R (R is upper triangular if m≥n); the elements below the diagonal, with the array t, present the orthogonal matrix Q as a product of min(m,n) elementary reflectors (see Orthogonal Factorizations).
- t
-
Array, size max(1, ldt*min(m, n)) for column major layout and max(1, ldt*nb) for row major layout.
The upper triangular block reflector's factors stored as a sequence of upper triangular blocks.
Return Values
This function returns a value info.
If info=0, the execution is successful.
If info < 0 and info = -i, the i-th parameter had an illegal value.