Purpose
  To compute unitary matrices Q1, Q2, and Q3 for a complex 2-by-2
  regular pencil aAB - bD, with A, B, D upper triangular, such that
  Q3' A Q2, Q2' B Q1, Q3' D Q1 are still upper triangular, but the
  eigenvalues are in reversed order. The matrices Q1, Q2, and Q3 are
  represented by
       (  CO1  SI1  )       (  CO2  SI2  )       (  CO3  SI3  )
  Q1 = (            ), Q2 = (            ), Q3 = (            ).
       ( -SI1' CO1  )       ( -SI2' CO2  )       ( -SI3' CO3  )
  The notation M' denotes the conjugate transpose of the matrix M.
Specification
      SUBROUTINE MB03CZ( A, LDA, B, LDB, D, LDD, CO1, SI1, CO2, SI2,
     $                   CO3, SI3 )
C     .. Scalar Arguments ..
      INTEGER            LDA, LDB, LDD
      DOUBLE PRECISION   CO1, CO2, CO3
      COMPLEX*16         SI1, SI2, SI3
C     .. Array Arguments ..
      COMPLEX*16         A( LDA, * ), B( LDB, * ), D( LDD, * )
Arguments
Input/Output Parameters
  A       (input) COMPLEX*16 array, dimension (LDA, 2)
          On entry, the leading 2-by-2 upper triangular part of
          this array must contain the matrix A of the pencil.
          The (2,1) entry is not referenced.
  LDA     INTEGER
          The leading dimension of the array A.  LDA >= 2.
  B       (input) COMPLEX*16 array, dimension (LDB, 2)
          On entry, the leading 2-by-2 upper triangular part of
          this array must contain the matrix B of the pencil.
          The (2,1) entry is not referenced.
  LDB     INTEGER
          The leading dimension of the array B.  LDB >= 2.
  D       (input) COMPLEX*16 array, dimension (LDD, 2)
          On entry, the leading 2-by-2 upper triangular part of
          this array must contain the matrix D of the pencil.
          The (2,1) entry is not referenced.
  LDD     INTEGER
          The leading dimension of the array D.  LDD >= 2.
  CO1     (output) DOUBLE PRECISION
          The upper left element of the unitary matrix Q1.
  SI1     (output) COMPLEX*16
          The upper right element of the unitary matrix Q1.
  CO2     (output) DOUBLE PRECISION
          The upper left element of the unitary matrix Q2.
  SI2     (output) COMPLEX*16
          The upper right element of the unitary matrix Q2.
  CO3     (output) DOUBLE PRECISION
          The upper left element of the unitary matrix Q3.
  SI3     (output) COMPLEX*16
          The upper right element of the unitary matrix Q3.
Method
The algorithm uses unitary transformations as described on page 37 in [1].References
  [1] Benner, P., Byers, R., Mehrmann, V. and Xu, H.
      Numerical Computation of Deflating Subspaces of Embedded
      Hamiltonian Pencils.
      Tech. Rep. SFB393/99-15, Technical University Chemnitz,
      Germany, June 1999.
Numerical Aspects
The algorithm is numerically backward stable.Further Comments
NoneExample
Program Text
NoneProgram Data
NoneProgram Results
None