120 SUBROUTINE spptrf( UPLO, N, AP, INFO )
139 parameter ( one = 1.0e+0, zero = 0.0e+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(
'SPPTRF', -info )
190 $
CALL stpsv(
'Upper',
'Transpose',
'Non-unit', j-1, ap,
195 ajj = ap( jj ) - sdot( j-1, ap( jc ), 1, ap( jc ), 1 )
196 IF( ajj.LE.zero )
THEN
200 ap( jj ) = sqrt( ajj )
212 IF( ajj.LE.zero )
THEN
223 CALL sscal( n-j, one / ajj, ap( jj+1 ), 1 )
224 CALL sspr(
'Lower', n-j, -one, ap( jj+1 ), 1,
subroutine spptrf(UPLO, N, AP, INFO)
SPPTRF
subroutine xerbla(SRNAME, INFO)
XERBLA
subroutine stpsv(UPLO, TRANS, DIAG, N, AP, X, INCX)
STPSV
subroutine sscal(N, SA, SX, INCX)
SSCAL
subroutine sspr(UPLO, N, ALPHA, X, INCX, AP)
SSPR