DSBEV(3)              LAPACK driver routine (version 3.1)             DSBEV(3)



NAME
       DSBEV  -  all  the  eigenvalues and, optionally, eigenvectors of a real
       symmetric band matrix A

SYNOPSIS
       SUBROUTINE DSBEV( JOBZ, UPLO, N, KD, AB, LDAB, W, Z, LDZ, WORK, INFO )

           CHARACTER     JOBZ, UPLO

           INTEGER       INFO, KD, LDAB, LDZ, N

           DOUBLE        PRECISION AB( LDAB, * ), W( * ), WORK( * ), Z( LDZ, *
                         )

PURPOSE
       DSBEV  computes  all the eigenvalues and, optionally, eigenvectors of a
       real symmetric band matrix A.


ARGUMENTS
       JOBZ    (input) CHARACTER*1
               = 'N':  Compute eigenvalues only;
               = 'V':  Compute eigenvalues and eigenvectors.

       UPLO    (input) CHARACTER*1
               = 'U':  Upper triangle of A is stored;
               = 'L':  Lower triangle of A is stored.

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

       KD      (input) INTEGER
               The number of superdiagonals of the matrix A if UPLO = 'U',  or
               the number of subdiagonals if UPLO = 'L'.  KD >= 0.

       AB      (input/output) DOUBLE PRECISION array, dimension (LDAB, N)
               On  entry,  the  upper  or lower triangle of the symmetric band
               matrix A, stored in the first KD+1 rows of the array.  The j-th
               column  of  A  is  stored in the j-th column of the array AB as
               follows: if UPLO = 'U', AB(kd+1+i-j,j) =  A(i,j)  for  max(1,j-
               kd)<=i<=j;   if   UPLO  =  'L',  AB(1+i-j,j)     =  A(i,j)  for
               j<=i<=min(n,j+kd).

               On exit, AB is  overwritten  by  values  generated  during  the
               reduction to tridiagonal form.  If UPLO = 'U', the first super-
               diagonal and the diagonal  of  the  tridiagonal  matrix  T  are
               returned  in  rows  KD  and  KD+1 of AB, and if UPLO = 'L', the
               diagonal and first subdiagonal of T are returned in  the  first
               two rows of AB.

       LDAB    (input) INTEGER
               The leading dimension of the array AB.  LDAB >= KD + 1.

       W       (output) DOUBLE PRECISION array, dimension (N)
               If INFO = 0, the eigenvalues in ascending order.

       Z       (output) DOUBLE PRECISION array, dimension (LDZ, N)
               If  JOBZ  =  'V',  then if INFO = 0, Z contains the orthonormal
               eigenvectors of the matrix A, with the i-th column of Z holding
               the eigenvector associated with W(i).  If JOBZ = 'N', then Z is
               not referenced.

       LDZ     (input) INTEGER
               The leading dimension of the array Z.  LDZ >= 1, and if JOBZ  =
               'V', LDZ >= max(1,N).

       WORK    (workspace) DOUBLE PRECISION array, dimension (max(1,3*N-2))

       INFO    (output) INTEGER
               = 0:  successful exit
               < 0:  if INFO = -i, the i-th argument had an illegal value
               >  0:   if  INFO  = i, the algorithm failed to converge; i off-
               diagonal elements of an intermediate tridiagonal form  did  not
               converge to zero.



 LAPACK driver routine (version 3.N1o)vember 2006                        DSBEV(3)