153 SUBROUTINE dpbstf( UPLO, N, KD, AB, LDAB, INFO )
162 INTEGER info, kd, ldab, n
165 DOUBLE PRECISION ab( ldab, * )
171 DOUBLE PRECISION one, zero
172 parameter( one = 1.0d+0, zero = 0.0d+0 )
176 INTEGER j, kld, km, m
187 INTRINSIC max, min, sqrt
194 upper =
lsame( uplo,
'U' )
195 IF( .NOT.upper .AND. .NOT.
lsame( uplo,
'L' ) )
THEN
197 ELSE IF( n.LT.0 )
THEN
199 ELSE IF( kd.LT.0 )
THEN
201 ELSE IF( ldab.LT.kd+1 )
THEN
205 CALL
xerbla(
'DPBSTF', -info )
214 kld = max( 1, ldab-1 )
224 DO 10
j = n, m + 1, -1
238 CALL
dscal( km, one / ajj, ab( kd+1-km,
j ), 1 )
239 CALL
dsyr(
'Upper', km, -one, ab( kd+1-km,
j ), 1,
240 $ ab( kd+1,
j-km ), kld )
260 CALL
dscal( km, one / ajj, ab( kd,
j+1 ), kld )
261 CALL
dsyr(
'Upper', km, -one, ab( kd,
j+1 ), kld,
262 $ ab( kd+1,
j+1 ), kld )
269 DO 30
j = n, m + 1, -1
283 CALL
dscal( km, one / ajj, ab( km+1,
j-km ), kld )
284 CALL
dsyr(
'Lower', km, -one, ab( km+1,
j-km ), kld,
285 $ ab( 1,
j-km ), kld )
305 CALL
dscal( km, one / ajj, ab( 2,
j ), 1 )
306 CALL
dsyr(
'Lower', km, -one, ab( 2,
j ), 1,
307 $ ab( 1,
j+1 ), kld )
subroutine dpbstf(UPLO, N, KD, AB, LDAB, INFO)
DPBSTF
subroutine dsyr(UPLO, N, ALPHA, X, INCX, A, LDA)
DSYR
subroutine xerbla(SRNAME, INFO)
XERBLA
logical function lsame(CA, CB)
LSAME
subroutine dscal(N, DA, DX, INCX)
DSCAL
set ue cd $ADTTMP cat<< EOF > tmp f Program LinearEquations Implicit none Real j