ZLAQPS  -  compute  a step of QR factorization with column
       pivoting of a complex M-by-N matrix A by using Blas-3


SYNOPSIS

       SUBROUTINE ZLAQPS( M, N, OFFSET, NB,  KB,  A,  LDA,  JPVT,
                          TAU, VN1, VN2, AUXV, F, LDF )

           INTEGER        KB, LDA, LDF, M, N, NB, OFFSET

           INTEGER        JPVT( * )

           DOUBLE         PRECISION VN1( * ), VN2( * )

           COMPLEX*16     A(  LDA,  *  ), AUXV( * ), F( LDF, * ),
                          TAU( * )


PURPOSE

       ZLAQPS computes a step of  QR  factorization  with  column
       pivoting  of a complex M-by-N matrix A by using Blas-3. It
       tries to factorize NB columns from A starting from the row
       OFFSET+1, and updates all of the matrix with Blas-3 xGEMM.

       In some cases, due to catastrophic cancellations, it  can­
       not  factorize  NB  columns.   Hence, the actual number of
       factorized columns is returned in KB.

       Block A(1:OFFSET,1:N) is accordingly pivoted, but not fac­
       torized.


ARGUMENTS

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

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

       OFFSET  (input) INTEGER
               The  number of rows of A that have been factorized
               in previous steps.

       NB      (input) INTEGER
               The number of columns to factorize.

       KB      (output) INTEGER
               The number of columns actually factorized.

       A       (input/output) COMPLEX*16 array, dimension (LDA,N)
               On  entry,  the  M-by-N  matrix A.  On exit, block
               A(OFFSET+1:M,1:KB) is the triangular
               factor obtained and block A(1:OFFSET,1:N) has been
               accordingly  pivoted, but no factorized.  The rest
               of the matrix, block A(OFFSET+1:M,KB+1:N) has been


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

       JPVT    (input/output) INTEGER array, dimension (N)
               JPVT(I) = K <==> Column K of the full matrix A has
               been permuted into position I in AP.

       TAU     (output) COMPLEX*16 array, dimension (KB)
               The scalar factors of the elementary reflectors.

       VN1     (input/output) DOUBLE PRECISION array, dimension
               (N)
               The vector with the partial column norms.

       VN2     (input/output) DOUBLE PRECISION array, dimension
               (N)
               The vector with the exact column norms.

       AUXV    (input/output) COMPLEX*16 array, dimension (NB)
               Auxiliar vector.

       F       (input/output) COMPLEX*16 array, dimension
               (LDF,NB)
               Matrix F' = L*Y'*A.

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


FURTHER DETAILS

       Based on contributions by
         G.  Quintana-Orti,  Depto.  de  Informatica, Universidad
       Jaime I, Spain
         X. Sun, Computer Science Dept., Duke University, USA


Man(1) output converted with man2html