CUNGQL   -  generate  an  M-by-N  complex  matrix  Q  with
       orthonormal columns,


SYNOPSIS

       SUBROUTINE CUNGQL( M, N, K, A, LDA, TAU, WORK, LWORK, INFO
                          )

           INTEGER        INFO, K, LDA, LWORK, M, N

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


PURPOSE

       CUNGQL generates an M-by-N complex matrix Q with orthonor­
       mal columns, which is defined as the last N columns  of  a
       product of K elementary reflectors of order M

             Q  =  H(k) . . . H(2) H(1)

       as returned by CGEQLF.


ARGUMENTS

       M       (input) INTEGER
               The number of rows of the matrix Q. M >= 0.

       N       (input) INTEGER
               The  number  of columns of the matrix Q. M >= N >=
               0.

       K       (input) INTEGER
               The number of elementary reflectors whose  product
               defines the matrix Q. N >= K >= 0.

       A       (input/output) COMPLEX array, dimension (LDA,N)
               On  entry,  the (n-k+i)-th column must contain the
               vector  which  defines  the  elementary  reflector
               H(i),  for i = 1,2,...,k, as returned by CGEQLF in
               the last k columns of its array  argument  A.   On
               exit, the M-by-N matrix Q.

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

       TAU     (input) COMPLEX array, dimension (K)
               TAU(i) must contain the scalar factor of the  ele­
               mentary reflector H(i), as returned by CGEQLF.

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

               The   dimension   of  the  array  WORK.  LWORK  >=
               max(1,N).  For optimum performance LWORK >=  N*NB,
               where NB is the optimal blocksize.

               If  LWORK = -1, then a workspace query is assumed;
               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 has an ille­
               gal value


Man(1) output converted with man2html