LAPACK
3.12.0
LAPACK: Linear Algebra PACKage
Loading...
Searching...
No Matches
icmax1.f
Go to the documentation of this file.
1
*> \brief \b ICMAX1 finds the index of the first vector element of maximum 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 ICMAX1 + dependencies
10
*> <a href="http://www.netlib.org/cgi-bin/netlibfiles.tgz?format=tgz&filename=/lapack/lapack_routine/icmax1.f">
11
*> [TGZ]</a>
12
*> <a href="http://www.netlib.org/cgi-bin/netlibfiles.zip?format=zip&filename=/lapack/lapack_routine/icmax1.f">
13
*> [ZIP]</a>
14
*> <a href="http://www.netlib.org/cgi-bin/netlibfiles.txt?format=txt&filename=/lapack/lapack_routine/icmax1.f">
15
*> [TXT]</a>
16
*> \endhtmlonly
17
*
18
* Definition:
19
* ===========
20
*
21
* INTEGER FUNCTION ICMAX1( N, CX, INCX )
22
*
23
* .. Scalar Arguments ..
24
* INTEGER INCX, N
25
* ..
26
* .. Array Arguments ..
27
* COMPLEX CX( * )
28
* ..
29
*
30
*
31
*> \par Purpose:
32
* =============
33
*>
34
*> \verbatim
35
*>
36
*> ICMAX1 finds the index of the first vector element of maximum absolute value.
37
*>
38
*> Based on ICAMAX from Level 1 BLAS.
39
*> The change is to use the 'genuine' absolute value.
40
*> \endverbatim
41
*
42
* Arguments:
43
* ==========
44
*
45
*> \param[in] N
46
*> \verbatim
47
*> N is INTEGER
48
*> The number of elements in the vector CX.
49
*> \endverbatim
50
*>
51
*> \param[in] CX
52
*> \verbatim
53
*> CX is COMPLEX array, dimension (N)
54
*> The vector CX. The ICMAX1 function returns the index of its first
55
*> element of maximum absolute value.
56
*> \endverbatim
57
*>
58
*> \param[in] INCX
59
*> \verbatim
60
*> INCX is INTEGER
61
*> The spacing between successive values of CX. INCX >= 1.
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 imax1
73
*
74
*> \par Contributors:
75
* ==================
76
*>
77
*> Nick Higham for use with CLACON.
78
*
79
* =====================================================================
80
INTEGER
FUNCTION
icmax1
( 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
cx(*)
91
* ..
92
*
93
* =====================================================================
94
*
95
* .. Local Scalars ..
96
REAL
smax
97
INTEGER
i, ix
98
* ..
99
* .. Intrinsic Functions ..
100
INTRINSIC
abs
101
* ..
102
* .. Executable Statements ..
103
*
104
icmax1
= 0
105
IF
(n.LT.1 .OR. incx.LE.0)
RETURN
106
icmax1
= 1
107
IF
(n.EQ.1)
RETURN
108
IF
(incx.EQ.1)
THEN
109
*
110
* code for increment equal to 1
111
*
112
smax = abs(cx(1))
113
DO
i = 2,n
114
IF
(abs(cx(i)).GT.smax)
THEN
115
icmax1
= i
116
smax = abs(cx(i))
117
END IF
118
END DO
119
ELSE
120
*
121
* code for increment not equal to 1
122
*
123
ix = 1
124
smax = abs(cx(1))
125
ix = ix + incx
126
DO
i = 2,n
127
IF
(abs(cx(ix)).GT.smax)
THEN
128
icmax1
= i
129
smax = abs(cx(ix))
130
END IF
131
ix = ix + incx
132
END DO
133
END IF
134
RETURN
135
*
136
* End of ICMAX1
137
*
138
END
icmax1
integer function icmax1(n, cx, incx)
ICMAX1 finds the index of the first vector element of maximum absolute value.
Definition
icmax1.f:81
SRC
icmax1.f
Generated on Tue Nov 28 2023 11:55:06 for LAPACK by
1.9.7