CGEQPF (3) - Linux Manuals


cgeqpf.f -



subroutine cgeqpf (M, N, A, LDA, JPVT, TAU, WORK, RWORK, INFO)

Function/Subroutine Documentation

subroutine cgeqpf (integerM, integerN, complex, dimension( lda, * )A, integerLDA, integer, dimension( * )JPVT, complex, dimension( * )TAU, complex, dimension( * )WORK, real, dimension( * )RWORK, integerINFO)



 This routine is deprecated and has been replaced by routine CGEQP3.

 CGEQPF computes a QR factorization with column pivoting of a
 complex M-by-N matrix A: A*P = Q*R.




          M is INTEGER
          The number of rows of the matrix A. M >= 0.


          N is INTEGER
          The number of columns of the matrix A. N >= 0


          A is COMPLEX array, dimension (LDA,N)
          On entry, the M-by-N matrix A.
          On exit, the upper triangle of the array contains the
          min(M,N)-by-N upper triangular matrix R; the elements
          below the diagonal, together with the array TAU,
          represent the unitary matrix Q as a product of
          min(m,n) elementary reflectors.


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


          JPVT is INTEGER array, dimension (N)
          On entry, if JPVT(i) .ne. 0, the i-th column of A is permuted
          to the front of A*P (a leading column); if JPVT(i) = 0,
          the i-th column of A is a free column.
          On exit, if JPVT(i) = k, then the i-th column of A*P
          was the k-th column of A.


          TAU is COMPLEX array, dimension (min(M,N))
          The scalar factors of the elementary reflectors.


          WORK is COMPLEX array, dimension (N)


          RWORK is REAL array, dimension (2*N)


          INFO is INTEGER
          = 0:  successful exit
          < 0:  if INFO = -i, the i-th argument had an illegal value



Univ. of Tennessee

Univ. of California Berkeley

Univ. of Colorado Denver

NAG Ltd.


November 2011

Further Details:

  The matrix Q is represented as a product of elementary reflectors

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

  Each H(i) has the form

     H = I - tau * v * v**H

  where tau is a complex scalar, and v is a complex vector with
  v(1:i-1) = 0 and v(i) = 1; v(i+1:m) is stored on exit in A(i+1:m,i).

  The matrix P is represented in jpvt as follows: If
     jpvt(j) = i
  then the jth column of P is the ith canonical unit vector.

  Partial column norm updating strategy modified by
    Z. Drmac and Z. Bujanovic, Dept. of Mathematics,
    University of Zagreb, Croatia.
  -- April 2011                                                      --
  For more details see LAPACK Working Note 176.


Definition at line 149 of file cgeqpf.f.


Generated automatically by Doxygen for LAPACK from the source code.