On Thu, Nov 19, 2015 at 11:05 PM, Frank Loeffler <knarf@cct.lsu.edu> wrote:
On Fri, Nov 20, 2015 at 04:41:48AM +0000, Garrison, David wrote:
> How do you find the number of non-zero elements in a Grid Function in Cactus?

The best way would probably be to count them locally on each process,
write the result in a distributed grid array, and do the sum there by
syncing the array and counting locally (not sure if a reduction on such
an array would work, it might).

There is no need for a distributed grid array. After counting locally, a "local reduction" (i.e. reduction of a local variable) gives you the overall result.

-erik

Another, but more expensive way (in terms of memory size and memory
accesses) would be to create another grid function, populate it with
either 1 or 0 depending on the non-zero-property of the GF you are
interested in, and calling the existing sum-reduction on it.

Frank


_______________________________________________
Users mailing list
Users@einsteintoolkit.org
http://lists.einsteintoolkit.org/mailman/listinfo/users




--