122 COMPLEX V( N ), X( N )
129 parameter( itmax = 5 )
131 parameter( one = 1.0e0, two = 2.0e0 )
133 parameter( czero = ( 0.0e0, 0.0e0 ),
134 $ cone = ( 1.0e0, 0.0e0 ) )
137 INTEGER I, ITER, J, JLAST, JUMP
138 REAL ABSXI, ALTSGN, ESTOLD, SAFMIN, TEMP
143 EXTERNAL icmax1, scsum1, slamch
149 INTRINSIC abs, aimag, cmplx, real
156 safmin = slamch(
'Safe minimum' )
159 x( i ) = cmplx( one / real( n ) )
166 GO TO ( 20, 40, 70, 90, 120 )jump
178 est = scsum1( n, x, 1 )
181 absxi = abs( x( i ) )
182 IF( absxi.GT.safmin )
THEN
183 x( i ) = cmplx( real( x( i ) ) / absxi,
184 $ aimag( x( i ) ) / absxi )
197 j = icmax1( n, x, 1 )
215 CALL ccopy( n, x, 1, v, 1 )
217 est = scsum1( n, v, 1 )
224 absxi = abs( x( i ) )
225 IF( absxi.GT.safmin )
THEN
226 x( i ) = cmplx( real( x( i ) ) / absxi,
227 $ aimag( x( i ) ) / absxi )
241 j = icmax1( n, x, 1 )
242 IF( ( abs( x( jlast ) ).NE.abs( x( j ) ) ) .AND.
243 $ ( iter.LT.itmax ) )
THEN
253 x( i ) = cmplx( altsgn*( one+real( i-1 ) / real( n-1 ) ) )
264 temp = two*( scsum1( n, x, 1 ) / real( 3*n ) )
265 IF( temp.GT.est )
THEN
266 CALL ccopy( n, x, 1, v, 1 )
subroutine clacon(n, v, x, est, kase)
CLACON estimates the 1-norm of a square matrix, using reverse communication for evaluating matrix-vec...