120 SUBROUTINE zpoequb( N, A, LDA, S, SCOND, AMAX, INFO )
129 DOUBLE PRECISION AMAX, SCOND
132 COMPLEX*16 A( LDA, * )
133 DOUBLE PRECISION S( * )
139 DOUBLE PRECISION ZERO, ONE
140 parameter( zero = 0.0d+0, one = 1.0d+0 )
144 DOUBLE PRECISION SMIN, BASE, TMP
147 DOUBLE PRECISION DLAMCH
154 INTRINSIC max, min, sqrt, log, int, real, dimag
165 ELSE IF( lda.LT.max( 1, n ) )
THEN
169 CALL xerbla(
'ZPOEQUB', -info )
182 tmp = -0.5d+0 / log( base )
191 smin = min( smin, s( i ) )
192 amax = max( amax, s( i ) )
195 IF( smin.LE.zero )
THEN
200 IF( s( i ).LE.zero )
THEN
211 s( i ) = base ** int( tmp * log( s( i ) ) )
216 scond = sqrt( smin ) / sqrt( amax )