115      SUBROUTINE zspcon( UPLO, N, AP, IPIV, ANORM, RCOND, WORK,
 
  125      DOUBLE PRECISION   ANORM, RCOND
 
  129      COMPLEX*16         AP( * ), WORK( * )
 
  135      DOUBLE PRECISION   ONE, ZERO
 
  136      parameter( one = 1.0d+0, zero = 0.0d+0 )
 
  141      DOUBLE PRECISION   AINVNM
 
  158      upper = lsame( uplo, 
'U' )
 
  159      IF( .NOT.upper .AND. .NOT.lsame( uplo, 
'L' ) ) 
THEN 
  161      ELSE IF( n.LT.0 ) 
THEN 
  163      ELSE IF( anorm.LT.zero ) 
THEN 
  167         CALL xerbla( 
'ZSPCON', -info )
 
  177      ELSE IF( anorm.LE.zero ) 
THEN 
  189            IF( ipiv( i ).GT.0 .AND. ap( ip ).EQ.zero )
 
  199            IF( ipiv( i ).GT.0 .AND. ap( ip ).EQ.zero )
 
  209      CALL zlacn2( n, work( n+1 ), work, ainvnm, kase, isave )
 
  214         CALL zsptrs( uplo, n, 1, ap, ipiv, work, n, info )
 
  221     $   rcond = ( one / ainvnm ) / anorm
 
 
subroutine zspcon(uplo, n, ap, ipiv, anorm, rcond, work, info)
ZSPCON
 
subroutine zsptrs(uplo, n, nrhs, ap, ipiv, b, ldb, info)
ZSPTRS
 
subroutine zlacn2(n, v, x, est, kase, isave)
ZLACN2 estimates the 1-norm of a square matrix, using reverse communication for evaluating matrix-vec...