Developer Reference

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

p?laqr4

Computes the eigenvalues of a Hessenberg matrix, and optionally computes the matrices from the Schur decomposition.

Syntax

call pslaqr4
(
wantt
,
wantz
,
n
,
ilo
,
ihi
,
a
,
desca
,
wr
,
wi
,
iloz
,
ihiz
,
z
,
descz
,
t
,
ldt
,
v
,
ldv
,
work
,
lwork
,
info
)
call pdlaqr4
(
wantt
,
wantz
,
n
,
ilo
,
ihi
,
a
,
desca
,
wr
,
wi
,
iloz
,
ihiz
,
z
,
descz
,
t
,
ldt
,
v
,
ldv
,
work
,
lwork
,
info
)
Description
p?laqr4
is an auxiliary
routine
used to find the Schur decomposition and or eigenvalues of a matrix already in Hessenberg form from cols
ilo
to
ihi
. This
routine
requires that the active block is small enough, i.e.
ihi
-
ilo
+1
ldt
, so that it can be solved by LAPACK. Normally, it is called by
p?laqr1
. All the inputs are assumed to be valid without checking.
Input Parameters
wantt
(global )
LOGICAL
= .TRUE.
: the full Schur form
T
is required;
= .FALSE.
: only eigenvalues are required.
wantz
(global )
LOGICAL
= .TRUE.
: the matrix of Schur vectors
Z
is required;
= .FALSE.
: Schur vectors are not required.
n
(global )
INTEGER
The order of the Hessenberg matrix
A
(and
Z
if
wantz
).
n
0.
ilo
,
ihi
(global )
INTEGER
It is assumed that
a
is already upper quasi-triangular in rows and columns
ihi
+1:
n
, and that
A
(
ilo
,
ilo
-1) = 0 (unless
ilo
= 1).
p?laqr4
works primarily with the Hessenberg submatrix in rows and columns
ilo
to
ihi
, but applies transformations to all of
A
if
wantt
is
.TRUE.
. 1
ilo
max(1,
ihi
);
ihi
n
.
a
REAL
for
pslaqr4
DOUBLE PRECISION
for
pdlaqr4
(global ) array of size
(
lld_a
,
LOC
c
(
n
))
The upper Hessenberg matrix
A
.
desca
(global and local)
INTEGER
array of size
dlen_
.
The array descriptor for the distributed matrix
a
.
iloz
,
ihiz
(global )
INTEGER
Specify the rows of the matrix
Z
to which transformations must be applied if
wantz
is
.TRUE.
. 1