146 SUBROUTINE cgbtf2( M, N, KL, KU, AB, LDAB, IPIV, INFO )
154 INTEGER INFO, KL, KU, LDAB, M, N
158 COMPLEX AB( ldab, * )
165 parameter ( one = ( 1.0e+0, 0.0e+0 ),
166 $ zero = ( 0.0e+0, 0.0e+0 ) )
169 INTEGER I, J, JP, JU, KM, KV
193 ELSE IF( n.LT.0 )
THEN
195 ELSE IF( kl.LT.0 )
THEN
197 ELSE IF( ku.LT.0 )
THEN
199 ELSE IF( ldab.LT.kl+kv+1 )
THEN
203 CALL xerbla(
'CGBTF2', -info )
209 IF( m.EQ.0 .OR. n.EQ.0 )
216 DO 20 j = ku + 2, min( kv, n )
217 DO 10 i = kv - j + 2, kl
227 DO 40 j = 1, min( m, n )
241 jp = icamax( km+1, ab( kv+1, j ), 1 )
242 ipiv( j ) = jp + j - 1
243 IF( ab( kv+jp, j ).NE.zero )
THEN
244 ju = max( ju, min( j+ku+jp-1, n ) )
249 $
CALL cswap( ju-j+1, ab( kv+jp, j ), ldab-1,
250 $ ab( kv+1, j ), ldab-1 )
255 CALL cscal( km, one / ab( kv+1, j ), ab( kv+2, j ), 1 )
260 $
CALL cgeru( km, ju-j, -one, ab( kv+2, j ), 1,
261 $ ab( kv, j+1 ), ldab-1, ab( kv+1, j+1 ),
subroutine xerbla(SRNAME, INFO)
XERBLA
subroutine cscal(N, CA, CX, INCX)
CSCAL
subroutine cswap(N, CX, INCX, CY, INCY)
CSWAP
subroutine cgbtf2(M, N, KL, KU, AB, LDAB, IPIV, INFO)
CGBTF2 computes the LU factorization of a general band matrix using the unblocked version of the algo...
subroutine cgeru(M, N, ALPHA, X, INCX, Y, INCY, A, LDA)
CGERU