?larrf2
?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 sizenThendiagonal elements of the diagonal matrixD.
- l
- Array of sizen-1The (n-1) subdiagonal elements of the unit bidiagonal matrixL.
- ld
- Array of sizen-1The (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 ofLDLTin ascending order.throughw[clstrt- 1]form the cluster of relatively close eigenalues.w[clend- 1]
- wgap
- Array of size≥(clend-clstrt+1)The separation from the right neighbor eigenvalue inw.
- werr
- Array of size≥(clend-clstrt+1)werrcontains the semiwidth of the uncertainty interval of the corresponding eigenvalue approximation inw.
- spdiam
- Estimate of the spectral diameter obtained from the Gerschgorin intervals
- clgapl,clgapr
- Absolute gap on each end of the cluster.Set by the callingfunctionto 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 formL+D+L+T.
- dplus
- Array of sizenThendiagonal elements of the diagonal matrixD+.
- lplus
- Array of sizen-1The first (n-1) elements oflpluscontain the subdiagonal elements of the unit bidiagonal matrixL+.