125 SUBROUTINE zhecon( UPLO, N, A, LDA, IPIV, ANORM, RCOND, WORK,
136 DOUBLE PRECISION anorm, rcond
140 COMPLEX*16 a( lda, * ), work( * )
146 DOUBLE PRECISION one, zero
147 parameter( one = 1.0d+0, zero = 0.0d+0 )
152 DOUBLE PRECISION ainvnm
172 upper =
lsame( uplo,
'U' )
173 IF( .NOT.upper .AND. .NOT.
lsame( uplo,
'L' ) )
THEN
175 ELSE IF( n.LT.0 )
THEN
177 ELSE IF( lda.LT.max( 1, n ) )
THEN
179 ELSE IF( anorm.LT.zero )
THEN
183 CALL
xerbla(
'ZHECON', -info )
193 ELSE IF( anorm.LE.zero )
THEN
204 IF( ipiv( i ).GT.0 .AND. a( i, i ).EQ.zero )
212 IF( ipiv( i ).GT.0 .AND. a( i, i ).EQ.zero )
221 CALL
zlacn2( n, work( n+1 ), work, ainvnm, kase, isave )
226 CALL
zhetrs( uplo, n, 1, a, lda, ipiv, work, n, info )
233 $ rcond = ( one / ainvnm ) / anorm
subroutine zhecon(UPLO, N, A, LDA, IPIV, ANORM, RCOND, WORK, INFO)
ZHECON
LOGICAL function lsame(CA, CB)
LSAME
subroutine xerbla(SRNAME, INFO)
XERBLA
subroutine zlacn2(N, V, X, EST, KASE, ISAVE)
ZLACN2 estimates the 1-norm of a square matrix, using reverse communication for evaluating matrix-vec...
subroutine zhetrs(UPLO, N, NRHS, A, LDA, IPIV, B, LDB, INFO)
ZHETRS