107 SUBROUTINE classq( N, X, INCX, SCALE, SUMSQ )
126 parameter( zero = 0.0e+0 )
137 INTRINSIC abs, aimag, real
142 DO 10 ix = 1, 1 + ( n-1 )*incx, incx
143 temp1 = abs(
REAL( X( IX ) ) )
144 IF( temp1.GT.zero.OR.
sisnan( temp1 ) )
THEN
145 IF( scale.LT.temp1 )
THEN
146 sumsq = 1 + sumsq*( scale / temp1 )**2
149 sumsq = sumsq + ( temp1 / scale )**2
152 temp1 = abs( aimag(
x( ix ) ) )
153 IF( temp1.GT.zero.OR.
sisnan( temp1 ) )
THEN
154 IF( scale.LT.temp1 .OR.
sisnan( temp1 ) )
THEN
155 sumsq = 1 + sumsq*( scale / temp1 )**2
158 sumsq = sumsq + ( temp1 / scale )**2
LOGICAL function sisnan(SIN)
SISNAN tests input for NaN.
subroutine classq(N, X, INCX, SCALE, SUMSQ)
CLASSQ updates a sum of squares represented in scaled form.