153 INTEGER INFO, LDA, M, N
156 COMPLEX*16 A( LDA, * ), D( * )
163 parameter( cone = ( 1.0d+0, 0.0d+0 ) )
166 INTEGER IINFO, J, JB, NB
185 ELSE IF( n.LT.0 )
THEN
187 ELSE IF( lda.LT.max( 1, m ) )
THEN
191 CALL xerbla(
'ZLAUNHR_COL_GETRFNP', -info )
197 IF( min( m, n ).EQ.0 )
203 nb = ilaenv( 1,
'ZLAUNHR_COL_GETRFNP',
' ', m, n, -1, -1 )
205 IF( nb.LE.1 .OR. nb.GE.min( m, n ) )
THEN
214 DO j = 1, min( m, n ), nb
215 jb = min( min( m, n )-j+1, nb )
226 CALL ztrsm(
'Left',
'Lower',
'No transpose',
'Unit', jb,
227 $ n-j-jb+1, cone, a( j, j ), lda, a( j, j+jb ),
233 CALL zgemm(
'No transpose',
'No transpose', m-j-jb+1,
234 $ n-j-jb+1, jb, -cone, a( j+jb, j ), lda,
235 $ a( j, j+jb ), lda, cone, a( j+jb, j+jb ),
subroutine xerbla(SRNAME, INFO)
XERBLA
subroutine zgemm(TRANSA, TRANSB, M, N, K, ALPHA, A, LDA, B, LDB, BETA, C, LDC)
ZGEMM
subroutine ztrsm(SIDE, UPLO, TRANSA, DIAG, M, N, ALPHA, A, LDA, B, LDB)
ZTRSM
recursive subroutine zlaunhr_col_getrfnp2(M, N, A, LDA, D, INFO)
ZLAUNHR_COL_GETRFNP2
subroutine zlaunhr_col_getrfnp(M, N, A, LDA, D, INFO)
ZLAUNHR_COL_GETRFNP