.TH "SRC/zgelqf.f" 3 "Version 3.12.0" "LAPACK" \" -*- nroff -*- .ad l .nh .SH NAME SRC/zgelqf.f .SH SYNOPSIS .br .PP .SS "Functions/Subroutines" .in +1c .ti -1c .RI "subroutine \fBzgelqf\fP (m, n, a, lda, tau, work, lwork, info)" .br .RI "\fBZGELQF\fP " .in -1c .SH "Function/Subroutine Documentation" .PP .SS "subroutine zgelqf (integer m, integer n, complex*16, dimension( lda, * ) a, integer lda, complex*16, dimension( * ) tau, complex*16, dimension( * ) work, integer lwork, integer info)" .PP \fBZGELQF\fP .PP \fBPurpose:\fP .RS 4 .PP .nf !> !> ZGELQF computes an LQ factorization of a complex M-by-N matrix A: !> !> A = ( L 0 ) * Q !> !> where: !> !> Q is a N-by-N orthogonal matrix; !> L is a lower-triangular M-by-M matrix; !> 0 is a M-by-(N-M) zero matrix, if M < N\&. !> !> .fi .PP .RE .PP \fBParameters\fP .RS 4 \fIM\fP .PP .nf !> M is INTEGER !> The number of rows of the matrix A\&. M >= 0\&. !> .fi .PP .br \fIN\fP .PP .nf !> N is INTEGER !> The number of columns of the matrix A\&. N >= 0\&. !> .fi .PP .br \fIA\fP .PP .nf !> A is COMPLEX*16 array, dimension (LDA,N) !> On entry, the M-by-N matrix A\&. !> On exit, the elements on and below the diagonal of the array !> contain the m-by-min(m,n) lower trapezoidal matrix L (L is !> lower triangular if m <= n); the elements above the diagonal, !> with the array TAU, represent the unitary matrix Q as a !> product of elementary reflectors (see Further Details)\&. !> .fi .PP .br \fILDA\fP .PP .nf !> LDA is INTEGER !> The leading dimension of the array A\&. LDA >= max(1,M)\&. !> .fi .PP .br \fITAU\fP .PP .nf !> TAU is COMPLEX*16 array, dimension (min(M,N)) !> The scalar factors of the elementary reflectors (see Further !> Details)\&. !> .fi .PP .br \fIWORK\fP .PP .nf !> WORK is COMPLEX*16 array, dimension (MAX(1,LWORK)) !> On exit, if INFO = 0, WORK(1) returns the optimal LWORK\&. !> .fi .PP .br \fILWORK\fP .PP .nf !> LWORK is INTEGER !> The dimension of the array WORK\&. !> LWORK >= 1, if MIN(M,N) = 0, and LWORK >= M, otherwise\&. !> For optimum performance LWORK >= M*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\&. !> .fi .PP .br \fIINFO\fP .PP .nf !> INFO is INTEGER !> = 0: successful exit !> < 0: if INFO = -i, the i-th argument had an illegal value !> .fi .PP .RE .PP \fBAuthor\fP .RS 4 Univ\&. of Tennessee .PP Univ\&. of California Berkeley .PP Univ\&. of Colorado Denver .PP NAG Ltd\&. .RE .PP \fBFurther Details:\fP .RS 4 .PP .nf !> !> The matrix Q is represented as a product of elementary reflectors !> !> Q = H(k)**H \&. \&. \&. H(2)**H H(1)**H, where k = min(m,n)\&. !> !> Each H(i) has the form !> !> H(i) = 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; conjg(v(i+1:n)) is stored on exit in !> A(i,i+1:n), and tau in TAU(i)\&. !> .fi .PP .RE .PP .PP Definition at line \fB143\fP of file \fBzgelqf\&.f\fP\&. .SH "Author" .PP Generated automatically by Doxygen for LAPACK from the source code\&.