Developer Reference

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

?laed7

Used by
?stedc
. Computes the updated eigensystem of a diagonal matrix after modification by a rank-one symmetric matrix. Used when the original matrix is dense.

Syntax

call slaed7
(
icompq
,
n
,
qsiz
,
tlvls
,
curlvl
,
curpbm
,
d
,
q
,
ldq
,
indxq
,
rho
,
cutpnt
,
qstore
,
qptr
,
prmptr
,
perm
,
givptr
,
givcol
,
givnum
,
work
,
iwork
,
info
)
call dlaed7
(
icompq
,
n
,
qsiz
,
tlvls
,
curlvl
,
curpbm
,
d
,
q
,
ldq
,
indxq
,
rho
,
cutpnt
,
qstore
,
qptr
,
prmptr
,
perm
,
givptr
,
givcol
,
givnum
,
work
,
iwork
,
info
)
call claed7
(
n
,
cutpnt
,
qsiz
,
tlvls
,
curlvl
,
curpbm
,
d
,
q
,
ldq
,
rho
,
indxq
,
qstore
,
qptr
,
prmptr
,
perm
,
givptr
,
givcol
,
givnum
,
work
,
rwork
,
iwork
,
info
)
call zlaed7
(
n
,
cutpnt
,
qsiz
,
tlvls
,
curlvl
,
curpbm
,
d
,
q
,
ldq
,
rho
,
indxq
,
qstore
,
qptr
,
prmptr
,
perm
,
givptr
,
givcol
,
givnum
,
work
,
rwork
,
iwork
,
info
)
Include Files
  • mkl.fi
Description
The routine
?laed7
computes the updated eigensystem of a diagonal matrix after modification by a rank-one symmetric matrix. This routine is used only for the eigenproblem which requires all eigenvalues and optionally eigenvectors of a dense symmetric/Hermitian matrix that has been reduced to tridiagonal form. For real flavors,
slaed1
/
dlaed1
handles the case in which all eigenvalues and eigenvectors of a symmetric tridiagonal matrix are desired.
T
=
Q
(in)*(
D
(in)+
rho
*
Z
*
Z
T
)*
Q
T
(in) =
Q
(out)*
D
(out)*
Q
T
(out)
for real flavors, or
T
=
Q
(in)*(
D
(in)+
rho
*
Z
*
Z
H
)*
Q
H
(in) =
Q
(out)*
D
(out)*
Q
H
(out)
for complex flavors
where
Z
=
Q
T
*
u
for real flavors and
Z
=
Q
H
*
u
for complex flavors,
u
is a vector of length
n
with ones in the
cutpnt
and (
cutpnt
+ 1
) -th elements and zeros elsewhere. The eigenvectors of the original matrix are stored in
Q
, and the eigenvalues are in
D
. The algorithm consists of three stages:
The first stage consists of deflating the size of the problem when there are multiple eigenvalues or if there is a zero in