146 SUBROUTINE sgbtf2( M, N, KL, KU, AB, LDAB, IPIV, INFO )
154 INTEGER info, kl, ku, ldab, m, n
165 parameter( one = 1.0e+0, zero = 0.0e+0 )
168 INTEGER i,
j, jp, ju, km, kv
192 ELSE IF( n.LT.0 )
THEN
194 ELSE IF( kl.LT.0 )
THEN
196 ELSE IF( ku.LT.0 )
THEN
198 ELSE IF( ldab.LT.kl+kv+1 )
THEN
202 CALL
xerbla(
'SGBTF2', -info )
208 IF( m.EQ.0 .OR. n.EQ.0 )
215 DO 20
j = ku + 2, min( kv, n )
216 DO 10 i = kv -
j + 2, kl
226 DO 40
j = 1, min( m, n )
240 jp =
isamax( km+1, ab( kv+1,
j ), 1 )
241 ipiv(
j ) = jp +
j - 1
242 IF( ab( kv+jp,
j ).NE.zero )
THEN
243 ju = max( ju, min(
j+ku+jp-1, n ) )
248 $ CALL
sswap( ju-
j+1, ab( kv+jp,
j ), ldab-1,
249 $ ab( kv+1,
j ), ldab-1 )
255 CALL
sscal( km, one / ab( kv+1,
j ), ab( kv+2,
j ), 1 )
260 $ CALL
sger( km, ju-
j, -one, ab( kv+2,
j ), 1,
261 $ ab( kv,
j+1 ), ldab-1, ab( kv+1,
j+1 ),
INTEGER function isamax(N, SX, INCX)
ISAMAX
subroutine sswap(N, SX, INCX, SY, INCY)
SSWAP
subroutine xerbla(SRNAME, INFO)
XERBLA
set ue cd $ADTTMP cat<< EOF > tmp f Program LinearEquations Implicit none Real j
subroutine sger(M, N, ALPHA, X, INCX, Y, INCY, A, LDA)
SGER
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 sscal(N, SA, SX, INCX)
SSCAL