Developer Reference

  • 2020.2
  • 07/15/2020
  • Public Content
Contents

?geqrf

Computes the QR factorization of a general m-by-n matrix.

Syntax

call sgeqrf
(
m
,
n
,
a
,
lda
,
tau
,
work
,
lwork
,
info
)
call dgeqrf
(
m
,
n
,
a
,
lda
,
tau
,
work
,
lwork
,
info
)
call cgeqrf
(
m
,
n
,
a
,
lda
,
tau
,
work
,
lwork
,
info
)
call zgeqrf
(
m
,
n
,
a
,
lda
,
tau
,
work
,
lwork
,
info
)
call geqrf
(
a
[
,
tau
]
[
,
info
]
)
Include Files
  • mkl.fi
    ,
    lapack.f90
Description
The routine forms the
QR
factorization of a general
m
-by-
n
matrix
A
. No pivoting is performed.
The routine does not form the matrix
Q
explicitly. Instead,
Q
is represented as a product of min(
m
,
n
) elementary reflectors. Routines are provided to work with
Q
in this representation.
This routine supports the Progress Routine feature. See Progress Function for details.
Input Parameters
m
INTEGER
.
The number of rows in the matrix
A
(
m
0
).
n
INTEGER
.
The number of columns in
A
(
n
0
).
a
,
work
REAL
for
sgeqrf
DOUBLE PRECISION
for
dgeqrf
COMPLEX
for
cgeqrf
DOUBLE COMPLEX
for
zgeqrf
.
Arrays:
a
(
lda
,*) contains the matrix
A
. The second dimension of
a
must be at least max(1,
n
).
work
is a workspace array, its dimension
max(1,
lwork
)
.
lda
INTEGER
.
The leading dimension of
a
; at least max(1,
m
).
lwork
INTEGER
.
The size of the
work
array (
lwork
n
).
If
lwork
= -1
, then a workspace query is assumed; the routine only calculates the optimal size of the
work
array, returns this value as the first entry of the
work
array, and no error message related to
lwork
is issued by xerbla.
See Application Notes for the suggested value of
lwork
.
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