151 INTEGER INFO, LDA, M, N
154 COMPLEX A( LDA, * ), D( * )
161 parameter( cone = ( 1.0e+0, 0.0e+0 ) )
164 INTEGER IINFO, J, JB, NB
184 ELSE IF( n.LT.0 )
THEN
186 ELSE IF( lda.LT.max( 1, m ) )
THEN
190 CALL xerbla(
'CLAUNHR_COL_GETRFNP', -info )
196 IF( min( m, n ).EQ.0 )
202 nb = ilaenv( 1,
'CLAUNHR_COL_GETRFNP',
' ', m, n, -1, -1 )
204 IF( nb.LE.1 .OR. nb.GE.min( m, n ) )
THEN
213 DO j = 1, min( m, n ), nb
214 jb = min( min( m, n )-j+1, nb )
225 CALL ctrsm(
'Left',
'Lower',
'No transpose',
'Unit',
227 $ n-j-jb+1, cone, a( j, j ), lda, a( j, j+jb ),
233 CALL cgemm(
'No transpose',
'No transpose',
235 $ n-j-jb+1, jb, -cone, a( j+jb, j ), lda,
236 $ a( j, j+jb ), lda, cone, a( j+jb, j+jb ),
subroutine cgemm(transa, transb, m, n, k, alpha, a, lda, b, ldb, beta, c, ldc)
CGEMM
subroutine ctrsm(side, uplo, transa, diag, m, n, alpha, a, lda, b, ldb)
CTRSM