HQR2(3F)

HQR2, SHQR2 - EISPACK routine. This subroutine finds the eigenvalues and eigenvectors of a REAL UPPER Hessenberg matrix by the QR method. The eigenvectors of a REAL GENERAL matrix can also be found if ELMHES and ELTRAN or ORTHES and ORTRAN have been used to reduce this general matrix to Hessenberg form and to accumulate the similarity transformations.

As shipped in IRIX 6.5.22. Unchanged since IRIX 6.5.

NAME
     HQR2, SHQR2  -  EISPACK routine.  This subroutine finds the eigenvalues
     and eigenvectors of a REAL UPPER Hessenberg matrix by the QR method.  The
     eigenvectors of a REAL GENERAL matrix can also be found if  ELMHES  and
     ELTRAN  or  ORTHES  and  ORTRAN  have been used to reduce this general
     matrix to Hessenberg form and to accumulate the similarity
     transformations.


SYNOPSYS
          subroutine  hqr2(nm, n, low, igh, h, wr, wi, z, ierr)
          integer           nm, n, low, igh, ierr
          double precision h(nm,n), wr(n), wi(n), z(nm,n)

          subroutine shqr2(nm, n, low, igh, h, wr, wi, z, ierr)
          integer           nm, n, low, igh, ierr
          real             h(nm,n), wr(n), wi(n), z(nm,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.

     LOW and IGH are integers determined by the balancing subroutine  BALANC.
     If  BALANC  has not been used, set LOW=1, IGH=N.

     H contains the upper Hessenberg matrix.

     Z contains the transformation matrix produced by  ELTRAN after the
     reduction by  ELMHES, or by  ORTRAN  after the reduction by  ORTHES, if
     performed.  If the eigenvectors of the Hessenberg matrix are desired, Z
     must contain the identity matrix.  On OUTPUT

     H has been destroyed.

     WR and WI contain the real and imaginary parts, respectively, of the
     eigenvalues.  The eigenvalues are unordered except that complex conjugate
     pairs of values appear consecutively with the eigenvalue having the
     positive imaginary part first.  If an error exit is made, the eigenvalues
     should be correct for indices IERR+1,...,N.

     Z contains the real and imaginary parts of the eigenvectors. If the I-th
     eigenvalue is real, the I-th column of Z contains its eigenvector.  If
     the I-th eigenvalue is complex with positive imaginary part, the I-th and
     (I+1)-th columns of Z contain the real and imaginary parts of its
     eigenvector.  The eigenvectors are unnormalized.  If an error exit is
     made, none of the eigenvectors has been found.

     IERR is set to Zero       for normal return, J          if the J-th
     eigenvalue has not been
        determined after a total of 30*N iterations.  Calls CDIV for complex
     division.  Questions and comments should be directed to B. S. Garbow,
     APPLIED MATHEMATICS DIVISION, ARGONNE NATIONAL LABORATORY