mpi_array.distribution.HaloSubExtent

class mpi_array.distribution.HaloSubExtent(globale_extent=None, slice=None, halo=0, start=None, stop=None, struct=None)[source]

Bases: mpi_array.indexing.HaloIndexingExtent

Indexing extent for single region of a larger globale extent. Simply over-rides construction to trim the halo to the the globale_extent (with halo) bounds.

Methods

__init__([globale_extent, slice, halo, ...]) Construct.
calc_intersection(other) Returns the indexing extent which is the intersection of this extent with the other extent.
calc_intersection_split(other) Returns (leftovers, intersection) pair, where intersection is the IndexingExtent object (possibly None) indicating the intersection of this (self) extent with the other extent and leftovers is a list of IndexingExtent objects indicating regions of self which do not intersect with the other extent.
create_struct_dtype_from_ndim(ndim) Creates a numpy.dtype structure for holding start and stop indices.
create_struct_instance(ndim) Creates a struct instance with numpy.dtype self.struct_dtype_dict[ndim].
get_struct_dtype(ndim)
get_struct_dtype_from_ndim(ndim)
globale_to_locale_extent_h(gext) Return gext converted to locale index.
globale_to_locale_h(gidx) Convert globale array index to locale array index.
globale_to_locale_n(gidx) Convert globale array index to locale array index.
globale_to_locale_slice_h(gslice) Return gslice converted to locale slice.
globale_to_locale_slice_n(gslice) Return gslice converted to locale slice.
locale_to_globale_extent_h(lext) Return lext converted to globale index.
locale_to_globale_h(lidx) Convert locale array index to globale array index.
locale_to_globale_n(lidx) Convert locale array index to globale array index.
locale_to_globale_slice_h(lslice) Return lslice converted to globale slice.
locale_to_globale_slice_n(lslice) Return lslice converted to globale slice.
split(a, index) Split this extent into two extents by cutting along axis a at index index.
to_slice() Same as to_slice_n().
to_slice_h() Returns “tuple of slice” equivalent of this indexing extent including halo.
to_slice_n() Returns “tuple of slice” equivalent of this indexing extent without halo (“no halo”).
to_tuple() Convert this instance to a tuple which can be passed to constructor (or used as a dict key).

Attributes

HALO
HALO_STR
HI
LO
START
START_N
START_N_STR
START_STR
STOP
STOP_N
STOP_N_STR
STOP_STR
halo A (len(self.start), 2) shaped array of int indicating the per-axis number of outer ghost elements.
ndim Dimension of indexing.
shape Same as shape_n.
shape_h The shape of the tile with “halo” elements.
shape_n The shape of the tile without “halo” elements (“no halo”).
size_h Integer indicating the number of elements in this extent including halo.
size_n Integer indicating the number of elements in this extent without halo (“no halo”)
start Same as start_n.
start_h The start index of the tile with “halo” elements.
start_n The start index of the tile without “halo” elements (“no halo”).
stop Same as stop_n.
stop_h The stop index of the tile with “halo” elements.
stop_n The stop index of the tile without “halo” elements (“no halo”).
struct_dtype_dict