stdlib_array#
Introduction#
Module for index manipulation and array handling tasks.
Procedures and methods provided#
trueloc#
Status#
Experimental
Description#
Turn a logical mask into an index array by selecting all true values.
Provides similar functionality like the built-in where or the intrinsic procedures merge and pack when working with logical mask.
The built-in / intrinsics are usually preferable to trueloc, unless the access to the index array is required.
Syntax#
loc = trueloc (array[, lbound])
Class#
Pure function.
Arguments#
array: List of default logical arrays. This argument is intent(in).
lbound: Lower bound of the array to index. This argument is optional and intent(in).
Return value#
Returns an array of default integer size, with a maximum length of size(array) elements.
Examples#
program example_trueloc
use stdlib_array, only: trueloc
implicit none
real, allocatable :: array(:)
allocate (array(500))
call random_number(array)
array(trueloc(array > 0.5)) = 0.0
end program example_trueloc
falseloc#
Status#
Experimental
Description#
Turn a logical mask into an index array by selecting all false values.
Provides similar functionality like the built-in where or the intrinsic procedures merge and pack when working with logical mask.
The built-in / intrinsics are usually preferable to falseloc, unless the access to the index array is required.
Syntax#
loc = falseloc (array[, lbound])
Class#
Pure function.
Arguments#
array: List of default logical arrays. This argument is intent(in).
lbound: Lower bound of the array to index. This argument is optional and intent(in).
Return value#
Returns an array of default integer size, with a maximum length of size(array) elements.
Examples#
program example_falseloc
use stdlib_array, only: falseloc
implicit none
real, allocatable :: array(:)
allocate (array(-200:200))
call random_number(array)
array(falseloc(array < 0.5, lbound(array, 1))) = 0.0
end program example_falseloc