NAG Library Function Document

1Purpose

nag_zamax_val (f16jsc) computes, with respect to absolute value, the largest component of a complex vector, along with the index of that component.

2Specification

 #include #include
 void nag_zamax_val (Integer n, const Complex x[], Integer incx, Integer *k, double *r, NagError *fail)

3Description

nag_zamax_val (f16jsc) computes, with respect to absolute value, the largest component, $r$, of an $n$-element complex vector $x$, and determines the smallest index, $k$, such that
 $r = Re⁡xk + Im⁡xk = maxj Re⁡xj + Im⁡xj .$

4References

Basic Linear Algebra Subprograms Technical (BLAST) Forum (2001) Basic Linear Algebra Subprograms Technical (BLAST) Forum Standard University of Tennessee, Knoxville, Tennessee http://www.netlib.org/blas/blast-forum/blas-report.pdf

5Arguments

1:    $\mathbf{n}$IntegerInput
On entry: $n$, the number of elements in $x$.
Constraint: ${\mathbf{n}}\ge 0$.
2:    $\mathbf{x}\left[\mathit{dim}\right]$const ComplexInput
Note: the dimension, dim, of the array x must be at least $\mathrm{max}\phantom{\rule{0.125em}{0ex}}\left(1,1+\left({\mathbf{n}}-1\right)×\left|{\mathbf{incx}}\right|\right)$.
On entry: the $n$-element vector $x$.
If ${\mathbf{incx}}>0$, ${x}_{\mathit{i}}$ must be stored in ${\mathbf{x}}\left[\left(\mathit{i}-1\right)×{\mathbf{incx}}\right]$, for $\mathit{i}=1,2,\dots ,{\mathbf{n}}$.
If ${\mathbf{incx}}<0$, ${x}_{\mathit{i}}$ must be stored in ${\mathbf{x}}\left[\left({\mathbf{n}}-\mathit{i}\right)×\left|{\mathbf{incx}}\right|\right]$, for $\mathit{i}=1,2,\dots ,{\mathbf{n}}$.
Intermediate elements of x are not referenced. If ${\mathbf{n}}=0$, x is not referenced and may be NULL.
3:    $\mathbf{incx}$IntegerInput
On entry: the increment in the subscripts of x between successive elements of $x$.
Constraint: ${\mathbf{incx}}\ne 0$.
4:    $\mathbf{k}$Integer *Output
On exit: $k$, the index, from the set $\left\{0,1,\dots ,{\mathbf{n}}-1\right\}$, of the largest component of $x$ with respect to absolute value. If ${\mathbf{n}}=0$ on input then k is returned as $-1$.
5:    $\mathbf{r}$double *Output
On exit: $r$, the largest component of $x$ with respect to absolute value. If ${\mathbf{n}}=0$ on input then r is returned as $0.0$.
6:    $\mathbf{fail}$NagError *Input/Output
The NAG error argument (see Section 3.7 in How to Use the NAG Library and its Documentation).

6Error Indicators and Warnings

NE_ALLOC_FAIL
Dynamic memory allocation failed.
See Section 2.3.1.2 in How to Use the NAG Library and its Documentation for further information.
On entry, argument $〈\mathit{\text{value}}〉$ had an illegal value.
NE_INT
On entry, ${\mathbf{incx}}=〈\mathit{\text{value}}〉$.
Constraint: ${\mathbf{incx}}\ne 0$.
On entry, ${\mathbf{n}}=〈\mathit{\text{value}}〉$.
Constraint: ${\mathbf{n}}\ge 0$.
NE_NO_LICENCE
Your licence key may have expired or may not have been installed correctly.
See Section 2.7.5 in How to Use the NAG Library and its Documentation for further information.

7Accuracy

The BLAS standard requires accurate implementations which avoid unnecessary over/underflow (see Section 2.7 of Basic Linear Algebra Subprograms Technical (BLAST) Forum (2001)).

8Parallelism and Performance

nag_zamax_val (f16jsc) is not threaded in any implementation.

None.

10Example

This example computes the largest component with respect to absolute value and index of that component for the vector
 $x= -4+2.1i,3.7+4.5i,-6+1.2iT .$

10.1Program Text

Program Text (f16jsce.c)

10.2Program Data

Program Data (f16jsce.d)

10.3Program Results

Program Results (f16jsce.r)

© The Numerical Algorithms Group Ltd, Oxford, UK. 2017