NAG FL Interface
f16drf (iamin_​val)

Settings help

FL Name Style:


FL Specification Language:


1 Purpose

f16drf computes, with respect to absolute value, the smallest component of an integer vector, along with the index of that component.

2 Specification

Fortran Interface
Subroutine f16drf ( n, x, incx, k, i)
Integer, Intent (In) :: n, x(1+(n-1)*ABS(incx)), incx
Integer, Intent (Out) :: k, i
C Header Interface
#include <nag.h>
void  f16drf_ (const Integer *n, const Integer x[], const Integer *incx, Integer *k, Integer *i)
The routine may be called by the names f16drf or nagf_blast_iamin_val.

3 Description

f16drf computes, with respect to absolute value, the smallest component, i, of an n-element integer vector x, and determines the smallest index, k, such that
i=|xk|=minj|xj|.  

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.
2: x(1+(n-1)×|incx|) Integer array Input
On entry: the n-element vector x.
If incx>0, xi must be stored in x((i-1)×incx+1), for i=1,2,,n.
If incx<0, xi must be stored in x((n-i)×|incx|+1), for i=1,2,,n.
Intermediate elements of x are not referenced. If n=0, x is not referenced.
3: incx Integer Input
On entry: the increment in the subscripts of x between successive elements of x.
Constraint: incx0.
4: k Integer Output
On exit: k, the index, from the set {1,2,,n} , of the smallest component of x with respect to absolute value. If n0 on input then k is returned as 0.
5: i Integer Output
On exit: i, the smallest component of x with respect to absolute value. If n0 on input then i is returned as 0.

6 Error Indicators and Warnings

If incx=0, an error message is printed and program execution is terminated.

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

Background information to multithreading can be found in the Multithreading documentation.
f16drf is not threaded in any implementation.

9 Further Comments

None.

10 Example

This example computes the smallest component with respect to absolute value and index of that component for the vector
x= (1,10,11,−2,9) T .  

10.1 Program Text

Program Text (f16drfe.f90)

10.2 Program Data

Program Data (f16drfe.d)

10.3 Program Results

Program Results (f16drfe.r)