141 SUBROUTINE dpbtf2( UPLO, N, KD, AB, LDAB, INFO )
149 INTEGER INFO, KD, LDAB, N
152 DOUBLE PRECISION AB( LDAB, * )
158 DOUBLE PRECISION ONE, ZERO
159 parameter( one = 1.0d+0, zero = 0.0d+0 )
174 INTRINSIC max, min, sqrt
181 upper = lsame( uplo,
'U' )
182 IF( .NOT.upper .AND. .NOT.lsame( uplo,
'L' ) )
THEN
184 ELSE IF( n.LT.0 )
THEN
186 ELSE IF( kd.LT.0 )
THEN
188 ELSE IF( ldab.LT.kd+1 )
THEN
192 CALL xerbla(
'DPBTF2', -info )
201 kld = max( 1, ldab-1 )
222 CALL dscal( kn, one / ajj, ab( kd, j+1 ), kld )
223 CALL dsyr(
'Upper', kn, -one, ab( kd, j+1 ), kld,
224 $ ab( kd+1, j+1 ), kld )
246 CALL dscal( kn, one / ajj, ab( 2, j ), 1 )
247 CALL dsyr(
'Lower', kn, -one, ab( 2, j ), 1,
248 $ ab( 1, j+1 ), kld )
subroutine xerbla(SRNAME, INFO)
XERBLA
subroutine dscal(N, DA, DX, INCX)
DSCAL
subroutine dsyr(UPLO, N, ALPHA, X, INCX, A, LDA)
DSYR
subroutine dpbtf2(UPLO, N, KD, AB, LDAB, INFO)
DPBTF2 computes the Cholesky factorization of a symmetric/Hermitian positive definite band matrix (un...