Previous: ortran Up: ../eispad.html Next: qzit
SUBROUTINE QZHES(NM,N,A,B,MATZ,Z)
C
INTEGER I,J,K,L,N,LB,L1,NM,NK1,NM1,NM2
DOUBLE PRECISION A(NM,N),B(NM,N),Z(NM,N)
DOUBLE PRECISION R,S,T,U1,U2,V1,V2,RHO
LOGICAL MATZ
C
C THIS SUBROUTINE IS THE FIRST STEP OF THE QZ ALGORITHM
C FOR SOLVING GENERALIZED MATRIX EIGENVALUE PROBLEMS,
C SIAM J. NUMER. ANAL. 10, 241-256(1973) BY MOLER AND STEWART.
C
C THIS SUBROUTINE ACCEPTS A PAIR OF REAL GENERAL MATRICES AND
C REDUCES ONE OF THEM TO UPPER HESSENBERG FORM AND THE OTHER
C TO UPPER TRIANGULAR FORM USING ORTHOGONAL TRANSFORMATIONS.
C IT IS USUALLY FOLLOWED BY QZIT, QZVAL AND, POSSIBLY, QZVEC.
C
C ON INPUT
C
C NM MUST BE SET TO THE ROW DIMENSION OF TWO-DIMENSIONAL
C ARRAY PARAMETERS AS DECLARED IN THE CALLING PROGRAM
C DIMENSION STATEMENT.
C
C N IS THE ORDER OF THE MATRICES.
C
C A CONTAINS A REAL GENERAL MATRIX.
C
C B CONTAINS A REAL GENERAL MATRIX.
C
C MATZ SHOULD BE SET TO .TRUE. IF THE RIGHT HAND TRANSFORMATIONS
C ARE TO BE ACCUMULATED FOR LATER USE IN COMPUTING
C EIGENVECTORS, AND TO .FALSE. OTHERWISE.
C
C ON OUTPUT
C
C A HAS BEEN REDUCED TO UPPER HESSENBERG FORM. THE ELEMENTS
C BELOW THE FIRST SUBDIAGONAL HAVE BEEN SET TO ZERO.
C
C B HAS BEEN REDUCED TO UPPER TRIANGULAR FORM. THE ELEMENTS
C BELOW THE MAIN DIAGONAL HAVE BEEN SET TO ZERO.
C
C Z CONTAINS THE PRODUCT OF THE RIGHT HAND TRANSFORMATIONS IF
C MATZ HAS BEEN SET TO .TRUE. OTHERWISE, Z IS NOT REFERENCED.
C
C QUESTIONS AND COMMENTS SHOULD BE DIRECTED TO BURTON S. GARBOW,
C MATHEMATICS AND COMPUTER SCIENCE DIV, ARGONNE NATIONAL LABORATORY
C
C THIS VERSION DATED AUGUST 1983.
C
C ------------------------------------------------------------------
C
C