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)
subroutine zgemm(transa, transb, m, n, k, alpha, a, lda, b, ldb, beta, c, ldc)
ZGEMM
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
subroutine ztrsm(side, uplo, transa, diag, m, n, alpha, a, lda, b, ldb)
ZTRSM