121      SUBROUTINE csycon( UPLO, N, A, LDA, IPIV, ANORM, RCOND, WORK,
 
  135      COMPLEX            A( LDA, * ), WORK( * )
 
  142      parameter( one = 1.0e+0, zero = 0.0e+0 )
 
  167      upper = lsame( uplo, 
'U' )
 
  168      IF( .NOT.upper .AND. .NOT.lsame( uplo, 
'L' ) ) 
THEN 
  170      ELSE IF( n.LT.0 ) 
THEN 
  172      ELSE IF( lda.LT.max( 1, n ) ) 
THEN 
  174      ELSE IF( anorm.LT.zero ) 
THEN 
  178         CALL xerbla( 
'CSYCON', -info )
 
  188      ELSE IF( anorm.LE.zero ) 
THEN 
  199            IF( ipiv( i ).GT.0 .AND. a( i, i ).EQ.zero )
 
  207            IF( ipiv( i ).GT.0 .AND. a( i, i ).EQ.zero )
 
  216      CALL clacn2( n, work( n+1 ), work, ainvnm, kase, isave )
 
  221         CALL csytrs( uplo, n, 1, a, lda, ipiv, work, n, info )
 
  228     $   rcond = ( one / ainvnm ) / anorm
 
 
subroutine csycon(uplo, n, a, lda, ipiv, anorm, rcond, work, info)
CSYCON
 
subroutine csytrs(uplo, n, nrhs, a, lda, ipiv, b, ldb, info)
CSYTRS
 
subroutine clacn2(n, v, x, est, kase, isave)
CLACN2 estimates the 1-norm of a square matrix, using reverse communication for evaluating matrix-vec...