151 SUBROUTINE spbstf( UPLO, N, KD, AB, LDAB, INFO )
159 INTEGER INFO, KD, LDAB, N
169 parameter( one = 1.0e+0, zero = 0.0e+0 )
173 INTEGER J, KLD, KM, M
184 INTRINSIC max, min, sqrt
191 upper = lsame( uplo,
'U' )
192 IF( .NOT.upper .AND. .NOT.lsame( uplo,
'L' ) )
THEN
194 ELSE IF( n.LT.0 )
THEN
196 ELSE IF( kd.LT.0 )
THEN
198 ELSE IF( ldab.LT.kd+1 )
THEN
202 CALL xerbla(
'SPBSTF', -info )
211 kld = max( 1, ldab-1 )
221 DO 10 j = n, m + 1, -1
235 CALL sscal( km, one / ajj, ab( kd+1-km, j ), 1 )
236 CALL ssyr(
'Upper', km, -one, ab( kd+1-km, j ), 1,
237 $ ab( kd+1, j-km ), kld )
257 CALL sscal( km, one / ajj, ab( kd, j+1 ), kld )
258 CALL ssyr(
'Upper', km, -one, ab( kd, j+1 ), kld,
259 $ ab( kd+1, j+1 ), kld )
266 DO 30 j = n, m + 1, -1
280 CALL sscal( km, one / ajj, ab( km+1, j-km ), kld )
281 CALL ssyr(
'Lower', km, -one, ab( km+1, j-km ), kld,
282 $ ab( 1, j-km ), kld )
302 CALL sscal( km, one / ajj, ab( 2, j ), 1 )
303 CALL ssyr(
'Lower', km, -one, ab( 2, j ), 1,
304 $ ab( 1, j+1 ), kld )
subroutine xerbla(srname, info)
subroutine ssyr(uplo, n, alpha, x, incx, a, lda)
SSYR
subroutine spbstf(uplo, n, kd, ab, ldab, info)
SPBSTF
subroutine sscal(n, sa, sx, incx)
SSCAL