138 DOUBLE PRECISION zero, one
139 parameter( zero = 0.0d+0, one = 1.0d+0 )
162 upper =
lsame( uplo,
'U' )
163 IF( .NOT.upper .AND. .NOT.
lsame( uplo,
'L' ) )
THEN
165 ELSE IF( n.LT.0 )
THEN
169 CALL
xerbla(
'ZPPTRF', -info )
190 $ CALL
ztpsv(
'Upper',
'Conjugate transpose',
'Non-unit',
191 $
j-1, ap, ap( jc ), 1 )
195 ajj = dble( ap( jj ) ) -
zdotc(
j-1, ap( jc ), 1, ap( jc ),
197 IF( ajj.LE.zero )
THEN
201 ap( jj ) = sqrt( ajj )
212 ajj = dble( ap( jj ) )
213 IF( ajj.LE.zero )
THEN
224 CALL
zdscal( n-
j, one / ajj, ap( jj+1 ), 1 )
225 CALL
zhpr(
'Lower', n-
j, -one, ap( jj+1 ), 1,
LOGICAL function lsame(CA, CB)
LSAME
subroutine zdscal(N, DA, ZX, INCX)
ZDSCAL
subroutine xerbla(SRNAME, INFO)
XERBLA
subroutine zpptrf(UPLO, N, AP, INFO)
ZPPTRF
subroutine ztpsv(UPLO, TRANS, DIAG, N, AP, X, INCX)
ZTPSV
set ue cd $ADTTMP cat<< EOF > tmp f Program LinearEquations Implicit none Real j
COMPLEX *16 function zdotc(N, ZX, INCX, ZY, INCY)
ZDOTC
subroutine zhpr(UPLO, N, ALPHA, X, INCX, AP)
ZHPR