Provided by: liblapack-doc_3.3.1-1_all

**NAME**

LAPACK-3 - the initial representation L D L^T and its cluster of close eigenvalues (in a relative measure), W( CLSTRT ), W( CLSTRT+1 ), ..

**SYNOPSIS**

SUBROUTINE DLARRF( N, D, L, LD, CLSTRT, CLEND, W, WGAP, WERR, SPDIAM, CLGAPL, CLGAPR, PIVMIN, SIGMA, DPLUS, LPLUS, WORK, INFO ) INTEGER CLSTRT, CLEND, INFO, N DOUBLE PRECISION CLGAPL, CLGAPR, PIVMIN, SIGMA, SPDIAM DOUBLE PRECISION D( * ), DPLUS( * ), L( * ), LD( * ), LPLUS( * ), W( * ), WGAP( * ), WERR( * ), WORK( * )

**PURPOSE**

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.

**ARGUMENTS**

N (input) INTEGER The order of the matrix (subblock, if the matrix splitted). D (input) DOUBLE PRECISION array, dimension (N) The N diagonal elements of the diagonal matrix D. L (input) DOUBLE PRECISION array, dimension (N-1) The (N-1) subdiagonal elements of the unit bidiagonal matrix L. LD (input) DOUBLE PRECISION array, dimension (N-1) The (N-1) elements L(i)*D(i). CLSTRT (input) INTEGER The index of the first eigenvalue in the cluster. CLEND (input) INTEGER The index of the last eigenvalue in the cluster. W (input) 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. WGAP (input/output) DOUBLE PRECISION array, dimension dimension is >= (CLEND-CLSTRT+1) The separation from the right neighbor eigenvalue in W. WERR (input) DOUBLE PRECISION array, dimension dimension is >= (CLEND-CLSTRT+1) WERR contain the semiwidth of the uncertainty interval of the corresponding eigenvalue APPROXIMATION in W SPDIAM (input) DOUBLE PRECISION estimate of the spectral diameter obtained from the Gerschgorin intervals CLGAPL (input) DOUBLE PRECISION CLGAPR (input) 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. PIVMIN (input) DOUBLE PRECISION The minimum pivot allowed in the Sturm sequence. SIGMA (output) DOUBLE PRECISION The shift used to form L(+) D(+) L(+)^T. DPLUS (output) DOUBLE PRECISION array, dimension (N) The N diagonal elements of the diagonal matrix D(+). LPLUS (output) DOUBLE PRECISION array, dimension (N-1) The first (N-1) elements of LPLUS contain the subdiagonal elements of the unit bidiagonal matrix L(+). WORK (workspace) DOUBLE PRECISION array, dimension (2*N) Workspace. INFO (output) INTEGER Signals processing OK (=0) or failure (=1)

**FURTHER** **DETAILS**

Based on contributions by Beresford Parlett, University of California, Berkeley, USA Jim Demmel, University of California, Berkeley, USA Inderjit Dhillon, University of Texas, Austin, USA Osni Marques, LBNL/NERSC, USA Christof Voemel, University of California, Berkeley, USA LAPACK auxiliary routine (version 3.2.2) April 2011 DLARRF(3lapack)