1 SUBROUTINE dpbtf2( UPLO, N, KD, AB, LDAB, INFO )
10 INTEGER INFO, KD, LDAB, N
13 DOUBLE PRECISION AB( LDAB, * )
93 DOUBLE PRECISION ONE, ZERO
94 parameter( one = 1.0d+0, zero = 0.0d+0 )
109 INTRINSIC max, min, sqrt
116 upper = lsame( uplo,
'U' )
117 IF( .NOT.upper .AND. .NOT.lsame( uplo,
'L' ) )
THEN
119 ELSE IF( n.LT.0 )
THEN
121 ELSE IF( kd.LT.0 )
THEN
123 ELSE IF( ldab.LT.kd+1 )
THEN
127 CALL xerbla(
'DPBTF2', -info )
136 kld = max( 1, ldab-1 )
157 CALL dscal( kn, one / ajj, ab( kd, j+1 ), kld )
158 CALL dsyr(
'Upper', kn, -one, ab( kd, j+1 ), kld,
159 $ ab( kd+1, j+1 ), kld )
181 CALL dscal( kn, one / ajj, ab( 2, j ), 1 )
182 CALL dsyr(
'Lower', kn, -one, ab( 2, j ), 1,
183 $ ab( 1, j+1 ), kld )
subroutine dpbtf2(UPLO, N, KD, AB, LDAB, INFO)
subroutine dscal(n, da, dx, incx)
subroutine dsyr(UPLO, N, ALPHA, X, INCX, A, LDA)
subroutine xerbla(SRNAME, INFO)