Previous: ssterf Up: ../lapack-s.html Next: sstevx


sstev


 NAME
      SSTEV - compute all eigenvalues and, optionally, eigenvec-
      tors of a real symmetric tridiagonal matrix A

 SYNOPSIS
      SUBROUTINE SSTEV( JOBZ, N, D, E, Z, LDZ, WORK, INFO )

          CHARACTER     JOBZ

          INTEGER       INFO, LDZ, N

          REAL          D( * ), E( * ), WORK( * ), Z( LDZ, * )

 PURPOSE
      SSTEV computes all eigenvalues and, optionally, eigenvectors
      of a real symmetric tridiagonal matrix A.

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

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

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

      E       (input/workspace) REAL array, dimension (N)
              On entry, the (n-1) subdiagonal elements of the tri-
              diagonal matrix A, stored in elements 1 to N-1 of E;
              E(N) need not be set, but is used by the routine.
              On exit, the contents of E are destroyed.

      Z       (output) REAL 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 D(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) REAL array, dimension (max(1,2*N-2))
              If JOBZ = 'N', WORK is not referenced.

      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 E did not converge to
              zero.