Diff for /rpl/lapack/blas/drot.f between versions 1.2 and 1.11

version 1.2, 2010/04/21 13:45:09 version 1.11, 2014/01/27 09:28:12
Line 1 Line 1
   *> \brief \b DROT
   *
   *  =========== DOCUMENTATION ===========
   *
   * Online html documentation available at 
   *            http://www.netlib.org/lapack/explore-html/ 
   *
   *  Definition:
   *  ===========
   *
   *       SUBROUTINE DROT(N,DX,INCX,DY,INCY,C,S)
   * 
   *       .. Scalar Arguments ..
   *       DOUBLE PRECISION C,S
   *       INTEGER INCX,INCY,N
   *       ..
   *       .. Array Arguments ..
   *       DOUBLE PRECISION DX(*),DY(*)
   *       ..
   *  
   *
   *> \par Purpose:
   *  =============
   *>
   *> \verbatim
   *>
   *>    DROT applies a plane rotation.
   *> \endverbatim
   *
   *  Authors:
   *  ========
   *
   *> \author Univ. of Tennessee 
   *> \author Univ. of California Berkeley 
   *> \author Univ. of Colorado Denver 
   *> \author NAG Ltd. 
   *
   *> \date November 2011
   *
   *> \ingroup double_blas_level1
   *
   *> \par Further Details:
   *  =====================
   *>
   *> \verbatim
   *>
   *>     jack dongarra, linpack, 3/11/78.
   *>     modified 12/3/93, array(1) declarations changed to array(*)
   *> \endverbatim
   *>
   *  =====================================================================
       SUBROUTINE DROT(N,DX,INCX,DY,INCY,C,S)        SUBROUTINE DROT(N,DX,INCX,DY,INCY,C,S)
   *
   *  -- Reference BLAS level1 routine (version 3.4.0) --
   *  -- Reference BLAS is a software package provided by Univ. of Tennessee,    --
   *  -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..--
   *     November 2011
   *
 *     .. Scalar Arguments ..  *     .. Scalar Arguments ..
       DOUBLE PRECISION C,S        DOUBLE PRECISION C,S
       INTEGER INCX,INCY,N        INTEGER INCX,INCY,N
Line 7 Line 64
       DOUBLE PRECISION DX(*),DY(*)        DOUBLE PRECISION DX(*),DY(*)
 *     ..  *     ..
 *  *
 *  Purpose  
 *  =======  
 *  
 *     DROT applies a plane rotation.  
 *  
 *  Further Details  
 *  ===============  
 *  
 *     jack dongarra, linpack, 3/11/78.  
 *     modified 12/3/93, array(1) declarations changed to array(*)  
 *  
 *  =====================================================================  *  =====================================================================
 *  *
 *     .. Local Scalars ..  *     .. Local Scalars ..
Line 25 Line 71
       INTEGER I,IX,IY        INTEGER I,IX,IY
 *     ..  *     ..
       IF (N.LE.0) RETURN        IF (N.LE.0) RETURN
       IF (INCX.EQ.1 .AND. INCY.EQ.1) GO TO 20        IF (INCX.EQ.1 .AND. INCY.EQ.1) THEN
 *  *
 *       code for unequal increments or equal increments not equal  *       code for both increments equal to 1
 *         to 1  
 *  *
       IX = 1           DO I = 1,N
       IY = 1              DTEMP = C*DX(I) + S*DY(I)
       IF (INCX.LT.0) IX = (-N+1)*INCX + 1              DY(I) = C*DY(I) - S*DX(I)
       IF (INCY.LT.0) IY = (-N+1)*INCY + 1              DX(I) = DTEMP
       DO 10 I = 1,N           END DO
           DTEMP = C*DX(IX) + S*DY(IY)        ELSE
           DY(IY) = C*DY(IY) - S*DX(IX)  
           DX(IX) = DTEMP  
           IX = IX + INCX  
           IY = IY + INCY  
    10 CONTINUE  
       RETURN  
 *  *
 *       code for both increments equal to 1  *       code for unequal increments or equal increments not equal
   *         to 1
 *  *
    20 DO 30 I = 1,N           IX = 1
           DTEMP = C*DX(I) + S*DY(I)           IY = 1
           DY(I) = C*DY(I) - S*DX(I)           IF (INCX.LT.0) IX = (-N+1)*INCX + 1
           DX(I) = DTEMP           IF (INCY.LT.0) IY = (-N+1)*INCY + 1
    30 CONTINUE           DO I = 1,N
               DTEMP = C*DX(IX) + S*DY(IY)
               DY(IY) = C*DY(IY) - S*DX(IX)
               DX(IX) = DTEMP
               IX = IX + INCX
               IY = IY + INCY
            END DO
         END IF
       RETURN        RETURN
       END        END

Removed from v.1.2  
changed lines
  Added in v.1.11


CVSweb interface <joel.bertrand@systella.fr>