133 SUBROUTINE slacn2( N, V, X, ISGN, EST, KASE, ISAVE )
144 INTEGER ISGN( * ), ISAVE( 3 )
152 parameter( itmax = 5 )
154 parameter( zero = 0.0e+0, one = 1.0e+0, two = 2.0e+0 )
158 REAL ALTSGN, ESTOLD, TEMP, XS
163 EXTERNAL isamax, sasum
169 INTRINSIC abs, nint, real
175 x( i ) = one / real( n )
182 GO TO ( 20, 40, 70, 110, 140 )isave( 1 )
194 est = sasum( n, x, 1 )
197 IF( x(i).GE.zero )
THEN
202 isgn( i ) = nint( x( i ) )
212 isave( 2 ) = isamax( n, x, 1 )
221 x( isave( 2 ) ) = one
230 CALL scopy( n, x, 1, v, 1 )
232 est = sasum( n, v, 1 )
234 IF( x(i).GE.zero )
THEN
239 IF( nint( xs ).NE.isgn( i ) )
251 IF( x(i).GE.zero )
THEN
256 isgn( i ) = nint( x( i ) )
267 isave( 2 ) = isamax( n, x, 1 )
268 IF( ( x( jlast ).NE.abs( x( isave( 2 ) ) ) ) .AND.
269 $ ( isave( 3 ).LT.itmax ) )
THEN
270 isave( 3 ) = isave( 3 ) + 1
279 x( i ) = altsgn*( one+real( i-1 ) / real( n-1 ) )
290 temp = two*( sasum( n, x, 1 ) / real( 3*n ) )
291 IF( temp.GT.est )
THEN
292 CALL scopy( n, x, 1, v, 1 )
subroutine slacn2(n, v, x, isgn, est, kase, isave)
SLACN2 estimates the 1-norm of a square matrix, using reverse communication for evaluating matrix-vec...