1: SUBROUTINE ZSCAL(N,ZA,ZX,INCX)
2: * .. Scalar Arguments ..
3: DOUBLE COMPLEX ZA
4: INTEGER INCX,N
5: * ..
6: * .. Array Arguments ..
7: DOUBLE COMPLEX ZX(*)
8: * ..
9: *
10: * Purpose
11: * =======
12: *
13: * ZSCAL scales a vector by a constant.
14: *
15: * Further Details
16: * ===============
17: *
18: * jack dongarra, 3/11/78.
19: * modified 3/93 to return if incx .le. 0.
20: * modified 12/3/93, array(1) declarations changed to array(*)
21: *
22: * =====================================================================
23: *
24: * .. Local Scalars ..
25: INTEGER I,NINCX
26: * ..
27: IF (N.LE.0 .OR. INCX.LE.0) RETURN
28: IF (INCX.EQ.1) THEN
29: *
30: * code for increment equal to 1
31: *
32: DO I = 1,N
33: ZX(I) = ZA*ZX(I)
34: END DO
35: ELSE
36: *
37: * code for increment not equal to 1
38: *
39: NINCX = N*INCX
40: DO I = 1,NINCX,INCX
41: ZX(I) = ZA*ZX(I)
42: END DO
43: END IF
44: RETURN
45: END
CVSweb interface <joel.bertrand@systella.fr>