(S|D|C|Z)GEQR2¶
Single, double, single complex, and double complex GEQR2.
Description¶
Computes the QR factorization of a matrix using an unblocked algorithm.

The upper triangular matrix R is stored in A on the diagonal and above. The matrix Q is not stored explicitly. Instead, the elements below the diagonal of A together with TAU store Q as the product of scaled elementary reflectors.


LAPACK Interface¶
void sgeqr2(const qml_long *M, const qml_long *N, float *A, const qml_long *LDA,
float *TAU, float *WORK, qml_long *INFO);
void dgeqr2(const qml_long *M, const qml_long *N, double *A, const qml_long *LDA,
double *TAU, double *WORK, qml_long *INFO);
void cgeqr2(const qml_long *M, const qml_long *N, qml_single_complex *A,
const qml_long *LDA, qml_single_complex *TAU, qml_single_complex *WORK,
qml_long *INFO);
void zgeqr2(const qml_long *M, const qml_long *N, qml_double_complex *A,
const qml_long *LDA, qml_double_complex *TAU, qml_double_complex *WORK,
qml_long *INFO);
Arguments¶
| M | Number of rows of A |
| N | Number of columns of A |
| A | Matrix of size M x N |
| LDA | Leading dimension of A |
| TAU | On exit contains vector of scale factors for reflectors |
| WORK | Work space of size N |
| INFO | 0 on success |