ZUNGHR  -  generate  a  complex  unitary matrix Q which is
       defined as the product of IHI-ILO elementary reflectors of
       order N, as returned by ZGEHRD


SYNOPSIS

       SUBROUTINE ZUNGHR( N,  ILO, IHI, A, LDA, TAU, WORK, LWORK,
                          INFO )

           INTEGER        IHI, ILO, INFO, LDA, LWORK, N

           COMPLEX*16     A( LDA, * ), TAU( * ), WORK( * )


PURPOSE

       ZUNGHR generates a  complex  unitary  matrix  Q  which  is
       defined as the product of IHI-ILO elementary reflectors of
       order N, as returned by ZGEHRD: Q = H(ilo) H(ilo+1) . .  .
       H(ihi-1).


ARGUMENTS

       N       (input) INTEGER
               The order of the matrix Q. N >= 0.

       ILO     (input) INTEGER
               IHI      (input) INTEGER ILO and IHI must have the
               same values as in the previous call of  ZGEHRD.  Q
               is  equal  to the unit matrix except in the subma­
               trix Q(ilo+1:ihi,ilo+1:ihi).  1 <= ILO <=  IHI  <=
               N, if N > 0; ILO=1 and IHI=0, if N=0.

       A       (input/output) COMPLEX*16 array, dimension (LDA,N)
               On entry, the vectors which define the  elementary
               reflectors,  as  returned by ZGEHRD.  On exit, the
               N-by-N unitary matrix Q.

       LDA     (input) INTEGER
               The leading dimension  of  the  array  A.  LDA  >=
               max(1,N).

       TAU     (input) COMPLEX*16 array, dimension (N-1)
               TAU(i)  must contain the scalar factor of the ele­
               mentary reflector H(i), as returned by ZGEHRD.

       WORK    (workspace/output) COMPLEX*16 array, dimension
               (LWORK)
               On  exit, if INFO = 0, WORK(1) returns the optimal
               LWORK.

       LWORK   (input) INTEGER
               The dimension of the array WORK. LWORK >= IHI-ILO.
               For  optimum  performance  LWORK  >= (IHI-ILO)*NB,
               where NB is the optimal blocksize.

               the  routine  only  calculates the optimal size of
               the WORK array, returns this value  as  the  first
               entry  of  the  WORK  array,  and no error message
               related to LWORK is issued by XERBLA.

       INFO    (output) INTEGER
               = 0:  successful exit
               < 0:  if INFO = -i, the i-th argument had an ille­
               gal value


Man(1) output converted with man2html