NAG Library Manual, Mark 28.3
Interfaces:
FL
CL
CPP
AD
NAG CL Interface Introduction
F16 (Blast) Chapter Contents
F16 (Blast) Chapter Introduction
f16dn:
FL
CL
CPP
AD
NAG CL Interface
f16dnc (imax_val)
Keyword Search:
NAG Library Manual, Mark 28.3
Interfaces:
FL
CL
CPP
AD
NAG CL Interface Introduction
F16 (Blast) Chapter Contents
F16 (Blast) Chapter Introduction
f16dn:
FL
CL
CPP
AD
▸
▿
Contents
1
Purpose
2
Specification
3
Description
4
References
5
Arguments
6
Error Indicators and Warnings
7
Accuracy
8
Parallelism and Performance
9
Further Comments
▸
▿
10
Example
10.1
Program Text
10.2
Program Data
10.3
Program Results
© The Numerical Algorithms Group Ltd. 2022
Settings help
CL Name Style:
Short (
a00aac
)
Long (
impl_details
)
Full (
nag_info_impl_details
)
1
Purpose
f16dnc
computes the largest component of an integer vector, along with the index of that component.
2
Specification
copy
#include <nag.h>
void
f16dnc
(
Integer
n
,
const Integer
x
[],
Integer
incx
,
Integer *
k
,
Integer *
i
,
NagError *
fail
)
The function may be called by the names:
f16dnc
,
nag_blast_imax_val
or
nag_imax_val
.
3
Description
f16dnc
computes the largest component,
i
, of an
n
-element integer vector
x
, and determines the smallest index,
k
, such that
i
=
x
k
=
max
j
x
j
.
4
References
Basic Linear Algebra Subprograms Technical (BLAST) Forum (2001)
Basic Linear Algebra Subprograms Technical (BLAST) Forum Standard
University of Tennessee, Knoxville, Tennessee
https://www.netlib.org/blas/blast-forum/blas-report.pdf
5
Arguments
1:
n
–
Integer
Input
On entry
:
n
, the number of elements in
x
.
Constraint
:
n
≥
0
.
2:
x
[
dim
]
–
const Integer
Input
Note:
the dimension,
dim
, of the array
x
must be at least
max
(
1
,
1
+
(
n
-
1
)
×
|
incx
|
)
.
On entry
: the
n
-element vector
x
.
If
incx
>
0
,
x
i
must be stored in
x
[
(
i
-
1
)
×
incx
]
, for
i
=
1
,
2
,
…
,
n
.
If
incx
<
0
,
x
i
must be stored in
x
[
(
n
-
i
)
×
|
incx
|
]
, for
i
=
1
,
2
,
…
,
n
.
Intermediate elements of
x
are not referenced. If
n
=
0
,
x
is not referenced and may be
NULL
.
3:
incx
–
Integer
Input
On entry
: the increment in the subscripts of
x
between successive elements of
x
.
Constraint
:
incx
≠
0
.
4:
k
–
Integer *
Output
On exit
:
k
, the index, from the set
{
0
,
1
,
…
,
n
-
1
}
, of the largest component of
x
. If
n
=
0
on input then
k
is returned as
−1
.
5:
i
–
Integer *
Output
On exit
:
i
, the largest component of
x
. If
n
=
0
on input then
i
is returned as
0
.
6:
fail
–
NagError *
Input/Output
The NAG error argument (see
Section 7
in the Introduction to the NAG Library CL Interface).
6
Error Indicators and Warnings
NE_ALLOC_FAIL
Dynamic memory allocation failed.
See
Section 3.1.2
in the Introduction to the NAG Library CL Interface for further information.
NE_BAD_PARAM
On entry, argument
⟨
value
⟩
had an illegal value.
NE_INT
On entry,
incx
=
⟨
value
⟩
.
Constraint:
incx
≠
0
.
On entry,
n
=
⟨
value
⟩
.
Constraint:
n
≥
0
.
NE_NO_LICENCE
Your licence key may have expired or may not have been installed correctly.
See
Section 8
in the Introduction to the NAG Library CL Interface for further information.
7
Accuracy
The BLAS standard requires accurate implementations which avoid unnecessary over/underflow (see Section 2.7 of
Basic Linear Algebra Subprograms Technical (BLAST) Forum (2001)
).
8
Parallelism and Performance
f16dnc
is not threaded in any implementation.
9
Further Comments
None.
10
Example
This example computes the largest component and index of that component for the vector
x
=
(
1
,
10
,
11
,
−2
,
9
)
T
.
10.1
Program Text
Program Text (f16dnce.c)
10.2
Program Data
Program Data (f16dnce.d)
10.3
Program Results
Program Results (f16dnce.r)
NAG Library Manual, Mark 28.3
Interfaces:
FL
CL
CPP
AD
NAG CL Interface Introduction
F16 (Blast) Chapter Contents
F16 (Blast) Chapter Introduction
f16dn:
FL
CL
CPP
AD
© The Numerical Algorithms Group Ltd. 2022