Developer Reference

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

?stegr2b

From eigenvalues and initial representations computes the selected eigenvalues and eigenvectors of the real symmetric tridiagonal matrix in parallel on multiple processors.

Syntax

call sstegr2b
(
jobz
,
n
,
d
,
e
,
m
,
w
,
z
,
ldz
,
nzc
,
isuppz
,
work
,
lwork
,
iwork
,
liwork
,
dol
,
dou
,
needil
,
neediu
,
indwlc
,
pivmin
,
scale
,
wl
,
wu
,
vstart
,
finish
,
maxcls
,
ndepth
,
parity
,
zoffset
,
info
)
call dstegr2b
(
jobz
,
n
,
d
,
e
,
m
,
w
,
z
,
ldz
,
nzc
,
isuppz
,
work
,
lwork
,
iwork
,
liwork
,
dol
,
dou
,
needil
,
neediu
,
indwlc
,
pivmin
,
scale
,
wl
,
wu
,
vstart
,
finish
,
maxcls
,
ndepth
,
parity
,
zoffset
,
info
)
Description
?stegr2b
should only be called after a call to
?stegr2a
. From eigenvalues and initial representations computed by
?stegr2a
,
?stegr2b
computes the selected eigenvalues and eigenvectors of the real symmetric tridiagonal matrix in parallel on multiple processors. It is potentially invoked multiple times on a given processor because the locally relevant representation tree might depend on spectral information that is "owned" by other processors and might need to be communicated.
Please note:
  • The calling sequence has two additional integer parameters,
    dol
    and
    dou
    , that should satisfy
    m
    dou
    dol
    1. These parameters are only relevant for the case
    jobz
    = 'V'.
    ?stegr2b
    only computes the eigenvectors corresponding to eigenvalues
    dol
    through
    dou
    in
    w
    . (That is, instead of computing the eigenvectors belonging to
    w
    (1) through
    w
    (
    m
    )
    , only the eigenvectors belonging to eigenvalues
    w
    (
    dol
    ) through
    w
    (
    dou
    )
    are computed. In this case, only the eigenvalues
    dol
    :
    dou
    are guaranteed to be accurately refined to all figures by Rayleigh-Quotient iteration.
  • The additional arguments
    vstart
    ,
    finish
    ,
    ndepth
    ,
    parity
    ,
    zoffset
    are included as a thread-safe implementation equivalent to save variables. These variables store details about the local representation tree which is computed layerwise. For scalability reasons, eigenvalues belonging to the locally relevant representation tree might be computed on other processors. These need to be communicated before the inspection of the RRRs can proceed on any given layer. Note that only when the variable
    finish
    equals
    .TRUE.
    , the computation has ended. All eigenpairs between
    dol
    and
    dou
    have been computed.
    m
    is set to
    dou
    -
    dol
    + 1.
  • ?stegr2b
    needs more workspace in
    z
    than the sequential
    ?stegr
    . It is used to store the conformal embedding of the local representation tree.
Optimization Notice
Intel's compilers may or may not optimize to the same degree for non-Intel microprocessors for optimizations that are not unique to Intel microprocessors. These optimizations include SSE2, SSE3, and SSSE3 instruction sets and other optimizations. Intel does not guarantee the availability, functionality, or effectiveness of any optimization on microprocessors not manufactured by Intel. Microprocessor-dependent optimizations in this product are intended for use with Intel microprocessors. Certain optimizations not specific to Intel microarchitecture are reserved for Intel microprocessors. Please refer to the applicable product User and Reference Guides for more information regarding the specific instruction sets covered by this notice.
Notice revision #20110804
This notice covers the following instruction sets: SSE2, SSE4.2, AVX2, AVX-512.
Input Parameters
jobz
CHARACTER*1
= 'N': Compute eigenvalues only;
= 'V': Compute eigenvalues and eigenvectors.
n
INTEGER