Developer Reference for Intel® oneAPI Math Kernel Library for C
A newer version of this document is available. Customers should click here to go to the newest version.
?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 LDLT 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 LDLT - σ 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 LD LT 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+.