139      SUBROUTINE cpbtf2( UPLO, N, KD, AB, LDAB, INFO )
 
  147      INTEGER            INFO, KD, LDAB, N
 
  150      COMPLEX            AB( LDAB, * )
 
  157      parameter( one = 1.0e+0, zero = 0.0e+0 )
 
  172      INTRINSIC          max, min, real, sqrt
 
  179      upper = lsame( uplo, 
'U' )
 
  180      IF( .NOT.upper .AND. .NOT.lsame( uplo, 
'L' ) ) 
THEN 
  182      ELSE IF( n.LT.0 ) 
THEN 
  184      ELSE IF( kd.LT.0 ) 
THEN 
  186      ELSE IF( ldab.LT.kd+1 ) 
THEN 
  190         CALL xerbla( 
'CPBTF2', -info )
 
  199      kld = max( 1, ldab-1 )
 
  209            ajj = real( ab( kd+1, j ) )
 
  210            IF( ajj.LE.zero ) 
THEN 
  222               CALL csscal( kn, one / ajj, ab( kd, j+1 ), kld )
 
  223               CALL clacgv( kn, ab( kd, j+1 ), kld )
 
  224               CALL cher( 
'Upper', kn, -one, ab( kd, j+1 ), kld,
 
  225     $                    ab( kd+1, j+1 ), kld )
 
  226               CALL clacgv( kn, ab( kd, j+1 ), kld )
 
  237            ajj = real( ab( 1, j ) )
 
  238            IF( ajj.LE.zero ) 
THEN 
  250               CALL csscal( kn, one / ajj, ab( 2, j ), 1 )
 
  251               CALL cher( 
'Lower', kn, -one, ab( 2, j ), 1,
 
  252     $                    ab( 1, j+1 ), kld )
 
 
subroutine cher(uplo, n, alpha, x, incx, a, lda)
CHER
subroutine cpbtf2(uplo, n, kd, ab, ldab, info)
CPBTF2 computes the Cholesky factorization of a symmetric/Hermitian positive definite band matrix (un...