Provided by: scalapack-doc_1.5-11_all bug

NAME

       SSTEQR2 - i a modified version of LAPACK routine SSTEQR

SYNOPSIS

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

           CHARACTER       COMPZ

           INTEGER         INFO, LDZ, N, NR

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

PURPOSE

       SSTEQR2  is a modified version of LAPACK routine SSTEQR.  SSTEQR2 computes all eigenvalues
       and, optionally, eigenvectors of a symmetric tridiagonal matrix using the implicit  QL  or
       QR method.  running SSTEQR2 to perform updates on a distributed matrix Q.  Proper usage of
       SSTEQR2 can be gleaned from examination of ScaLAPACK's PSSYEV.

ARGUMENTS

       COMPZ   (input) CHARACTER*1
               = 'N':  Compute eigenvalues only.
               = 'I':  Compute eigenvalues and eigenvectors of the tridiagonal matrix.  Z must be
               initialized  to  the  identity  matrix by PDLASET or DLASET prior to entering this
               subroutine.

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

       D       (input/output) REAL 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) REAL array, dimension (N-1)
               On  entry,  the  (n-1) subdiagonal elements of the tridiagonal matrix.  On exit, E
               has been destroyed.

       Z       (local input/local output) REAL array, global
               dimension (N, N), local dimension (LDZ, NR).  On entry, if  COMPZ =  'V',  then  Z
               contains  the  orthogonal  matrix  used  in the reduction to tridiagonal form.  On
               exit, if INFO = 0, then if  COMPZ = 'V', Z contains the  orthonormal  eigenvectors
               of  the  original symmetric matrix, and if COMPZ = 'I', Z contains the orthonormal
               eigenvectors 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).

       NR      (input) INTEGER
               NR = MAX(1, NUMROC( N, NB, MYPROW, 0, NPROCS ) ).  If COMPZ = 'N', then NR is  not
               referenced.

       WORK    (workspace) REAL 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 illegal 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.