DSTEQR  -  compute all eigenvalues and, optionally, eigen­
       vectors  of  a  symmetric  tridiagonal  matrix  using  the
       implicit QL or QR method


SYNOPSIS

       SUBROUTINE DSTEQR( COMPZ, N, D, E, Z, LDZ, WORK, INFO )

           CHARACTER      COMPZ

           INTEGER        INFO, LDZ, N

           DOUBLE         PRECISION D( * ), E( * ), WORK( * ), Z(
                          LDZ, * )


PURPOSE

       DSTEQR computes all eigenvalues and, optionally, eigenvec­
       tors  of a symmetric tridiagonal matrix using the implicit
       QL or QR method. The eigenvectors of a full or  band  sym­
       metric  matrix  can  also  be found if DSYTRD or DSPTRD or
       DSBTRD has been used to reduce this matrix to  tridiagonal
       form.


ARGUMENTS

       COMPZ   (input) CHARACTER*1
               = 'N':  Compute eigenvalues only.
               =  'V':   Compute  eigenvalues and eigenvectors of
               the original symmetric matrix.  On entry,  Z  must
               contain  the  orthogonal matrix used to reduce the
               original matrix to tridiagonal form.  = 'I':  Com­
               pute eigenvalues and eigenvectors of the tridiago­
               nal matrix.  Z  is  initialized  to  the  identity
               matrix.

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

       D       (input/output) DOUBLE PRECISION array, dimension
               (N)
               On entry, the diagonal elements of the tridiagonal
               matrix.   On exit, if INFO = 0, the eigenvalues in
               ascending order.

       E       (input/output) DOUBLE PRECISION array, dimension
               (N-1)
               On  entry,  the  (n-1) subdiagonal elements of the
               tridiagonal  matrix.   On   exit,   E   has   been
               destroyed.

       Z       (input/output) DOUBLE PRECISION array, dimension
               (LDZ, N)
               On  entry,  if   COMPZ  = 'V', then Z contains the
               orthogonal  matrix  used  in  the   reduction   to

               COMPZ = 'V', Z contains the orthonormal  eigenvec­
               tors  of  the  original  symmetric  matrix, and if
               COMPZ = 'I', Z contains the orthonormal  eigenvec­
               tors  of  the  symmetric  tridiagonal  matrix.  If
               COMPZ = 'N', then Z is not referenced.

       LDZ     (input) INTEGER
               The leading dimension of the array Z.  LDZ  >=  1,
               and  if  eigenvectors  are  desired,  then  LDZ >=
               max(1,N).

       WORK      (workspace)   DOUBLE   PRECISION    array,
               dimension (max(1,2*N-2))
               If COMPZ = 'N', then WORK is not referenced.

       INFO    (output) INTEGER
               = 0:  successful exit
               < 0:  if INFO = -i, the i-th argument had an ille­
               gal value
               >  0:   the  algorithm  has failed to find all the
               eigenvalues in a total of 30*N iterations; if INFO
               =  i,  then  i elements of E have not converged to
               zero; on exit, D and E contain the elements  of  a
               symmetric tridiagonal matrix which is orthogonally
               similar to the original matrix.


Man(1) output converted with man2html