Next: MAXVAL, Previous: MAXEXPONENT, Up: Intrinsic Procedures [Contents][Index]

`MAXLOC`

— Location of the maximum value within an array*Description*:Determines the location of the element in the array with the maximum value, or, if the

`DIM`argument is supplied, determines the locations of the maximum element along each row of the array in the`DIM`direction. If`MASK`is present, only the elements for which`MASK`is`.TRUE.`

are considered. If more than one element in the array has the maximum value, the location returned is that of the first such element in array element order. If the array has zero size, or all of the elements of`MASK`are`.FALSE.`

, then the result is an array of zeroes. Similarly, if`DIM`is supplied and all of the elements of`MASK`along a given row are zero, the result value for that row is zero.*Standard*:Fortran 95 and later;

`ARRAY`of`CHARACTER`

and the`KIND`argument are available in Fortran 2003 and later.*Class*:Transformational function

*Syntax*:`RESULT = MAXLOC(ARRAY, DIM [, MASK] [,KIND])`

`RESULT = MAXLOC(ARRAY [, MASK] [,KIND])`

*Arguments*:`ARRAY`Shall be an array of type `INTEGER`

or`REAL`

.`DIM`(Optional) Shall be a scalar of type `INTEGER`

, with a value between one and the rank of`ARRAY`, inclusive. It may not be an optional dummy argument.`MASK`Shall be an array of type `LOGICAL`

, and conformable with`ARRAY`.`KIND`(Optional) An `INTEGER`

initialization expression indicating the kind parameter of the result.*Return value*:If

`DIM`is absent, the result is a rank-one array with a length equal to the rank of`ARRAY`. If`DIM`is present, the result is an array with a rank one less than the rank of`ARRAY`, and a size corresponding to the size of`ARRAY`with the`DIM`dimension removed. If`DIM`is present and`ARRAY`has a rank of one, the result is a scalar. If the optional argument`KIND`is present, the result is an integer of kind`KIND`, otherwise it is of default kind.*See also*:

Next: MAXVAL, Previous: MAXEXPONENT, Up: Intrinsic Procedures [Contents][Index]