LAPACK
3.9.0
LAPACK: Linear Algebra PACKage
scopy.f
Go to the documentation of this file.
1
*> \brief \b SCOPY
2
*
3
* =========== DOCUMENTATION ===========
4
*
5
* Online html documentation available at
6
* http://www.netlib.org/lapack/explore-html/
7
*
8
* Definition:
9
* ===========
10
*
11
* SUBROUTINE SCOPY(N,SX,INCX,SY,INCY)
12
*
13
* .. Scalar Arguments ..
14
* INTEGER INCX,INCY,N
15
* ..
16
* .. Array Arguments ..
17
* REAL SX(*),SY(*)
18
* ..
19
*
20
*
21
*> \par Purpose:
22
* =============
23
*>
24
*> \verbatim
25
*>
26
*> SCOPY copies a vector, x, to a vector, y.
27
*> uses unrolled loops for increments equal to 1.
28
*> \endverbatim
29
*
30
* Arguments:
31
* ==========
32
*
33
*> \param[in] N
34
*> \verbatim
35
*> N is INTEGER
36
*> number of elements in input vector(s)
37
*> \endverbatim
38
*>
39
*> \param[in] SX
40
*> \verbatim
41
*> SX is REAL array, dimension ( 1 + ( N - 1 )*abs( INCX ) )
42
*> \endverbatim
43
*>
44
*> \param[in] INCX
45
*> \verbatim
46
*> INCX is INTEGER
47
*> storage spacing between elements of SX
48
*> \endverbatim
49
*>
50
*> \param[out] SY
51
*> \verbatim
52
*> SY is REAL array, dimension ( 1 + ( N - 1 )*abs( INCY ) )
53
*> \endverbatim
54
*>
55
*> \param[in] INCY
56
*> \verbatim
57
*> INCY is INTEGER
58
*> storage spacing between elements of SY
59
*> \endverbatim
60
*
61
* Authors:
62
* ========
63
*
64
*> \author Univ. of Tennessee
65
*> \author Univ. of California Berkeley
66
*> \author Univ. of Colorado Denver
67
*> \author NAG Ltd.
68
*
69
*> \date November 2017
70
*
71
*> \ingroup single_blas_level1
72
*
73
*> \par Further Details:
74
* =====================
75
*>
76
*> \verbatim
77
*>
78
*> jack dongarra, linpack, 3/11/78.
79
*> modified 12/3/93, array(1) declarations changed to array(*)
80
*> \endverbatim
81
*>
82
* =====================================================================
83
SUBROUTINE
scopy
(N,SX,INCX,SY,INCY)
84
*
85
* -- Reference BLAS level1 routine (version 3.8.0) --
86
* -- Reference BLAS is a software package provided by Univ. of Tennessee, --
87
* -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..--
88
* November 2017
89
*
90
* .. Scalar Arguments ..
91
INTEGER
INCX,INCY,N
92
* ..
93
* .. Array Arguments ..
94
REAL
SX(*),SY(*)
95
* ..
96
*
97
* =====================================================================
98
*
99
* .. Local Scalars ..
100
INTEGER
I,IX,IY,M,MP1
101
* ..
102
* .. Intrinsic Functions ..
103
INTRINSIC
mod
104
* ..
105
IF
(n.LE.0)
RETURN
106
IF
(incx.EQ.1 .AND. incy.EQ.1)
THEN
107
*
108
* code for both increments equal to 1
109
*
110
*
111
* clean-up loop
112
*
113
m = mod(n,7)
114
IF
(m.NE.0)
THEN
115
DO
i = 1,m
116
sy(i) = sx(i)
117
END DO
118
IF
(n.LT.7)
RETURN
119
END IF
120
mp1 = m + 1
121
DO
i = mp1,n,7
122
sy(i) = sx(i)
123
sy(i+1) = sx(i+1)
124
sy(i+2) = sx(i+2)
125
sy(i+3) = sx(i+3)
126
sy(i+4) = sx(i+4)
127
sy(i+5) = sx(i+5)
128
sy(i+6) = sx(i+6)
129
END DO
130
ELSE
131
*
132
* code for unequal increments or equal increments
133
* not equal to 1
134
*
135
ix = 1
136
iy = 1
137
IF
(incx.LT.0) ix = (-n+1)*incx + 1
138
IF
(incy.LT.0) iy = (-n+1)*incy + 1
139
DO
i = 1,n
140
sy(iy) = sx(ix)
141
ix = ix + incx
142
iy = iy + incy
143
END DO
144
END IF
145
RETURN
146
END
scopy
subroutine scopy(N, SX, INCX, SY, INCY)
SCOPY
Definition:
scopy.f:84
BLAS
SRC
scopy.f
Generated on Wed May 5 2021 15:10:30 for LAPACK by
1.8.16