144 SUBROUTINE sgbtf2( M, N, KL, KU, AB, LDAB, IPIV, INFO )
151 INTEGER INFO, KL, KU, LDAB, M, N
162 parameter( one = 1.0e+0, zero = 0.0e+0 )
165 INTEGER I, J, JP, JU, KM, KV
189 ELSE IF( n.LT.0 )
THEN
191 ELSE IF( kl.LT.0 )
THEN
193 ELSE IF( ku.LT.0 )
THEN
195 ELSE IF( ldab.LT.kl+kv+1 )
THEN
199 CALL xerbla(
'SGBTF2', -info )
205 IF( m.EQ.0 .OR. n.EQ.0 )
212 DO 20 j = ku + 2, min( kv, n )
213 DO 10 i = kv - j + 2, kl
223 DO 40 j = 1, min( m, n )
237 jp = isamax( km+1, ab( kv+1, j ), 1 )
238 ipiv( j ) = jp + j - 1
239 IF( ab( kv+jp, j ).NE.zero )
THEN
240 ju = max( ju, min( j+ku+jp-1, n ) )
245 $
CALL sswap( ju-j+1, ab( kv+jp, j ), ldab-1,
246 $ ab( kv+1, j ), ldab-1 )
252 CALL sscal( km, one / ab( kv+1, j ), ab( kv+2, j ), 1 )
257 $
CALL sger( km, ju-j, -one, ab( kv+2, j ), 1,
258 $ ab( kv, j+1 ), ldab-1, ab( kv+1, j+1 ),
subroutine xerbla(srname, info)
subroutine sgbtf2(m, n, kl, ku, ab, ldab, ipiv, info)
SGBTF2 computes the LU factorization of a general band matrix using the unblocked version of the algo...
subroutine sger(m, n, alpha, x, incx, y, incy, a, lda)
SGER
subroutine sscal(n, sa, sx, incx)
SSCAL
subroutine sswap(n, sx, incx, sy, incy)
SSWAP