Contents


NAME

     isamax - return the index of the element with largest  abso-
     lute value.

SYNOPSIS

     INTEGER FUNCTION ISAMAX(N, X, INCX)

     INTEGER N, INCX
     REAL X(*)

     INTEGER*8 FUNCTION ISAMAX_64(N, X, INCX)

     INTEGER*8 N, INCX
     REAL X(*)

  F95 INTERFACE
     INTEGER FUNCTION IAMAX([N], X, [INCX])

     INTEGER :: N, INCX
     REAL, DIMENSION(:) :: X

     INTEGER(8) FUNCTION IAMAX_64([N], X, [INCX])

     INTEGER(8) :: N, INCX
     REAL, DIMENSION(:) :: X

  C INTERFACE
     #include <sunperf.h>

     int isamax(int n, float *x, int incx);

     long isamax_64(long n, float *x, long incx);

PURPOSE

     isamax return the index of the element  in  x  with  largest
     absolute value where x is an n-vector.

ARGUMENTS

     N (input)
               On entry, N specifies the number  of  elements  in
               the  vector.   N must be at least one for the sub-
               routine to have any visible effect.  Unchanged  on
               exit.
     X (input)
               ( 1 + ( n - 1 )*abs( INCX  )  ).   On  entry,  the
               incremented  array  X  must  contain the vector x.
               Unchanged on exit.

     INCX (input)
               On entry, INCX specifies  the  increment  for  the
               elements  of X.  INCX must be positive.  Unchanged
               on exit.

NOTES

     If the vector contains all NaNs, the function returns 1.  If
     the  vector contains valid floating point numbers and one or
     more NaNs, the routine returns the index of the element con-
     taining the largest absolute value.