Diff for /rpl/lapack/lapack/zlassq.f between versions 1.9 and 1.12

version 1.9, 2011/11/21 22:19:54 version 1.12, 2012/12/14 14:22:52
Line 1 Line 1
 *> \brief \b ZLASSQ  *> \brief \b ZLASSQ updates a sum of squares represented in scaled form.
 *  *
 *  =========== DOCUMENTATION ===========  *  =========== DOCUMENTATION ===========
 *  *
Line 99 Line 99
 *> \author Univ. of Colorado Denver   *> \author Univ. of Colorado Denver 
 *> \author NAG Ltd.   *> \author NAG Ltd. 
 *  *
 *> \date November 2011  *> \date September 2012
 *  *
 *> \ingroup complex16OTHERauxiliary  *> \ingroup complex16OTHERauxiliary
 *  *
 *  =====================================================================  *  =====================================================================
       SUBROUTINE ZLASSQ( N, X, INCX, SCALE, SUMSQ )        SUBROUTINE ZLASSQ( N, X, INCX, SCALE, SUMSQ )
 *  *
 *  -- LAPACK auxiliary routine (version 3.4.0) --  *  -- LAPACK auxiliary routine (version 3.4.2) --
 *  -- LAPACK is a software package provided by Univ. of Tennessee,    --  *  -- LAPACK is a software package provided by Univ. of Tennessee,    --
 *  -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..--  *  -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..--
 *     November 2011  *     September 2012
 *  *
 *     .. Scalar Arguments ..  *     .. Scalar Arguments ..
       INTEGER            INCX, N        INTEGER            INCX, N
Line 129 Line 129
       INTEGER            IX        INTEGER            IX
       DOUBLE PRECISION   TEMP1        DOUBLE PRECISION   TEMP1
 *     ..  *     ..
   *     .. External Functions ..
         LOGICAL            DISNAN
         EXTERNAL           DISNAN
   *     ..
 *     .. Intrinsic Functions ..  *     .. Intrinsic Functions ..
       INTRINSIC          ABS, DBLE, DIMAG        INTRINSIC          ABS, DBLE, DIMAG
 *     ..  *     ..
Line 136 Line 140
 *  *
       IF( N.GT.0 ) THEN        IF( N.GT.0 ) THEN
          DO 10 IX = 1, 1 + ( N-1 )*INCX, INCX           DO 10 IX = 1, 1 + ( N-1 )*INCX, INCX
             IF( DBLE( X( IX ) ).NE.ZERO ) THEN              TEMP1 = ABS( DBLE( X( IX ) ) )
                TEMP1 = ABS( DBLE( X( IX ) ) )              IF( TEMP1.GT.ZERO.OR.DISNAN( TEMP1 ) ) THEN
                IF( SCALE.LT.TEMP1 ) THEN                 IF( SCALE.LT.TEMP1 ) THEN
                   SUMSQ = 1 + SUMSQ*( SCALE / TEMP1 )**2                    SUMSQ = 1 + SUMSQ*( SCALE / TEMP1 )**2
                   SCALE = TEMP1                    SCALE = TEMP1
Line 145 Line 149
                   SUMSQ = SUMSQ + ( TEMP1 / SCALE )**2                    SUMSQ = SUMSQ + ( TEMP1 / SCALE )**2
                END IF                 END IF
             END IF              END IF
             IF( DIMAG( X( IX ) ).NE.ZERO ) THEN              TEMP1 = ABS( DIMAG( X( IX ) ) )
                TEMP1 = ABS( DIMAG( X( IX ) ) )              IF( TEMP1.GT.ZERO.OR.DISNAN( TEMP1 ) ) THEN
                IF( SCALE.LT.TEMP1 ) THEN                 IF( SCALE.LT.TEMP1 ) THEN
                   SUMSQ = 1 + SUMSQ*( SCALE / TEMP1 )**2                    SUMSQ = 1 + SUMSQ*( SCALE / TEMP1 )**2
                   SCALE = TEMP1                    SCALE = TEMP1

Removed from v.1.9  
changed lines
  Added in v.1.12


CVSweb interface <joel.bertrand@systella.fr>