java.lang.Object
imagingbook.common.math.eigen.eispack.QZVEC

public abstract class QZVEC extends Object
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static boolean
     
  • Method Summary

    Modifier and Type
    Method
    Description
    static void
    qzvec(double[][] a, double[][] b, double[] alfr, double[] alfi, double[] beta, double[][] z)
    This subroutine is the optional fourth step of the qz algorithm for solving generalized matrix eigenvalue problems, Siam J.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • VERBOSE

      public static boolean VERBOSE
  • Method Details

    • qzvec

      public static void qzvec(double[][] a, double[][] b, double[] alfr, double[] alfi, double[] beta, double[][] z)

      This subroutine is the optional fourth step of the qz algorithm for solving generalized matrix eigenvalue problems, Siam J. Numer. Anal. 10, 241-256 (1973) by Moler and Stewart. This description has been adapted from the original version (dated August 1983).

      This subroutine accepts a pair of real matrices, one of them in quasi-triangular form (in which each 2-by-2 block corresponds to a pair of complex eigenvalues) and the other in upper triangular form. It computes the eigenvectors of the triangular problem and transforms the results back to the original coordinate system. It is usually preceded by qzhes, qzit, and qzval.

      On output:

      • a is unaltered. Its subdiagonal elements provide information about the storage of the complex eigenvectors.
      • b has been destroyed.
      • alfr, alfi and beta are unaltered.
      • z contains the real and imaginary parts of the eigenvectors. If alfi(i) = 0.0, the i-th eigenvalue is real and the i-th column of z contains its eigenvector. if alfi(i) ≠ 0.0, the i-th eigenvalue is complex. if alfi(i) > 0.0, the eigenvalue is the first of a complex pair and the i-th and (i+1)-th columns of z contain its eigenvector. If alfi(i) < 0.0, the eigenvalue is the second of a complex pair and the (i-1)-th and i-th columns of z contain the conjugate of its eigenvector. Each eigenvector is normalized so that the modulus of its largest component is 1.0.
      Parameters:
      a - contains a real upper quasi-triangular matrix.
      b - contains a real upper triangular matrix. In addition, location b[n-1][0] contains the tolerance quantity (epsb) computed and saved in qzit.
      alfr - , alfi, and beta are vectors with components whose ratios ((alfr + i * alfi) / beta) are the generalized eigenvalues. They are usually obtained from qzval.
      alfi - see alfr
      beta - see alfr
      z - contains the transformation matrix produced in the reductions by qzhes, qzit, and qzval, if performed. If the eigenvectors of the triangular problem are desired, z must contain the identity matrix.