90      SUBROUTINE cpptri( UPLO, N, AP, INFO )
 
  108      parameter( one = 1.0e+0 )
 
  112      INTEGER            J, JC, JJ, JJN
 
  118      EXTERNAL           lsame, cdotc
 
  131      upper = lsame( uplo, 
'U' )
 
  132      IF( .NOT.upper .AND. .NOT.lsame( uplo, 
'L' ) ) 
THEN 
  134      ELSE IF( n.LT.0 ) 
THEN 
  138         CALL xerbla( 
'CPPTRI', -info )
 
  149      CALL ctptri( uplo, 
'Non-unit', n, ap, info )
 
  161     $         
CALL chpr( 
'Upper', j-1, one, ap( jc ), 1, ap )
 
  162            ajj = real( ap( jj ) )
 
  163            CALL csscal( j, ajj, ap( jc ), 1 )
 
  173            ap( jj ) = real( cdotc( n-j+1, ap( jj ), 1, ap( jj ),
 
  176     $         
CALL ctpmv( 
'Lower', 
'Conjugate transpose',
 
  178     $                     n-j, ap( jjn ), ap( jj+1 ), 1 )
 
 
subroutine xerbla(srname, info)
 
subroutine chpr(uplo, n, alpha, x, incx, ap)
CHPR
 
subroutine cpptri(uplo, n, ap, info)
CPPTRI
 
subroutine csscal(n, sa, cx, incx)
CSSCAL
 
subroutine ctpmv(uplo, trans, diag, n, ap, x, incx)
CTPMV
 
subroutine ctptri(uplo, diag, n, ap, info)
CTPTRI