Developer Reference

  • 0.10
  • 10/21/2020
  • Public Content
Contents

?larrf2

Finds a new relatively robust representation such that at least one of the eigenvalues is relatively isolated.

Syntax

void slarrf2
(
MKL_INT*
n
,
float*
d
,
float*
l
,
float*
ld
,
MKL_INT*
clstrt
,
MKL_INT*
clend
,
MKL_INT*
clmid1
,
MKL_INT*
clmid2
,
float*
w
,
float*
wgap
,
float*
werr
,
MKL_INT*
trymid
,
float*
spdiam
,
float*
clgapl
,
float*
clgapr
,
float*
pivmin
,
float*
sigma
,
float*
dplus
,
float*
lplus
,
float*
work
,
MKL_INT*
info
);
void dlarrf2
(
MKL_INT*
n
,
double*
d
,
double*
l
,
double*
ld
,
MKL_INT*
clstrt
,
MKL_INT*
clend
,
MKL_INT*
clmid1
,
MKL_INT*
clmid2
,
double*
w
,
double*
wgap
,
double*
werr
,
MKL_INT*
trymid
,
double*
spdiam
,
double*
clgapl
,
double*
clgapr
,
double*
pivmin
,
double*
sigma
,
double*
dplus
,
double*
lplus
,
double*
work
,
MKL_INT*
info
);
Include Files
  • mkl_scalapack.h
Description
Given the initial representation
L
D
L
T
and its cluster of close eigenvalues (in a relative measure),
defined by the indices of the first and last eigenvalues in the cluster
,
?larrf2
finds a new relatively robust representation
L
D
L
T
-
σ
I =
L
+
D
+
L
+
T
such that at least one of the eigenvalues of
L
+
D
+
L
+
T
is relatively isolated.
This is an enhanced version of
?larrf
that also tries shifts in the middle of the cluster, should there be a large gap, in order to break large clusters into at least two pieces.
Input Parameters
n
The order of the matrix (subblock, if the matrix was split).
d
Array of size
n
The
n
diagonal elements of the diagonal matrix
D
.
l
Array of size
n
-1
The (
n
-1) subdiagonal elements of the unit bidiagonal matrix
L
.
ld
Array of size
n
-1
The (
n
-1) elements
l
[
i
]*
d
[
i
]
.
clstrt
The index of the first eigenvalue in the cluster.
clend
The index of the last eigenvalue in the cluster.
clmid1
,
clmid2
The index of a middle eigenvalue pair with large gap.
w
Array of size
(
clend
-
clstrt
+1)
The eigenvalue approximations of
L
D
L
T
in ascending order.
w
[
clstrt
- 1]
through
w
[
clend
- 1]
form the cluster of relatively close eigenalues.
wgap
Array of size
(
clend
-
clstrt
+1)
The separation from the right neighbor eigenvalue in
w
.
werr
Array of size
(
clend
-
clstrt
+1)
werr
contains the semiwidth of the uncertainty interval of the corresponding eigenvalue approximation in
w
.
spdiam
Estimate of the spectral diameter obtained from the Gerschgorin intervals
clgapl
,
clgapr
Absolute gap on each end of the cluster.
Set by the calling
function
to protect against shifts too close to eigenvalues outside the cluster.
pivmin
The minimum pivot allowed in the Sturm sequence.
work
Workspace array of size 2*
n
OUTPUT Parameters
wgap
Contains refined values of its input approximations. Very small gaps are unchanged.
sigma
The shift (
σ
) used to form
L
+
D
+
L
+
T
.
dplus
Array of size
n
The
n
diagonal elements of the diagonal matrix
D
+
.
lplus
Array of size
n
-1
The first (
n
-1) elements of
lplus
contain the subdiagonal elements of the unit bidiagonal matrix
L
+
.

Product and Performance Information

1

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