.TH "SRC/zlaunhr_col_getrfnp.f" 3 "Version 3.12.0" "LAPACK" \" -*- nroff -*- .ad l .nh .SH NAME SRC/zlaunhr_col_getrfnp.f .SH SYNOPSIS .br .PP .SS "Functions/Subroutines" .in +1c .ti -1c .RI "subroutine \fBzlaunhr_col_getrfnp\fP (m, n, a, lda, d, info)" .br .RI "\fBZLAUNHR_COL_GETRFNP\fP " .in -1c .SH "Function/Subroutine Documentation" .PP .SS "subroutine zlaunhr_col_getrfnp (integer m, integer n, complex*16, dimension( lda, * ) a, integer lda, complex*16, dimension( * ) d, integer info)" .PP \fBZLAUNHR_COL_GETRFNP\fP .PP \fBPurpose:\fP .RS 4 .PP .nf !> !> ZLAUNHR_COL_GETRFNP computes the modified LU factorization without !> pivoting of a complex general M-by-N matrix A\&. The factorization has !> the form: !> !> A - S = L * U, !> !> where: !> S is a m-by-n diagonal sign matrix with the diagonal D, so that !> D(i) = S(i,i), 1 <= i <= min(M,N)\&. The diagonal D is constructed !> as D(i)=-SIGN(A(i,i)), where A(i,i) is the value after performing !> i-1 steps of Gaussian elimination\&. This means that the diagonal !> element at each step of Gaussian elimination is !> at least one in absolute value (so that division-by-zero not !> not possible during the division by the diagonal element); !> !> L is a M-by-N lower triangular matrix with unit diagonal elements !> (lower trapezoidal if M > N); !> !> and U is a M-by-N upper triangular matrix !> (upper trapezoidal if M < N)\&. !> !> This routine is an auxiliary routine used in the Householder !> reconstruction routine ZUNHR_COL\&. In ZUNHR_COL, this routine is !> applied to an M-by-N matrix A with orthonormal columns, where each !> element is bounded by one in absolute value\&. With the choice of !> the matrix S above, one can show that the diagonal element at each !> step of Gaussian elimination is the largest (in absolute value) in !> the column on or below the diagonal, so that no pivoting is required !> for numerical stability [1]\&. !> !> For more details on the Householder reconstruction algorithm, !> including the modified LU factorization, see [1]\&. !> !> This is the blocked right-looking version of the algorithm, !> calling Level 3 BLAS to update the submatrix\&. To factorize a block, !> this routine calls the recursive routine ZLAUNHR_COL_GETRFNP2\&. !> !> [1] , !> G\&. Ballard, J\&. Demmel, L\&. Grigori, M\&. Jacquelin, H\&.D\&. Nguyen, !> E\&. Solomonik, J\&. Parallel Distrib\&. Comput\&., !> vol\&. 85, pp\&. 3-31, 2015\&. !> .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 to be factored\&. !> On exit, the factors L and U from the factorization !> A-S=L*U; the unit diagonal elements of L are not stored\&. !> .fi .PP .br \fILDA\fP .PP .nf !> LDA is INTEGER !> The leading dimension of the array A\&. LDA >= max(1,M)\&. !> .fi .PP .br \fID\fP .PP .nf !> D is COMPLEX*16 array, dimension min(M,N) !> The diagonal elements of the diagonal M-by-N sign matrix S, !> D(i) = S(i,i), where 1 <= i <= min(M,N)\&. The elements can be !> only ( +1\&.0, 0\&.0 ) or (-1\&.0, 0\&.0 )\&. !> .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 \fBContributors:\fP .RS 4 .PP .nf !> !> November 2019, Igor Kozachenko, !> Computer Science Division, !> University of California, Berkeley !> !> .fi .PP .RE .PP .PP Definition at line \fB145\fP of file \fBzlaunhr_col_getrfnp\&.f\fP\&. .SH "Author" .PP Generated automatically by Doxygen for LAPACK from the source code\&.