LAPACK
3.4.2
LAPACK: Linear Algebra PACKage
Main Page
Modules
Files
File List
File Members
All
Files
Functions
Groups
cdotu.f
Go to the documentation of this file.
1
*> \brief \b CDOTU
2
*
3
* =========== DOCUMENTATION ===========
4
*
5
* Online html documentation available at
6
* http://www.netlib.org/lapack/explore-html/
7
*
8
* Definition:
9
* ===========
10
*
11
* COMPLEX FUNCTION CDOTU(N,CX,INCX,CY,INCY)
12
*
13
* .. Scalar Arguments ..
14
* INTEGER INCX,INCY,N
15
* ..
16
* .. Array Arguments ..
17
* COMPLEX CX(*),CY(*)
18
* ..
19
*
20
*
21
*> \par Purpose:
22
* =============
23
*>
24
*> \verbatim
25
*>
26
*> CDOTU forms the dot product of two vectors.
27
*> \endverbatim
28
*
29
* Authors:
30
* ========
31
*
32
*> \author Univ. of Tennessee
33
*> \author Univ. of California Berkeley
34
*> \author Univ. of Colorado Denver
35
*> \author NAG Ltd.
36
*
37
*> \date November 2011
38
*
39
*> \ingroup complex_blas_level1
40
*
41
*> \par Further Details:
42
* =====================
43
*>
44
*> \verbatim
45
*>
46
*> jack dongarra, linpack, 3/11/78.
47
*> modified 12/3/93, array(1) declarations changed to array(*)
48
*> \endverbatim
49
*>
50
* =====================================================================
51
COMPLEX
FUNCTION
cdotu
(N,CX,INCX,CY,INCY)
52
*
53
* -- Reference BLAS level1 routine (version 3.4.0) --
54
* -- Reference BLAS is a software package provided by Univ. of Tennessee, --
55
* -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..--
56
* November 2011
57
*
58
* .. Scalar Arguments ..
59
INTEGER
incx,incy,n
60
* ..
61
* .. Array Arguments ..
62
COMPLEX
cx(*),cy(*)
63
* ..
64
*
65
* =====================================================================
66
*
67
* .. Local Scalars ..
68
COMPLEX
ctemp
69
INTEGER
i,ix,iy
70
* ..
71
ctemp = (0.0,0.0)
72
cdotu
= (0.0,0.0)
73
IF
(n.LE.0) return
74
IF
(incx.EQ.1 .AND. incy.EQ.1)
THEN
75
*
76
* code for both increments equal to 1
77
*
78
DO
i = 1,n
79
ctemp = ctemp + cx(i)*cy(i)
80
END DO
81
ELSE
82
*
83
* code for unequal increments or equal increments
84
* not equal to 1
85
*
86
ix = 1
87
iy = 1
88
IF
(incx.LT.0) ix = (-n+1)*incx + 1
89
IF
(incy.LT.0) iy = (-n+1)*incy + 1
90
DO
i = 1,n
91
ctemp = ctemp + cx(ix)*cy(iy)
92
ix = ix + incx
93
iy = iy + incy
94
END DO
95
END IF
96
cdotu
= ctemp
97
return
98
END
BLAS
SRC
cdotu.f
Generated on Tue Sep 25 2012 16:26:58 for LAPACK by
1.8.1.1