105 SUBROUTINE zlassq( N, X, INCX, SCALE, SUMSQ )
113 DOUBLE PRECISION SCALE, SUMSQ
122 DOUBLE PRECISION ZERO
123 parameter( zero = 0.0d+0 )
127 DOUBLE PRECISION TEMP1
134 INTRINSIC abs, dble, dimag
139 DO 10 ix = 1, 1 + ( n-1 )*incx, incx
140 temp1 = abs( dble( x( ix ) ) )
141 IF( temp1.GT.zero.OR.disnan( temp1 ) )
THEN
142 IF( scale.LT.temp1 )
THEN
143 sumsq = 1 + sumsq*( scale / temp1 )**2
146 sumsq = sumsq + ( temp1 / scale )**2
149 temp1 = abs( dimag( x( ix ) ) )
150 IF( temp1.GT.zero.OR.disnan( temp1 ) )
THEN
151 IF( scale.LT.temp1 )
THEN
152 sumsq = 1 + sumsq*( scale / temp1 )**2
155 sumsq = sumsq + ( temp1 / scale )**2
subroutine zlassq(N, X, INCX, SCALE, SUMSQ)
ZLASSQ updates a sum of squares represented in scaled form.