Description: | Returns the location of the maximum value of all elements in an array, a set of elements in an array, or elements in a specified dimension of an array. | ||
Class: | Transformational function; Generic | ||
Arguments: | ARRAY | Must be an array of type integer or real. | |
DIM (opt) | Must be a scalar integer with a value in the range 1 to n, where n is the rank of ARRAY. This argument is a Fortran 95 feature. | ||
MASK (opt) | Must be a logical array that is conformable with ARRAY. | ||
Results: | The result
is an array of type default integer.
The following rules apply if DIM is omitted:
The following rules apply if DIM is specified:
If more than one element has maximum value, the element whose subscripts are returned is the first such element, taken in array element order. If ARRAY has size zero, the value of the result is undefined. |
Examples
The value of MAXLOC ((/3, 7, 4, 7/)) is (2), which is the subscript of the location of the first occurrence of the maximum value in the rank-one array.
A is the array
[ 4 0 -3 2 ] [ 3 1 -2 6 ] [ -1 -4 5 -5 ].
MAXLOC (A, MASK=A .LT. 5) has the value (1, 1) because these are the subscripts of the location of the maximum value (4) that is less than 5.
MAXLOC (A, DIM=1) has the value (1, 2, 3, 2). 1 is the subscript of the location of the maximum value (4) in column 1; 2 is the subscript of the location of the maximum value (1) in column 2; and so forth.
MAXLOC (A, DIM=2) has the value (1, 4, 3). 1 is the subscript of the location of the maximum value in row 1; 4 is the subscript of the location of the maximum value in row 2; and so forth.