1      SUBROUTINE zpttrsv( UPLO, TRANS, N, NRHS, D, E, B, LDB,
 
   16      INTEGER            INFO, LDB, N, NRHS
 
   19      DOUBLE PRECISION   D( * )
 
   20      COMPLEX*16         B( LDB, * ), E( * )
 
   99      notran = lsame( trans, 
'N' )
 
  100      upper = lsame( uplo, 
'U' )
 
  101      IF( .NOT.upper .AND. .NOT.lsame( uplo, 
'L' ) ) 
THEN 
  103      ELSE IF( .NOT.notran .AND. .NOT.
 
  104     $    lsame( trans, 
'C' ) ) 
THEN 
  106      ELSE IF( n.LT.0 ) 
THEN 
  108      ELSE IF( nrhs.LT.0 ) 
THEN 
  110      ELSE IF( ldb.LT.
max( 1, n ) ) 
THEN 
  114         CALL xerbla( 
'ZPTTRS', -info )
 
  125      IF( .NOT.notran ) 
THEN 
  132               b( i, j ) = b( i, j ) - b( i-1, j )*dconjg( e( i-1 ) )
 
  142            DO 20 i = n - 1, 1, -1
 
  143               b( i, j ) = b( i, j ) - b( i+1, j )*e( i )
 
  157               b( i, j ) = b( i, j ) - b( i-1, j )*e( i-1 )
 
  167            DO 50 i = n - 1, 1, -1
 
  168               b( i, j ) = b( i, j ) -
 
  169     $                     b( i+1, j )*dconjg( e( i ) )
 
 
subroutine zpttrsv(uplo, trans, n, nrhs, d, e, b, ldb, info)