144 SUBROUTINE zgbtf2( M, N, KL, KU, AB, LDAB, IPIV, INFO )
151 INTEGER INFO, KL, KU, LDAB, M, N
155 COMPLEX*16 AB( ldab, * )
162 parameter( one = ( 1.0d+0, 0.0d+0 ),
163 $ zero = ( 0.0d+0, 0.0d+0 ) )
166 INTEGER I, J, JP, JU, KM, KV
190 ELSE IF( n.LT.0 )
THEN 192 ELSE IF( kl.LT.0 )
THEN 194 ELSE IF( ku.LT.0 )
THEN 196 ELSE IF( ldab.LT.kl+kv+1 )
THEN 200 CALL xerbla(
'ZGBTF2', -info )
206 IF( m.EQ.0 .OR. n.EQ.0 )
213 DO 20 j = ku + 2, min( kv, n )
214 DO 10 i = kv - j + 2, kl
224 DO 40 j = 1, min( m, n )
238 jp = izamax( km+1, ab( kv+1, j ), 1 )
239 ipiv( j ) = jp + j - 1
240 IF( ab( kv+jp, j ).NE.zero )
THEN 241 ju = max( ju, min( j+ku+jp-1, n ) )
246 $
CALL zswap( ju-j+1, ab( kv+jp, j ), ldab-1,
247 $ ab( kv+1, j ), ldab-1 )
252 CALL zscal( km, one / ab( kv+1, j ), ab( kv+2, j ), 1 )
257 $
CALL zgeru( km, ju-j, -one, ab( kv+2, j ), 1,
258 $ ab( kv, j+1 ), ldab-1, ab( kv+1, j+1 ),
subroutine zgeru(M, N, ALPHA, X, INCX, Y, INCY, A, LDA)
ZGERU
subroutine xerbla(SRNAME, INFO)
XERBLA
subroutine zgbtf2(M, N, KL, KU, AB, LDAB, IPIV, INFO)
ZGBTF2 computes the LU factorization of a general band matrix using the unblocked version of the algo...
subroutine zswap(N, ZX, INCX, ZY, INCY)
ZSWAP
subroutine zscal(N, ZA, ZX, INCX)
ZSCAL