Annotation of rpl/lapack/blas/zcopy.f, revision 1.1.1.1
1.1 bertrand 1: SUBROUTINE ZCOPY(N,ZX,INCX,ZY,INCY)
2: * .. Scalar Arguments ..
3: INTEGER INCX,INCY,N
4: * ..
5: * .. Array Arguments ..
6: DOUBLE COMPLEX ZX(*),ZY(*)
7: * ..
8: *
9: * Purpose
10: * =======
11: *
12: * ZCOPY copies a vector, x, to a vector, y.
13: *
14: * Further Details
15: * ===============
16: *
17: * jack dongarra, linpack, 4/11/78.
18: * modified 12/3/93, array(1) declarations changed to array(*)
19: *
20: * =====================================================================
21: *
22: * .. Local Scalars ..
23: INTEGER I,IX,IY
24: * ..
25: IF (N.LE.0) RETURN
26: IF (INCX.EQ.1 .AND. INCY.EQ.1) GO TO 20
27: *
28: * code for unequal increments or equal increments
29: * not equal to 1
30: *
31: IX = 1
32: IY = 1
33: IF (INCX.LT.0) IX = (-N+1)*INCX + 1
34: IF (INCY.LT.0) IY = (-N+1)*INCY + 1
35: DO 10 I = 1,N
36: ZY(IY) = ZX(IX)
37: IX = IX + INCX
38: IY = IY + INCY
39: 10 CONTINUE
40: RETURN
41: *
42: * code for both increments equal to 1
43: *
44: 20 DO 30 I = 1,N
45: ZY(I) = ZX(I)
46: 30 CONTINUE
47: RETURN
48: END
CVSweb interface <joel.bertrand@systella.fr>