141 SUBROUTINE cgtcon( NORM, N, DL, D, DU, DU2, IPIV, ANORM, RCOND,
156 COMPLEX D( * ), DL( * ), DU( * ), DU2( * ), WORK( * )
163 parameter ( one = 1.0e+0, zero = 0.0e+0 )
167 INTEGER I, KASE, KASE1
188 onenrm = norm.EQ.
'1' .OR. lsame( norm,
'O' )
189 IF( .NOT.onenrm .AND. .NOT.lsame( norm,
'I' ) )
THEN
191 ELSE IF( n.LT.0 )
THEN
193 ELSE IF( anorm.LT.zero )
THEN
197 CALL xerbla(
'CGTCON', -info )
207 ELSE IF( anorm.EQ.zero )
THEN
214 IF( d( i ).EQ.cmplx( zero ) )
226 CALL clacn2( n, work( n+1 ), work, ainvnm, kase, isave )
228 IF( kase.EQ.kase1 )
THEN
232 CALL cgttrs(
'No transpose', n, 1, dl, d, du, du2, ipiv,
238 CALL cgttrs(
'Conjugate transpose', n, 1, dl, d, du, du2,
239 $ ipiv, work, n, info )
247 $ rcond = ( one / ainvnm ) / anorm
subroutine cgtcon(NORM, N, DL, D, DU, DU2, IPIV, ANORM, RCOND, WORK, INFO)
CGTCON
subroutine cgttrs(TRANS, N, NRHS, DL, D, DU, DU2, IPIV, B, LDB, INFO)
CGTTRS
subroutine xerbla(SRNAME, INFO)
XERBLA
subroutine clacn2(N, V, X, EST, KASE, ISAVE)
CLACN2 estimates the 1-norm of a square matrix, using reverse communication for evaluating matrix-vec...