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 cpbtf2(UPLO, N, KD, AB, LDAB, INFO)
CPBTF2 computes the Cholesky factorization of a symmetric/Hermitian positive definite band matrix (un...
subroutine xerbla(SRNAME, INFO)
XERBLA
subroutine csscal(N, SA, CX, INCX)
CSSCAL
subroutine cher(UPLO, N, ALPHA, X, INCX, A, LDA)
CHER
subroutine clacgv(N, X, INCX)
CLACGV conjugates a complex vector.