# larrf - Man Page

larrf: step in stemr, find relative robust representation (RRR)

## Synopsis

### Functions

subroutine **dlarrf** (n, d, l, ld, clstrt, clend, w, wgap, werr, spdiam, clgapl, clgapr, pivmin, sigma, dplus, lplus, work, info)**DLARRF** finds a new relatively robust representation such that at least one of the eigenvalues is relatively isolated.

subroutine **slarrf** (n, d, l, ld, clstrt, clend, w, wgap, werr, spdiam, clgapl, clgapr, pivmin, sigma, dplus, lplus, work, info)**SLARRF** finds a new relatively robust representation such that at least one of the eigenvalues is relatively isolated.

## Detailed Description

## Function Documentation

### 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.

**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.

**Parameters***N*N is INTEGER The order of the matrix (subblock, if the matrix split).

*D*D is DOUBLE PRECISION array, dimension (N) The N diagonal elements of the diagonal matrix D.

*L*L is DOUBLE PRECISION array, dimension (N-1) The (N-1) subdiagonal elements of the unit bidiagonal matrix L.

*LD*LD is DOUBLE PRECISION array, dimension (N-1) The (N-1) elements L(i)*D(i).

*CLSTRT*CLSTRT is INTEGER The index of the first eigenvalue in the cluster.

*CLEND*CLEND is INTEGER The index of the last eigenvalue in the cluster.

*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.

*WGAP*WGAP is DOUBLE PRECISION array, dimension dimension is >= (CLEND-CLSTRT+1) The separation from the right neighbor eigenvalue in W.

*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

*SPDIAM*SPDIAM is DOUBLE PRECISION estimate of the spectral diameter obtained from the Gerschgorin intervals

*CLGAPL*CLGAPL is DOUBLE PRECISION

*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.

*PIVMIN*PIVMIN is DOUBLE PRECISION The minimum pivot allowed in the Sturm sequence.

*SIGMA*SIGMA is DOUBLE PRECISION The shift used to form L(+) D(+) L(+)^T.

*DPLUS*DPLUS is DOUBLE PRECISION array, dimension (N) The N diagonal elements of the diagonal matrix D(+).

*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(+).

*WORK*WORK is DOUBLE PRECISION array, dimension (2*N) Workspace.

*INFO*INFO is INTEGER Signals processing OK (=0) or failure (=1)

**Author**Univ. of Tennessee

Univ. of California Berkeley

Univ. of Colorado Denver

NAG Ltd.

**Contributors:**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

Definition at line **189** of file **dlarrf.f**.

### subroutine slarrf (integer n, real, dimension( * ) d, real, dimension( * ) l, real, dimension( * ) ld, integer clstrt, integer clend, real, dimension( * ) w, real, dimension( * ) wgap, real, dimension( * ) werr, real spdiam, real clgapl, real clgapr, real pivmin, real sigma, real, dimension( * ) dplus, real, dimension( * ) lplus, real, dimension( * ) work, integer info)

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

**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 ), SLARRF 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.

**Parameters***N*N is INTEGER The order of the matrix (subblock, if the matrix split).

*D*D is REAL array, dimension (N) The N diagonal elements of the diagonal matrix D.

*L*L is REAL array, dimension (N-1) The (N-1) subdiagonal elements of the unit bidiagonal matrix L.

*LD*LD is REAL array, dimension (N-1) The (N-1) elements L(i)*D(i).

*CLSTRT*CLSTRT is INTEGER The index of the first eigenvalue in the cluster.

*CLEND*CLEND is INTEGER The index of the last eigenvalue in the cluster.

*W*W is REAL 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*WGAP is REAL array, dimension dimension is >= (CLEND-CLSTRT+1) The separation from the right neighbor eigenvalue in W.

*WERR*WERR is REAL array, dimension dimension is >= (CLEND-CLSTRT+1) WERR contain the semiwidth of the uncertainty interval of the corresponding eigenvalue APPROXIMATION in W

*SPDIAM*SPDIAM is REAL estimate of the spectral diameter obtained from the Gerschgorin intervals

*CLGAPL*CLGAPL is REAL

*CLGAPR*CLGAPR is REAL 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*PIVMIN is REAL The minimum pivot allowed in the Sturm sequence.

*SIGMA*SIGMA is REAL The shift used to form L(+) D(+) L(+)^T.

*DPLUS*DPLUS is REAL array, dimension (N) The N diagonal elements of the diagonal matrix D(+).

*LPLUS*LPLUS is REAL array, dimension (N-1) The first (N-1) elements of LPLUS contain the subdiagonal elements of the unit bidiagonal matrix L(+).

*WORK*WORK is REAL array, dimension (2*N) Workspace.

*INFO*INFO is INTEGER Signals processing OK (=0) or failure (=1)

**Author**Univ. of Tennessee

Univ. of California Berkeley

Univ. of Colorado Denver

NAG Ltd.

**Contributors:**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

Definition at line **189** of file **slarrf.f**.

## Author

Generated automatically by Doxygen for LAPACK from the source code.