ddisna(3S)

DDISNA - compute the reciprocal condition numbers for the eigenvectors of a real symmetric or complex Hermitian matrix or for the left or right singular vectors of a general m-by-n matrix

As shipped in IRIX 6.5.30. Added in IRIX 6.5.15.

NAME
     DDISNA - compute the reciprocal condition numbers for the eigenvectors of
     a real symmetric or complex Hermitian matrix or for the left or right
     singular vectors of a general m-by-n matrix

SYNOPSIS
     SUBROUTINE DDISNA( JOB, M, N, D, SEP, INFO )

         CHARACTER      JOB

         INTEGER        INFO, M, N

         DOUBLE         PRECISION D( * ), SEP( * )

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
     DDISNA computes the reciprocal condition numbers for the eigenvectors of
     a real symmetric or complex Hermitian matrix or for the left or right
     singular vectors of a general m-by-n matrix. The reciprocal condition
     number is the 'gap' between the corresponding eigenvalue or singular
     value and the nearest other one.

     The bound on the error, measured by angle in radians, in the I-th
     computed vector is given by

            DLAMCH( 'E' ) * ( ANORM / SEP( I ) )

     where ANORM = 2-norm(A) = max( abs( D(j) ) ).  SEP(I) is not allowed to
     be smaller than DLAMCH( 'E' )*ANORM in order to limit the size of the
     error bound.

     DDISNA may also be used to compute error bounds for eigenvectors of the
     generalized symmetric definite eigenproblem.


ARGUMENTS
     JOB     (input) CHARACTER*1
             Specifies for which problem the reciprocal condition numbers
             should be computed:
             = 'E':  the eigenvectors of a symmetric/Hermitian matrix;
             = 'L':  the left singular vectors of a general matrix;
             = 'R':  the right singular vectors of a general matrix.

     M       (input) INTEGER
             The number of rows of the matrix. M >= 0.

     N       (input) INTEGER
             If JOB = 'L' or 'R', the number of columns of the matrix, in
             which case N >= 0. Ignored if JOB = 'E'.

     D       (input) DOUBLE PRECISION array, dimension (M) if JOB = 'E'
             dimension (min(M,N)) if JOB = 'L' or 'R' The eigenvalues (if JOB
             = 'E') or singular values (if JOB = order. If singular values,
             they must be non-negative.

     SEP     (output) DOUBLE PRECISION array, dimension (M) if JOB = 'E'
             dimension (min(M,N)) if JOB = 'L' or 'R' The reciprocal condition
             numbers of the vectors.

     INFO    (output) INTEGER
             = 0:  successful exit.
             < 0:  if INFO = -i, the i-th argument had an illegal value.

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

     This man page is available only online.