COMQR2(3F)
COMQR2, SCOMQR2 - EISPACK routine. This subroutine finds the eigenvalues and eigenvectors of a COMPLEX UPPER Hessenberg matrix by the QR method. The eigenvectors of a COMPLEX GENERAL matrix can also be found if CORTH has been used to reduce this general matrix to Hessenberg form.
As shipped in IRIX 6.5.7. Unchanged since IRIX 6.5.
NAME COMQR2, SCOMQR2 - EISPACK routine. This subroutine finds the eigenvalues and eigenvectors of a COMPLEX UPPER Hessenberg matrix by the QR method. The eigenvectors of a COMPLEX GENERAL matrix can also be found if CORTH has been used to reduce this general matrix to Hessenberg form. SYNOPSYS subroutine comqr2(nm,n,low,igh,ortr,orti,hr,hi,wr,wi,zr,zi,ierr) integer nm, n, low, igh, ierr double precision hr(nm,n), hi(nm,n), wr(n), wi(n) double precision zr(nm,n), zi(nm,n), ortr(igh), orti(igh) subroutine scomqr2(nm,n,low,igh,ortr,orti,hr,hi,wr,wi,zr,zi,ierr) integer nm, n, low, igh, ierr real hr(nm,n), hi(nm,n), wr(n), wi(n) real zr(nm,n), zi(nm,n), ortr(igh), orti(igh) 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 CBAL. If CBAL has not been used, set LOW=1, IGH=N. ORTR and ORTI contain information about the unitary trans- formations used in the reduction by CORTH, if performed. Only elements LOW through IGH are used. If the eigenvectors of the Hessenberg matrix are desired, set ORTR(J) and ORTI(J) to 0.0E0 for these elements. HR and HI contain the real and imaginary parts, respectively, of the complex upper Hessenberg matrix. Their lower triangles below the subdiagonal contain further information about the transformations which were used in the reduction by CORTH, if performed. If the eigenvectors of the Hessenberg matrix are desired, these elements may be arbitrary. On OUTPUT ORTR , ORTI, and the upper Hessenberg portions of HR and HI have been destroyed. WR and WI contain the real and imaginary parts, respectively, of the eigenvalues. If an error exit is made, the eigenvalues should be correct for indices IERR+1,...,N. ZR and ZI contain the real and imaginary parts, respectively, of the eigenvectors. 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 CSROOT for complex square root. Calls PYTHAG(A,B) for sqrt(A**2 + B**2). Calls CDIV for complex division. Questions and comments should be directed to B. S. Garbow, APPLIED MATHEMATICS DIVISION, ARGONNE NATIONAL LABORATORY