92 SUBROUTINE cpptri( UPLO, N, AP, INFO )
110 parameter( one = 1.0e+0 )
114 INTEGER J, JC, JJ, JJN
120 EXTERNAL lsame, cdotc
133 upper = lsame( uplo,
'U' )
134 IF( .NOT.upper .AND. .NOT.lsame( uplo,
'L' ) )
THEN 136 ELSE IF( n.LT.0 )
THEN 140 CALL xerbla(
'CPPTRI', -info )
151 CALL ctptri( uplo,
'Non-unit', n, ap, info )
163 $
CALL chpr(
'Upper', j-1, one, ap( jc ), 1, ap )
164 ajj =
REAL( AP( JJ ) )
165 CALL csscal( j, ajj, ap( jc ), 1 )
175 ap( jj ) =
REAL( CDOTC( N-J+1, AP( JJ ), 1, AP( JJ ), 1 ) )
177 $
CALL ctpmv(
'Lower',
'Conjugate transpose',
'Non-unit',
178 $ n-j, ap( jjn ), ap( jj+1 ), 1 )
subroutine ctpmv(UPLO, TRANS, DIAG, N, AP, X, INCX)
CTPMV
subroutine ctptri(UPLO, DIAG, N, AP, INFO)
CTPTRI
subroutine xerbla(SRNAME, INFO)
XERBLA
subroutine csscal(N, SA, CX, INCX)
CSSCAL
subroutine chpr(UPLO, N, ALPHA, X, INCX, AP)
CHPR
subroutine cpptri(UPLO, N, AP, INFO)
CPPTRI