Annotation of rpl/lapack/blas/zdscal.f, revision 1.7
1.1 bertrand 1: SUBROUTINE ZDSCAL(N,DA,ZX,INCX)
2: * .. Scalar Arguments ..
3: DOUBLE PRECISION DA
4: INTEGER INCX,N
5: * ..
6: * .. Array Arguments ..
7: DOUBLE COMPLEX ZX(*)
8: * ..
9: *
10: * Purpose
11: * =======
12: *
13: * ZDSCAL 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 ..
1.7 ! bertrand 25: INTEGER I,NINCX
1.1 bertrand 26: * ..
27: * .. Intrinsic Functions ..
28: INTRINSIC DCMPLX
29: * ..
30: IF (N.LE.0 .OR. INCX.LE.0) RETURN
1.7 ! bertrand 31: IF (INCX.EQ.1) THEN
1.1 bertrand 32: *
1.7 ! bertrand 33: * code for increment equal to 1
1.1 bertrand 34: *
1.7 ! bertrand 35: DO I = 1,N
! 36: ZX(I) = DCMPLX(DA,0.0d0)*ZX(I)
! 37: END DO
! 38: ELSE
1.1 bertrand 39: *
1.7 ! bertrand 40: * code for increment not equal to 1
1.1 bertrand 41: *
1.7 ! bertrand 42: NINCX = N*INCX
! 43: DO I = 1,NINCX,INCX
! 44: ZX(I) = DCMPLX(DA,0.0d0)*ZX(I)
! 45: END DO
! 46: END IF
1.1 bertrand 47: RETURN
48: END
CVSweb interface <joel.bertrand@systella.fr>