rank_local_count Function

public pure function rank_local_count(n_global, n_ranks, rank_id) result(n_local)

Single source of truth for the slab/block partition: the number of global cells owned by rank_id (0-based) when n_global cells are split across n_ranks. floor(n_global/n_ranks) per rank, with the remainder distributed one extra cell each to the first mod(n_global,n_ranks) ranks. Pure — used by decompose(), the gather/scatter count builders, and the 2D axis split so the partition arithmetic exists in exactly one place.

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: n_global
integer, intent(in) :: n_ranks
integer, intent(in) :: rank_id

Return Value integer