IMTQLV(3F)

IMTQLV, SIMTQLV - EISPACK routine. This subroutine is a variant of IMTQL1.

As shipped in IRIX 6.5.5. Unchanged since IRIX 6.5.

NAME
     IMTQLV, SIMTQLV  -  EISPACK routine.  This subroutine is a variant of
     IMTQL1.


SYNOPSYS
          subroutine  imtqlv(n, d, e, e2, w, ind, ierr, rv1)
          integer          n, ierr, ind(n)
          double precision d(n), e(n), e2(n), w(n), rv1(n)

          subroutine simtqlv(n, d, e, e2, w, ind, ierr, rv1)
          integer          n, ierr, ind(n)
          real             d(n), e(n), e2(n), w(n), rv1(n)



DESCRIPTION
     This subroutine finds the eigenvalues of a SYMMETRIC TRIDIAGONAL matrix
     by the implicit QL method and associates with them their corresponding
     submatrix indices.

     On INPUT

     N is the order of the matrix.

     D contains the diagonal elements of the input matrix.

     E contains the subdiagonal elements of the input matrix in its last N-1
     positions.  E(1) is arbitrary.

     E2 contains the squares of the corresponding elements of E. E2(1) is
     arbitrary.  On OUTPUT

     D and E are unaltered. Elements of E2, corresponding to elements of E
     regarded as negligible, have been replaced by zero causing the matrix to
     split into a direct sum of submatrices.  E2(1) is also set to zero.

     W contains the eigenvalues in ascending order.  If an error exit is made,
     the eigenvalues are correct and ordered for indices 1,2,...IERR-1, but
     may not be the smallest eigenvalues.

     IND contains the submatrix indices associated with the corresponding
     eigenvalues in W -- 1 for eigenvalues belonging to the first submatrix
     from the top, 2 for those belonging to the second submatrix, etc.

     IERR is set to ZERO       for normal return, J          if the J-th
     eigenvalue has not been
        determined after 30 iterations.

     RV1 is a temporary storage array. Calls PYTHAG(A,B) for sqrt(A**2 +
     B**2).  Questions and comments should be directed to B. S. Garbow,
     APPLIED MATHEMATICS DIVISION, ARGONNE NATIONAL LABORATORY