141 SUBROUTINE cpbtf2( UPLO, N, KD, AB, LDAB, INFO )
149 INTEGER INFO, KD, LDAB, N
152 COMPLEX AB( LDAB, * )
159 parameter( one = 1.0e+0, zero = 0.0e+0 )
174 INTRINSIC max, min, real, 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(
'CPBTF2', -info )
201 kld = max( 1, ldab-1 )
211 ajj = real( ab( kd+1, j ) )
212 IF( ajj.LE.zero )
THEN
224 CALL csscal( kn, one / ajj, ab( kd, j+1 ), kld )
225 CALL clacgv( kn, ab( kd, j+1 ), kld )
226 CALL cher(
'Upper', kn, -one, ab( kd, j+1 ), kld,
227 $ ab( kd+1, j+1 ), kld )
228 CALL clacgv( kn, ab( kd, j+1 ), kld )
239 ajj = real( ab( 1, j ) )
240 IF( ajj.LE.zero )
THEN
252 CALL csscal( kn, one / ajj, ab( 2, j ), 1 )
253 CALL cher(
'Lower', kn, -one, ab( 2, j ), 1,
254 $ ab( 1, j+1 ), kld )
subroutine xerbla(srname, info)
subroutine cher(uplo, n, alpha, x, incx, a, lda)
CHER
subroutine clacgv(n, x, incx)
CLACGV conjugates a complex vector.
subroutine cpbtf2(uplo, n, kd, ab, ldab, info)
CPBTF2 computes the Cholesky factorization of a symmetric/Hermitian positive definite band matrix (un...
subroutine csscal(n, sa, cx, incx)
CSSCAL