version 1.12, 2016/08/27 15:37:52
|
version 1.14, 2018/05/29 06:55:12
|
Line 2
|
Line 2
|
* |
* |
* =========== 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/ |
* |
* |
* Definition: |
* Definition: |
* =========== |
* =========== |
* |
* |
* SUBROUTINE DCOPY(N,DX,INCX,DY,INCY) |
* SUBROUTINE DCOPY(N,DX,INCX,DY,INCY) |
* |
* |
* .. Scalar Arguments .. |
* .. Scalar Arguments .. |
* INTEGER INCX,INCY,N |
* INTEGER INCX,INCY,N |
* .. |
* .. |
* .. Array Arguments .. |
* .. Array Arguments .. |
* DOUBLE PRECISION DX(*),DY(*) |
* DOUBLE PRECISION DX(*),DY(*) |
* .. |
* .. |
* |
* |
* |
* |
*> \par Purpose: |
*> \par Purpose: |
* ============= |
* ============= |
Line 24
|
Line 24
|
*> \verbatim |
*> \verbatim |
*> |
*> |
*> DCOPY copies a vector, x, to a vector, y. |
*> DCOPY copies a vector, x, to a vector, y. |
*> uses unrolled loops for increments equal to one. |
*> uses unrolled loops for increments equal to 1. |
|
*> \endverbatim |
|
* |
|
* Arguments: |
|
* ========== |
|
* |
|
*> \param[in] N |
|
*> \verbatim |
|
*> N is INTEGER |
|
*> number of elements in input vector(s) |
|
*> \endverbatim |
|
*> |
|
*> \param[in] DX |
|
*> \verbatim |
|
*> DX is DOUBLE PRECISION array, dimension ( 1 + ( N - 1 )*abs( INCX ) ) |
|
*> \endverbatim |
|
*> |
|
*> \param[in] INCX |
|
*> \verbatim |
|
*> INCX is INTEGER |
|
*> storage spacing between elements of DX |
|
*> \endverbatim |
|
*> |
|
*> \param[out] DY |
|
*> \verbatim |
|
*> DY is DOUBLE PRECISION array, dimension ( 1 + ( N - 1 )*abs( INCY ) ) |
|
*> \endverbatim |
|
*> |
|
*> \param[in] INCY |
|
*> \verbatim |
|
*> INCY is INTEGER |
|
*> storage spacing between elements of DY |
*> \endverbatim |
*> \endverbatim |
* |
* |
* 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 November 2017 |
* |
* |
*> \ingroup double_blas_level1 |
*> \ingroup double_blas_level1 |
* |
* |
Line 51
|
Line 82
|
* ===================================================================== |
* ===================================================================== |
SUBROUTINE DCOPY(N,DX,INCX,DY,INCY) |
SUBROUTINE DCOPY(N,DX,INCX,DY,INCY) |
* |
* |
* -- Reference BLAS level1 routine (version 3.4.0) -- |
* -- Reference BLAS level1 routine (version 3.8.0) -- |
* -- Reference BLAS is a software package provided by Univ. of Tennessee, -- |
* -- Reference BLAS 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 |
* November 2017 |
* |
* |
* .. Scalar Arguments .. |
* .. Scalar Arguments .. |
INTEGER INCX,INCY,N |
INTEGER INCX,INCY,N |
Line 85
|
Line 116
|
DY(I) = DX(I) |
DY(I) = DX(I) |
END DO |
END DO |
IF (N.LT.7) RETURN |
IF (N.LT.7) RETURN |
END IF |
END IF |
MP1 = M + 1 |
MP1 = M + 1 |
DO I = MP1,N,7 |
DO I = MP1,N,7 |
DY(I) = DX(I) |
DY(I) = DX(I) |
Line 96
|
Line 127
|
DY(I+5) = DX(I+5) |
DY(I+5) = DX(I+5) |
DY(I+6) = DX(I+6) |
DY(I+6) = DX(I+6) |
END DO |
END DO |
ELSE |
ELSE |
* |
* |
* code for unequal increments or equal increments |
* code for unequal increments or equal increments |
* not equal to 1 |
* not equal to 1 |