Provided by: liblapack-doc_3.3.1-1_all bug

NAME

       LAPACK-3 - the splitting points with threshold SPLTOL

SYNOPSIS

       SUBROUTINE SLARRA( N, D, E, E2, SPLTOL, TNRM, NSPLIT, ISPLIT, INFO )

           IMPLICIT       NONE

           INTEGER        INFO, N, NSPLIT

           REAL           SPLTOL, TNRM

           INTEGER        ISPLIT( * )

           REAL           D( * ), E( * ), E2( * )

PURPOSE

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

ARGUMENTS

        N       (input) INTEGER
                The order of the matrix. N > 0.

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

        E       (input/output) 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      (input/output) 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 (input) 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 (input) REAL
                The norm of the matrix.

        NSPLIT  (output) INTEGER
                The number of blocks T splits into. 1 <= NSPLIT <= N.

        ISPLIT  (output) 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    (output) INTEGER
                = 0:  successful exit

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)     April 2011                            SLARRA(3lapack)