Developer Reference

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

?trevc3

Computes selected eigenvectors of an upper (quasi-) triangular matrix computed by
?hseqr
using Level 3 BLAS

Syntax

call
strevc3
(
side
,
howmny
,
select
,
n
,
t
,
ldt
,
vl
,
ldvl
,
vr
,
ldvr
,
mm
,
m
,
work
,
lwork
,
info
)
call
dtrevc3
(
side
,
howmny
,
select
,
n
,
t
,
ldt
,
vl
,
ldvl
,
vr
,
ldvr
,
mm
,
m
,
work
,
lwork
,
info
)
call
ctrevc3
(
side
,
howmny
,
select
,
n
,
t
,
ldt
,
vl
,
ldvl
,
vr
,
ldvr
,
mm
,
m
,
work
,
lwork
,
rwork
,
lrwork
,
info
)
call
ztrevc3
(
side
,
howmny
,
select
,
n
,
t
,
ldt
,
vl
,
ldvl
,
vr
,
ldvr
,
mm
,
m
,
work
,
lwork
,
rwork
,
lrwork
,
info
)
Include Files
  • mkl.fi
Description
This routine computes some or all of the right and left eigenvectors of an upper triangular matrix
T
(or, for real flavors, an upper quasi-triangular matrix
T
) using Level 3 BLAS. Matrices of this type are produced by the Schur factorization of a general matrix:
A =Q*T*QH
, as computed by
hseqr
.
The right eigenvector
x
and the left eigenvector
y
of
T
corresponding to an eigenvalue
w
are defined by the following:
T*x = w*x, y
H
*T = w*y
H
where y
H
denotes the conjugate transpose of
y
.
The eigenvalues are not passed to this routine but are read directly from the diagonal blocks of
T
.
This routine returns one or both of the matrices
X
and
Y
of the right and left eigenvectors of
T
, or one or both of the products
Q*X
and
Q*Y
, where
Q
is an input matrix.
If
Q
is the orthogonal/unitary factor that reduces a matrix
A
to Schur form
T
, then
Q*X
and
Q*Y
are the matrices of the right and left eigenvectors of
A
.
Input Parameters
side
CHARACTER*1
Must be
'R'
,
'L'
, or