120 SUBROUTINE cptcon( N, D, E, ANORM, RCOND, RWORK, INFO )
132 REAL d( * ), rwork( * )
140 parameter( one = 1.0e+0, zero = 0.0e+0 )
163 ELSE IF( anorm.LT.zero )
THEN
167 CALL
xerbla(
'CPTCON', -info )
177 ELSE IF( anorm.EQ.zero )
THEN
199 rwork( i ) = one + rwork( i-1 )*abs( e( i-1 ) )
204 rwork( n ) = rwork( n ) / d( n )
205 DO 30 i = n - 1, 1, -1
206 rwork( i ) = rwork( i ) / d( i ) + rwork( i+1 )*abs( e( i ) )
211 ix =
isamax( n, rwork, 1 )
212 ainvnm = abs( rwork( ix ) )
217 $ rcond = ( one / ainvnm ) / anorm