134 parameter( zero = 0.0e+0, one = 1.0e+0 )
144 EXTERNAL lsame, cdotc
157 upper = lsame( uplo,
'U' )
158 IF( .NOT.upper .AND. .NOT.lsame( uplo,
'L' ) )
THEN
160 ELSE IF( n.LT.0 )
THEN
164 CALL xerbla(
'CPPTRF', -info )
185 $
CALL ctpsv(
'Upper',
'Conjugate transpose',
187 $ j-1, ap, ap( jc ), 1 )
191 ajj = real( real( ap( jj ) ) - cdotc( j-1,
192 $ ap( jc ), 1, ap( jc ), 1 ) )
193 IF( ajj.LE.zero )
THEN
197 ap( jj ) = sqrt( ajj )
208 ajj = real( ap( jj ) )
209 IF( ajj.LE.zero )
THEN
220 CALL csscal( n-j, one / ajj, ap( jj+1 ), 1 )
221 CALL chpr(
'Lower', n-j, -one, ap( jj+1 ), 1,
subroutine xerbla(srname, info)
subroutine chpr(uplo, n, alpha, x, incx, ap)
CHPR
subroutine cpptrf(uplo, n, ap, info)
CPPTRF
subroutine csscal(n, sa, cx, incx)
CSSCAL
subroutine ctpsv(uplo, trans, diag, n, ap, x, incx)
CTPSV