1: *> \brief \b DZSUM1 forms the 1-norm of the complex vector using the true absolute value.
2: *
3: * =========== DOCUMENTATION ===========
4: *
5: * Online html documentation available at
6: * http://www.netlib.org/lapack/explore-html/
7: *
8: *> \htmlonly
9: *> Download DZSUM1 + dependencies
10: *> <a href="http://www.netlib.org/cgi-bin/netlibfiles.tgz?format=tgz&filename=/lapack/lapack_routine/dzsum1.f">
11: *> [TGZ]</a>
12: *> <a href="http://www.netlib.org/cgi-bin/netlibfiles.zip?format=zip&filename=/lapack/lapack_routine/dzsum1.f">
13: *> [ZIP]</a>
14: *> <a href="http://www.netlib.org/cgi-bin/netlibfiles.txt?format=txt&filename=/lapack/lapack_routine/dzsum1.f">
15: *> [TXT]</a>
16: *> \endhtmlonly
17: *
18: * Definition:
19: * ===========
20: *
21: * DOUBLE PRECISION FUNCTION DZSUM1( N, CX, INCX )
22: *
23: * .. Scalar Arguments ..
24: * INTEGER INCX, N
25: * ..
26: * .. Array Arguments ..
27: * COMPLEX*16 CX( * )
28: * ..
29: *
30: *
31: *> \par Purpose:
32: * =============
33: *>
34: *> \verbatim
35: *>
36: *> DZSUM1 takes the sum of the absolute values of a complex
37: *> vector and returns a double precision result.
38: *>
39: *> Based on DZASUM from the Level 1 BLAS.
40: *> The change is to use the 'genuine' absolute value.
41: *> \endverbatim
42: *
43: * Arguments:
44: * ==========
45: *
46: *> \param[in] N
47: *> \verbatim
48: *> N is INTEGER
49: *> The number of elements in the vector CX.
50: *> \endverbatim
51: *>
52: *> \param[in] CX
53: *> \verbatim
54: *> CX is COMPLEX*16 array, dimension (N)
55: *> The vector whose elements will be summed.
56: *> \endverbatim
57: *>
58: *> \param[in] INCX
59: *> \verbatim
60: *> INCX is INTEGER
61: *> The spacing between successive values of CX. INCX > 0.
62: *> \endverbatim
63: *
64: * Authors:
65: * ========
66: *
67: *> \author Univ. of Tennessee
68: *> \author Univ. of California Berkeley
69: *> \author Univ. of Colorado Denver
70: *> \author NAG Ltd.
71: *
72: *> \ingroup complex16OTHERauxiliary
73: *
74: *> \par Contributors:
75: * ==================
76: *>
77: *> Nick Higham for use with ZLACON.
78: *
79: * =====================================================================
80: DOUBLE PRECISION FUNCTION DZSUM1( N, CX, INCX )
81: *
82: * -- LAPACK auxiliary routine --
83: * -- LAPACK is a software package provided by Univ. of Tennessee, --
84: * -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..--
85: *
86: * .. Scalar Arguments ..
87: INTEGER INCX, N
88: * ..
89: * .. Array Arguments ..
90: COMPLEX*16 CX( * )
91: * ..
92: *
93: * =====================================================================
94: *
95: * .. Local Scalars ..
96: INTEGER I, NINCX
97: DOUBLE PRECISION STEMP
98: * ..
99: * .. Intrinsic Functions ..
100: INTRINSIC ABS
101: * ..
102: * .. Executable Statements ..
103: *
104: DZSUM1 = 0.0D0
105: STEMP = 0.0D0
106: IF( N.LE.0 )
107: $ RETURN
108: IF( INCX.EQ.1 )
109: $ GO TO 20
110: *
111: * CODE FOR INCREMENT NOT EQUAL TO 1
112: *
113: NINCX = N*INCX
114: DO 10 I = 1, NINCX, INCX
115: *
116: * NEXT LINE MODIFIED.
117: *
118: STEMP = STEMP + ABS( CX( I ) )
119: 10 CONTINUE
120: DZSUM1 = STEMP
121: RETURN
122: *
123: * CODE FOR INCREMENT EQUAL TO 1
124: *
125: 20 CONTINUE
126: DO 30 I = 1, N
127: *
128: * NEXT LINE MODIFIED.
129: *
130: STEMP = STEMP + ABS( CX( I ) )
131: 30 CONTINUE
132: DZSUM1 = STEMP
133: RETURN
134: *
135: * End of DZSUM1
136: *
137: END
CVSweb interface <joel.bertrand@systella.fr>