ddm.basic#

Classes#

Inheritance diagram of psydac.ddm.basic

CartDataExchanger()

Type that takes care of updating the ghost regions (padding) of a multi-dimensional array distributed according to the given Cartesian decomposition of a tensor-product grid of coefficients.

Details#

class CartDataExchanger[source]#

Bases: ABC

Type that takes care of updating the ghost regions (padding) of a multi-dimensional array distributed according to the given Cartesian decomposition of a tensor-product grid of coefficients.

Each coefficient in the decomposed grid may have multiple components, contiguous in memory.

Parameters:
cartpsydac.ddm.CartDecomposition

Object that contains all information about the Cartesian decomposition of a tensor-product grid of coefficients.

dtype[type | str | numpy.dtype | mpi4py.MPI.Datatype]

Datatype of single coefficient (if scalar) or of each of its components (if vector).

coeff_shape[tuple(int) | list(int)]

Shape of a single coefficient, if this is multi-dimensional (optional: by default, we assume scalar coefficients).

abstract prepare_communications(u)[source]#
abstract start_update_ghost_regions(array, requests)[source]#

Update ghost regions in a numpy array with dimensions compatible with CartDecomposition (and coeff_shape) provided at initialization.

Parameters:
arraynumpy.ndarray

Multidimensional array corresponding to local subdomain in decomposed tensor grid, including padding.

requeststuple|None

The requests of the communications.

abstract end_update_ghost_regions(array, requests)[source]#
abstract start_exchange_assembly_data(array)[source]#

Update ghost regions after the assembly algorithm in a numpy array with dimensions compatible with CartDecomposition (and coeff_shape) provided at initialization.

Parameters:
arraynumpy.ndarray

Multidimensional array corresponding to local subdomain in decomposed tensor grid, including padding.

abstract end_exchange_assembly_data(array)[source]#