# larra - Man Page

larra: step in stemr

## Synopsis

### Functions

subroutine **dlarra** (n, d, e, e2, spltol, tnrm, nsplit, isplit, info)**DLARRA** computes the splitting points with the specified threshold.

subroutine **slarra** (n, d, e, e2, spltol, tnrm, nsplit, isplit, info)**SLARRA** computes the splitting points with the specified threshold.

## Detailed Description

## Function Documentation

### subroutine dlarra (integer n, double precision, dimension( * ) d, double precision, dimension( * ) e, double precision, dimension( * ) e2, double precision spltol, double precision tnrm, integer nsplit, integer, dimension( * ) isplit, integer info)

**DLARRA** computes the splitting points with the specified threshold.

**Purpose:**

Compute the splitting points with threshold SPLTOL. DLARRA sets any 'small' off-diagonal elements to zero.

**Parameters***N*N is INTEGER The order of the matrix. N > 0.

*D*D is DOUBLE PRECISION array, dimension (N) On entry, the N diagonal elements of the tridiagonal matrix T.

*E*E is DOUBLE PRECISION array, dimension (N) On entry, the first (N-1) entries contain the subdiagonal elements of the tridiagonal matrix T; E(N) need not be set. On exit, the entries E( ISPLIT( I ) ), 1 <= I <= NSPLIT, are set to zero, the other entries of E are untouched.

*E2*E2 is DOUBLE PRECISION array, dimension (N) On entry, the first (N-1) entries contain the SQUARES of the subdiagonal elements of the tridiagonal matrix T; E2(N) need not be set. On exit, the entries E2( ISPLIT( I ) ), 1 <= I <= NSPLIT, have been set to zero

*SPLTOL*SPLTOL is DOUBLE PRECISION The threshold for splitting. Two criteria can be used: SPLTOL<0 : criterion based on absolute off-diagonal value SPLTOL>0 : criterion that preserves relative accuracy

*TNRM*TNRM is DOUBLE PRECISION The norm of the matrix.

*NSPLIT*NSPLIT is INTEGER The number of blocks T splits into. 1 <= NSPLIT <= N.

*ISPLIT*ISPLIT is INTEGER array, dimension (N) The splitting points, at which T breaks up into blocks. The first block consists of rows/columns 1 to ISPLIT(1), the second of rows/columns ISPLIT(1)+1 through ISPLIT(2), etc., and the NSPLIT-th consists of rows/columns ISPLIT(NSPLIT-1)+1 through ISPLIT(NSPLIT)=N.

*INFO*INFO is INTEGER = 0: successful exit

**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 **134** of file **dlarra.f**.

### subroutine slarra (integer n, real, dimension( * ) d, real, dimension( * ) e, real, dimension( * ) e2, real spltol, real tnrm, integer nsplit, integer, dimension( * ) isplit, integer info)

**SLARRA** computes the splitting points with the specified threshold.

**Purpose:**

Compute the splitting points with threshold SPLTOL. SLARRA sets any 'small' off-diagonal elements to zero.

**Parameters***N*N is INTEGER The order of the matrix. N > 0.

*D*D is REAL array, dimension (N) On entry, the N diagonal elements of the tridiagonal matrix T.

*E*E is REAL array, dimension (N) On entry, the first (N-1) entries contain the subdiagonal elements of the tridiagonal matrix T; E(N) need not be set. On exit, the entries E( ISPLIT( I ) ), 1 <= I <= NSPLIT, are set to zero, the other entries of E are untouched.

*E2*E2 is REAL array, dimension (N) On entry, the first (N-1) entries contain the SQUARES of the subdiagonal elements of the tridiagonal matrix T; E2(N) need not be set. On exit, the entries E2( ISPLIT( I ) ), 1 <= I <= NSPLIT, have been set to zero

*SPLTOL*SPLTOL is REAL The threshold for splitting. Two criteria can be used: SPLTOL<0 : criterion based on absolute off-diagonal value SPLTOL>0 : criterion that preserves relative accuracy

*TNRM*TNRM is REAL The norm of the matrix.

*NSPLIT*NSPLIT is INTEGER The number of blocks T splits into. 1 <= NSPLIT <= N.

*ISPLIT*ISPLIT is INTEGER array, dimension (N) The splitting points, at which T breaks up into blocks. The first block consists of rows/columns 1 to ISPLIT(1), the second of rows/columns ISPLIT(1)+1 through ISPLIT(2), etc., and the NSPLIT-th consists of rows/columns ISPLIT(NSPLIT-1)+1 through ISPLIT(NSPLIT)=N.

*INFO*INFO is INTEGER = 0: successful exit

**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 **134** of file **slarra.f**.

## Author

Generated automatically by Doxygen for LAPACK from the source code.