Developer Reference

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

?orgl2/?ungl2

Generates all or part of the orthogonal/unitary matrix Q from an LQ factorization determined by
?gelqf
(unblocked algorithm).

Syntax

call sorgl2
(
m
,
n
,
k
,
a
,
lda
,
tau
,
work
,
info
)
call dorgl2
(
m
,
n
,
k
,
a
,
lda
,
tau
,
work
,
info
)
call cungl2
(
m
,
n
,
k
,
a
,
lda
,
tau
,
work
,
info
)
call zungl2
(
m
,
n
,
k
,
a
,
lda
,
tau
,
work
,
info
)
Include Files
  • mkl.fi
Description
The routine
?orgl2
/
?ungl2
generates a
m
-by-
n
real/complex matrix
Q
with orthonormal rows, which is defined as the first
m
rows of a product of
k
elementary reflectors of order n
Q
=
H
(
k
)*...*
H
(2)*
H
(1)
for real flavors, or
Q
= (
H
(
k
))
H
*...*(
H
(2))
H
*(
H
(1))
H
for complex flavors as returned by
?gelqf
.
Input Parameters
m
INTEGER
. The number of rows of the matrix
Q
.
m
0
.
n
INTEGER
. The number of columns of the matrix
Q
.
n
m
.
k
INTEGER
. The number of elementary reflectors whose product defines the matrix
Q
.
m
k
0
.
a
REAL
for
sorgl2
DOUBLE PRECISION
for
dorgl2
COMPLEX
for
cungl2
DOUBLE COMPLEX
for
zungl2
.
Array,
DIMENSION
(
lda
,
n
). On entry, the
i
-th row must contain the vector which defines the elementary reflector
H
(
i
), for
i
= 1,2,...,
k
, as returned by
?gelqf
in the first
k
rows of its array argument
a
.
lda
INTEGER
. The leading dimension of the array
a
.
lda
max(1,
m
)
.
tau
REAL
for
sorgl2
DOUBLE PRECISION
for
dorgl2
COMPLEX
for
cungl2
DOUBLE COMPLEX
for
zungl2
.
Array,
DIMENSION
(
k
).
tau
(
i
) must contain the scalar factor of the elementary reflector
H
(
i
), as returned by
?gelqf
.