LAPACK
3.12.0
LAPACK: Linear Algebra PACKage
Loading...
Searching...
No Matches
zdscal.f
Go to the documentation of this file.
1
*> \brief \b ZDSCAL
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 ZDSCAL(N,DA,ZX,INCX)
12
*
13
* .. Scalar Arguments ..
14
* DOUBLE PRECISION DA
15
* INTEGER INCX,N
16
* ..
17
* .. Array Arguments ..
18
* COMPLEX*16 ZX(*)
19
* ..
20
*
21
*
22
*> \par Purpose:
23
* =============
24
*>
25
*> \verbatim
26
*>
27
*> ZDSCAL scales a vector by a constant.
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] DA
40
*> \verbatim
41
*> DA is DOUBLE PRECISION
42
*> On entry, DA specifies the scalar alpha.
43
*> \endverbatim
44
*>
45
*> \param[in,out] ZX
46
*> \verbatim
47
*> ZX is COMPLEX*16 array, dimension ( 1 + ( N - 1 )*abs( INCX ) )
48
*> \endverbatim
49
*>
50
*> \param[in] INCX
51
*> \verbatim
52
*> INCX is INTEGER
53
*> storage spacing between elements of ZX
54
*> \endverbatim
55
*
56
* Authors:
57
* ========
58
*
59
*> \author Univ. of Tennessee
60
*> \author Univ. of California Berkeley
61
*> \author Univ. of Colorado Denver
62
*> \author NAG Ltd.
63
*
64
*> \ingroup scal
65
*
66
*> \par Further Details:
67
* =====================
68
*>
69
*> \verbatim
70
*>
71
*> jack dongarra, 3/11/78.
72
*> modified 3/93 to return if incx .le. 0.
73
*> modified 12/3/93, array(1) declarations changed to array(*)
74
*> \endverbatim
75
*>
76
* =====================================================================
77
SUBROUTINE
zdscal
(N,DA,ZX,INCX)
78
*
79
* -- Reference BLAS level1 routine --
80
* -- Reference BLAS is a software package provided by Univ. of Tennessee, --
81
* -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..--
82
*
83
* .. Scalar Arguments ..
84
DOUBLE PRECISION
DA
85
INTEGER
INCX,N
86
* ..
87
* .. Array Arguments ..
88
COMPLEX*16
ZX(*)
89
* ..
90
*
91
* =====================================================================
92
*
93
* .. Local Scalars ..
94
INTEGER
I,NINCX
95
* .. Parameters ..
96
DOUBLE PRECISION
ONE
97
parameter(one=1.0d+0)
98
* ..
99
* .. Intrinsic Functions ..
100
INTRINSIC
dble, dcmplx, dimag
101
* ..
102
IF
(n.LE.0 .OR. incx.LE.0 .OR. da.EQ.one)
RETURN
103
IF
(incx.EQ.1)
THEN
104
*
105
* code for increment equal to 1
106
*
107
DO
i = 1,n
108
zx(i) = dcmplx(da*dble(zx(i)),da*dimag(zx(i)))
109
END DO
110
ELSE
111
*
112
* code for increment not equal to 1
113
*
114
nincx = n*incx
115
DO
i = 1,nincx,incx
116
zx(i) = dcmplx(da*dble(zx(i)),da*dimag(zx(i)))
117
END DO
118
END IF
119
RETURN
120
*
121
* End of ZDSCAL
122
*
123
END
zdscal
subroutine zdscal(n, da, zx, incx)
ZDSCAL
Definition
zdscal.f:78
BLAS
SRC
zdscal.f
Generated on Tue Nov 28 2023 11:55:04 for LAPACK by
1.9.7