Developer Reference

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

?gehd2

Reduces a general square matrix to upper Hessenberg form using an unblocked algorithm.

Syntax

call sgehd2
(
n
,
ilo
,
ihi
,
a
,
lda
,
tau
,
work
,
info
)
call dgehd2
(
n
,
ilo
,
ihi
,
a
,
lda
,
tau
,
work
,
info
)
call cgehd2
(
n
,
ilo
,
ihi
,
a
,
lda
,
tau
,
work
,
info
)
call zgehd2
(
n
,
ilo
,
ihi
,
a
,
lda
,
tau
,
work
,
info
)
Include Files
  • mkl.fi
Description
The routine reduces a real/complex general matrix
A
to upper Hessenberg form
H
by an orthogonal or unitary similarity transformation
Q
T
*
A
*
Q
=
H
(for real flavors) or
Q
H
*
A
*
Q
=
H
(for complex flavors).
The routine does not form the matrix
Q
explicitly. Instead,
Q
is represented as a product of elementary reflectors .
Input Parameters
n
INTEGER
The order of the matrix
A
(
n
0
).
ilo
,
ihi
INTEGER
. It is assumed that
A
is already upper triangular in rows and columns
1:
ilo
-1
and
ihi
+1:
n
.
If
A
has been output by
?gebal
, then
ilo
and
ihi
must contain the values returned by that routine. Otherwise they should be set to
ilo
= 1
and
ihi
=
n
. Constraint:
1 ≤
ilo
ihi
≤ max(1,
n
)
.
a
,
work
REAL
for
sgehd2
DOUBLE PRECISION
for
dgehd2
COMPLEX
for
cgehd2
DOUBLE COMPLEX
for
zgehd2
.
Arrays:
a
(
lda
,*)
contains the
n
-by-
n
matrix
A
to be reduced. The second dimension of
a
must be at least
max(1,
n
)
.
work
(
n
) is a workspace array.
lda
INTEGER
. The leading dimension of
a
; at least
max(1,
n
)
.
Output Parameters
a
On exit, the upper triangle and the first subdiagonal of
A
are overwritten with the upper Hessenberg matrix
H
and the elements below the first subdiagonal, with the array
tau
, represent the orthogonal/unitary matrix
Q
as a product of elementary reflectors.
See
Application Notes
below.
tau
REAL
for
sgehd2
DOUBLE PRECISION
for
dgehd2
COMPLEX
for