146 SUBROUTINE zgbtf2( M, N, KL, KU, AB, LDAB, IPIV, INFO )
154 INTEGER info, kl, ku, ldab, m, n
158 COMPLEX*16 ab( ldab, * )
165 parameter( one = ( 1.0d+0, 0.0d+0 ),
166 $ zero = ( 0.0d+0, 0.0d+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(
'ZGBTF2', -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 =
izamax( 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
zswap( ju-
j+1, ab( kv+jp,
j ), ldab-1,
250 $ ab( kv+1,
j ), ldab-1 )
255 CALL
zscal( km, one / ab( kv+1,
j ), ab( kv+2,
j ), 1 )
260 $ CALL
zgeru( km, ju-
j, -one, ab( kv+2,
j ), 1,
261 $ ab( kv,
j+1 ), ldab-1, ab( kv+1,
j+1 ),
subroutine zswap(N, ZX, INCX, ZY, INCY)
ZSWAP
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...
set ue cd $ADTTMP cat<< EOF > tmp f Program LinearEquations Implicit none Real j
INTEGER function izamax(N, ZX, INCX)
IZAMAX
subroutine zscal(N, ZA, ZX, INCX)
ZSCAL
subroutine zgeru(M, N, ALPHA, X, INCX, Y, INCY, A, LDA)
ZGERU