![]() |
LAPACK 3.12.0
LAPACK: Linear Algebra PACKage
|
| subroutine dlarrf | ( | integer | n, |
| double precision, dimension( * ) | d, | ||
| double precision, dimension( * ) | l, | ||
| double precision, dimension( * ) | ld, | ||
| integer | clstrt, | ||
| integer | clend, | ||
| double precision, dimension( * ) | w, | ||
| double precision, dimension( * ) | wgap, | ||
| double precision, dimension( * ) | werr, | ||
| double precision | spdiam, | ||
| double precision | clgapl, | ||
| double precision | clgapr, | ||
| double precision | pivmin, | ||
| double precision | sigma, | ||
| double precision, dimension( * ) | dplus, | ||
| double precision, dimension( * ) | lplus, | ||
| double precision, dimension( * ) | work, | ||
| integer | info | ||
| ) |
DLARRF finds a new relatively robust representation such that at least one of the eigenvalues is relatively isolated.
Download DLARRF + dependencies [TGZ] [ZIP] [TXT]
Given the initial representation L D L^T and its cluster of close eigenvalues (in a relative measure), W( CLSTRT ), W( CLSTRT+1 ), ... W( CLEND ), DLARRF finds a new relatively robust representation L D L^T - SIGMA I = L(+) D(+) L(+)^T such that at least one of the eigenvalues of L(+) D(+) L(+)^T is relatively isolated.
| [in] | N | N is INTEGER
The order of the matrix (subblock, if the matrix split). |
| [in] | D | D is DOUBLE PRECISION array, dimension (N)
The N diagonal elements of the diagonal matrix D. |
| [in] | L | L is DOUBLE PRECISION array, dimension (N-1)
The (N-1) subdiagonal elements of the unit bidiagonal
matrix L. |
| [in] | LD | LD is DOUBLE PRECISION array, dimension (N-1)
The (N-1) elements L(i)*D(i). |
| [in] | CLSTRT | CLSTRT is INTEGER
The index of the first eigenvalue in the cluster. |
| [in] | CLEND | CLEND is INTEGER
The index of the last eigenvalue in the cluster. |
| [in] | W | W is DOUBLE PRECISION array, dimension
dimension is >= (CLEND-CLSTRT+1)
The eigenvalue APPROXIMATIONS of L D L^T in ascending order.
W( CLSTRT ) through W( CLEND ) form the cluster of relatively
close eigenalues. |
| [in,out] | WGAP | WGAP is DOUBLE PRECISION array, dimension
dimension is >= (CLEND-CLSTRT+1)
The separation from the right neighbor eigenvalue in W. |
| [in] | WERR | WERR is DOUBLE PRECISION array, dimension
dimension is >= (CLEND-CLSTRT+1)
WERR contain the semiwidth of the uncertainty
interval of the corresponding eigenvalue APPROXIMATION in W |
| [in] | SPDIAM | SPDIAM is DOUBLE PRECISION
estimate of the spectral diameter obtained from the
Gerschgorin intervals |
| [in] | CLGAPL | CLGAPL is DOUBLE PRECISION |
| [in] | CLGAPR | CLGAPR is DOUBLE PRECISION
absolute gap on each end of the cluster.
Set by the calling routine to protect against shifts too close
to eigenvalues outside the cluster. |
| [in] | PIVMIN | PIVMIN is DOUBLE PRECISION
The minimum pivot allowed in the Sturm sequence. |
| [out] | SIGMA | SIGMA is DOUBLE PRECISION
The shift used to form L(+) D(+) L(+)^T. |
| [out] | DPLUS | DPLUS is DOUBLE PRECISION array, dimension (N)
The N diagonal elements of the diagonal matrix D(+). |
| [out] | LPLUS | LPLUS is DOUBLE PRECISION array, dimension (N-1)
The first (N-1) elements of LPLUS contain the subdiagonal
elements of the unit bidiagonal matrix L(+). |
| [out] | WORK | WORK is DOUBLE PRECISION array, dimension (2*N)
Workspace. |
| [out] | INFO | INFO is INTEGER
Signals processing OK (=0) or failure (=1) |