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

version 1.9, 2011/11/21 22:19:54 version 1.15, 2017/06/17 10:54:23
Line 1 Line 1
 *> \brief \b ZLASSQ  *> \brief \b ZLASSQ updates a sum of squares represented in scaled form.
 *  *
 *  =========== DOCUMENTATION ===========  *  =========== DOCUMENTATION ===========
 *  *
 * Online html documentation available at   * Online html documentation available at
 *            http://www.netlib.org/lapack/explore-html/   *            http://www.netlib.org/lapack/explore-html/
 *  *
 *> \htmlonly  *> \htmlonly
 *> Download ZLASSQ + dependencies   *> Download ZLASSQ + dependencies
 *> <a href="http://www.netlib.org/cgi-bin/netlibfiles.tgz?format=tgz&filename=/lapack/lapack_routine/zlassq.f">   *> <a href="http://www.netlib.org/cgi-bin/netlibfiles.tgz?format=tgz&filename=/lapack/lapack_routine/zlassq.f">
 *> [TGZ]</a>   *> [TGZ]</a>
 *> <a href="http://www.netlib.org/cgi-bin/netlibfiles.zip?format=zip&filename=/lapack/lapack_routine/zlassq.f">   *> <a href="http://www.netlib.org/cgi-bin/netlibfiles.zip?format=zip&filename=/lapack/lapack_routine/zlassq.f">
 *> [ZIP]</a>   *> [ZIP]</a>
 *> <a href="http://www.netlib.org/cgi-bin/netlibfiles.txt?format=txt&filename=/lapack/lapack_routine/zlassq.f">   *> <a href="http://www.netlib.org/cgi-bin/netlibfiles.txt?format=txt&filename=/lapack/lapack_routine/zlassq.f">
 *> [TXT]</a>  *> [TXT]</a>
 *> \endhtmlonly   *> \endhtmlonly
 *  *
 *  Definition:  *  Definition:
 *  ===========  *  ===========
 *  *
 *       SUBROUTINE ZLASSQ( N, X, INCX, SCALE, SUMSQ )  *       SUBROUTINE ZLASSQ( N, X, INCX, SCALE, SUMSQ )
 *   *
 *       .. Scalar Arguments ..  *       .. Scalar Arguments ..
 *       INTEGER            INCX, N  *       INTEGER            INCX, N
 *       DOUBLE PRECISION   SCALE, SUMSQ  *       DOUBLE PRECISION   SCALE, SUMSQ
Line 27 Line 27
 *       .. Array Arguments ..  *       .. Array Arguments ..
 *       COMPLEX*16         X( * )  *       COMPLEX*16         X( * )
 *       ..  *       ..
 *    *
 *  *
 *> \par Purpose:  *> \par Purpose:
 *  =============  *  =============
Line 94 Line 94
 *  Authors:  *  Authors:
 *  ========  *  ========
 *  *
 *> \author Univ. of Tennessee   *> \author Univ. of Tennessee
 *> \author Univ. of California Berkeley   *> \author Univ. of California Berkeley
 *> \author Univ. of Colorado Denver   *> \author Univ. of Colorado Denver
 *> \author NAG Ltd.   *> \author NAG Ltd.
 *  *
 *> \date November 2011  *> \date December 2016
 *  *
 *> \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.7.0) --
 *  -- 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  *     December 2016
 *  *
 *     .. 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.15


CVSweb interface <joel.bertrand@systella.fr>