HTRID3(3F)

HTRID3, SHTRID3 - EISPACK routine. This subroutine reduces a COMPLEX HERMITIAN matrix, stored as a single square array, to a real symmetric tridiagonal matrix using unitary similarity transformations.

As shipped in IRIX 6.5.30. Unchanged since IRIX 6.5.

NAME
     HTRID3, SHTRID3  -  EISPACK routine.  This subroutine reduces a COMPLEX
     HERMITIAN matrix, stored as a single square array, to a real symmetric
     tridiagonal matrix using unitary similarity transformations.


SYNOPSYS
          subroutine  htrid3(nm, n, a, d, e, e2, tau)
          integer          nm, n
          double precision a(nm,n), d(n), e(n), e2(n), tau(2,n)

          subroutine shtrid3(nm, n, a, d, e, e2, tau)
          integer          nm, n
          real             a(nm,n), d(n), e(n), e2(n), tau(2,n)



DESCRIPTION
     On INPUT

     NM must be set to the row dimension of two-dimensional array parameters
     as declared in the calling program dimension statement.

     N is the order of the matrix.

     A contains the lower triangle of the complex hermitian input matrix.  The
     real parts of the matrix elements are stored in the full lower triangle
     of A, and the imaginary parts are stored in the transposed positions of
     the strict upper triangle of A.  No storage is required for the zero
     imaginary parts of the diagonal elements.  On OUTPUT

     A contains information about the unitary transformations used in the
     reduction.

     D contains the diagonal elements of the the tridiagonal matrix.

     E contains the subdiagonal elements of the tridiagonal matrix in its last
     N-1 positions.  E(1) is set to zero.

     E2 contains the squares of the corresponding elements of E. E2 may
     coincide with E if the squares are not needed.

     TAU contains further information about the transformations. 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