94 SUBROUTINE cpptri( UPLO, N, AP, INFO )
113 parameter ( one = 1.0e+0 )
117 INTEGER J, JC, JJ, JJN
123 EXTERNAL lsame, cdotc
136 upper = lsame( uplo,
'U' )
137 IF( .NOT.upper .AND. .NOT.lsame( uplo,
'L' ) )
THEN
139 ELSE IF( n.LT.0 )
THEN
143 CALL xerbla(
'CPPTRI', -info )
154 CALL ctptri( uplo,
'Non-unit', n, ap, info )
166 $
CALL chpr(
'Upper', j-1, one, ap( jc ), 1, ap )
168 CALL csscal( j, ajj, ap( jc ), 1 )
178 ap( jj ) =
REAL( CDOTC( N-J+1, AP( JJ ), 1, AP( JJ ), 1 ) )
180 $
CALL ctpmv(
'Lower',
'Conjugate transpose',
'Non-unit',
181 $ 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 chpr(UPLO, N, ALPHA, X, INCX, AP)
CHPR
subroutine cpptri(UPLO, N, AP, INFO)
CPPTRI
subroutine csscal(N, SA, CX, INCX)
CSSCAL