Neighbour computation broken for non-uniform subdivisions

Considering the subdivision

[
    Length(
        456.70000000000005,
    ),
    Length(
        1000.0,
    ),
    Length(
        310.3,
    ),
    Length(
        528.9,
    ),
    Length(
        788.6,
    ),
    Length(
        1000.0,
    ),
    Length(
        151.3,
    ),
    Length(
        310.0,
    ),
    Length(
        588.0,
    ),
    Length(
        1000.0,
    ),
]

of all landscape with 10 clusters, the process at rank 6 out of 8 is at (2,1) and has the neighbours

[
    1,
    2,
    3,
    5,
    7,
]

based on rows and columns.

But the process at rank 0 out of 8 is also a neighbour due to the non-uniform subdivision in the first and second columns.

This shows that the computation of neighbours must be rewritten to consider the overlap of spatial coordinates in the y direction instead of just rows and columns.

Edited by Adam Reichold