146 SUBROUTINE dgtcon( NORM, N, DL, D, DU, DU2, IPIV, ANORM, RCOND,
147 $ work, iwork, info )
157 DOUBLE PRECISION anorm, rcond
160 INTEGER ipiv( * ), iwork( * )
161 DOUBLE PRECISION d( * ), dl( * ), du( * ), du2( * ), work( * )
167 DOUBLE PRECISION one, zero
168 parameter( one = 1.0d+0, zero = 0.0d+0 )
172 INTEGER i, kase, kase1
173 DOUBLE PRECISION ainvnm
190 onenrm = norm.EQ.
'1' .OR.
lsame( norm,
'O' )
191 IF( .NOT.onenrm .AND. .NOT.
lsame( norm,
'I' ) )
THEN
193 ELSE IF( n.LT.0 )
THEN
195 ELSE IF( anorm.LT.zero )
THEN
199 CALL
xerbla(
'DGTCON', -info )
209 ELSE IF( anorm.EQ.zero )
THEN
228 CALL
dlacn2( n, work( n+1 ), work, iwork, ainvnm, kase, isave )
230 IF( kase.EQ.kase1 )
THEN
234 CALL
dgttrs(
'No transpose', n, 1, dl, d, du, du2, ipiv,
240 CALL
dgttrs(
'Transpose', n, 1, dl, d, du, du2, ipiv, work,
249 $ rcond = ( one / ainvnm ) / anorm
LOGICAL function lsame(CA, CB)
LSAME
subroutine xerbla(SRNAME, INFO)
XERBLA
subroutine dgtcon(NORM, N, DL, D, DU, DU2, IPIV, ANORM, RCOND, WORK, IWORK, INFO)
DGTCON
subroutine dlacn2(N, V, X, ISGN, EST, KASE, ISAVE)
DLACN2 estimates the 1-norm of a square matrix, using reverse communication for evaluating matrix-vec...
subroutine dgttrs(TRANS, N, NRHS, DL, D, DU, DU2, IPIV, B, LDB, INFO)
DGTTRS