axis_split Subroutine

private pure subroutine axis_split(coord, dim, n_global, n_local, i_first, i_last)

Split one Cartesian axis (n_global cells across dim process slots) for the slot at coord. Delegates to the shared 1D slab-partition helpers so the per-axis block layout matches the 1D decompose() exactly (single source of truth: domain_decomposition%rank_local_count/rank_first_global).

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: coord
integer, intent(in) :: dim
integer, intent(in) :: n_global
integer, intent(out) :: n_local
integer, intent(out) :: i_first
integer, intent(out) :: i_last