dlarrf(3S)

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

As shipped in IRIX 6.5.19. Last changed in IRIX 6.5.19.

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

SYNOPSIS
     SUBROUTINE DLARRF( N, D, L, LD, LLD, IFIRST, ILAST, W, DPLUS, LPLUS,
                        WORK, IWORK, INFO )

         INTEGER        IFIRST, ILAST, INFO, N

         INTEGER        IWORK( * )

         DOUBLE         PRECISION D( * ), DPLUS( * ), L( * ), LD( * ), LLD( *
                        ), LPLUS( * ), W( * ), WORK( * )

IMPLEMENTATION
     These routines are part of the SCSL Scientific Library and can be loaded
     using either the -lscs or the -lscs_mp option.  The -lscs_mp option
     directs the linker to use the multi-processor version of the library.

     When linking to SCSL with -lscs or -lscs_mp, the default integer size is
     4 bytes (32 bits). Another version of SCSL is available in which integers
     are 8 bytes (64 bits).  This version allows the user access to larger
     memory sizes and helps when porting legacy Cray codes.  It can be loaded
     by using the -lscs_i8 option or the -lscs_i8_mp option. A program may use
     only one of the two versions; 4-byte integer and 8-byte integer library
     calls cannot be mixed.

PURPOSE
     Given the initial representation L D L^T and its cluster of close
     eigenvalues (in a relative measure), W( IFIRST ), W( IFIRST+1 ), ... W(
     ILAST ), 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.

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

     LLD     (input) DOUBLE PRECISION array, dimension (N-1)
             The n-1 elements L(i)*L(i)*D(i).
     IFIRST  (input) INTEGER
             The index of the first eigenvalue in the cluster.

     ILAST   (input) INTEGER
             The index of the last eigenvalue in the cluster.

     W       (input/output) DOUBLE PRECISION array, dimension (N)
             On input, the eigenvalues of L D L^T in ascending order.  W(
             IFIRST ) through W( ILAST ) form the cluster of relatively close
             eigenalues.  On output, W( IFIRST ) thru' W( ILAST ) are
             estimates of the corresponding eigenvalues of L(+) D(+) L(+)^T.

     SIGMA   (input) 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)
             The first (n-1) elements of LPLUS contain the subdiagonal
             elements of the unit bidiagonal matrix L(+). LPLUS( N ) is set to
             SIGMA.

     WORK    (input) DOUBLE PRECISION array, dimension (???)
             Workspace.

     IWORK   (input) INTEGER array, dimension (???)
             Workspace.

     INFO    (output) INTEGER
             = 0:  successful exit
             > 0:  if INFO = 1, IFIRST and ILAST had illegal values

FURTHER DETAILS
     Based on contributions by
        Inderjit Dhillon, IBM Almaden, USA
        Osni Marques, LBNL/NERSC, USA


SEE ALSO
     INTRO_LAPACK(3S), INTRO_SCSL(3S)

     This man page is available only online.