Peano
Loading...
Searching...
No Matches
peano4.dastgen2.MPIAndStorageAspect.MPIAndStorageAspect Class Reference

Represents Peano's MPI and storage aspect injected into a DaStGen model. More...

Inheritance diagram for peano4.dastgen2.MPIAndStorageAspect.MPIAndStorageAspect:
Collaboration diagram for peano4.dastgen2.MPIAndStorageAspect.MPIAndStorageAspect:

Public Member Functions

 __init__ (self, dof_association_)
 
 __str__ (self)
 
 get_include (self)
 
 get_method_declarations (self, full_qualified_name)
 
 get_implementation (self, full_qualified_name)
 
- Public Member Functions inherited from dastgen2.aspects.MPI.MPI
 set_model (self, data_model)
 
 get_attributes (self)
 

Data Fields

 dof_association
 
 merge_implementation
 
 receive_predicate
 
 send_predicate
 
 load_store_compute_flag
 
 includes
 

Additional Inherited Members

- Protected Attributes inherited from dastgen2.aspects.MPI.MPI
 _data_model
 

Detailed Description

Represents Peano's MPI and storage aspect injected into a DaStGen model.

This is an aspect to a DaStGen object, i.e. something that's added to a data model to augment it with some behaviour. The realisation of this aspect is manifold yet all serves the purpose to make data fit for MPI:

  • The aspect ensures that we include the right headers.
  • The aspect ensures that the generated has the right signature which in turn depends on the fact to which grid entity the type is associated to
  • The aspect lets you embed a data merge operation into the generated data.

The aspect also determines how and if we store data or not in Peano. Therefore, it covers more than solely MPI. Use the store and load attribute to control these predicates. Please study Localisation of a solver for further documentation.

Usage

The instance is to be added to a DaStGen2 model through add_aspect().

If you want to inject a particular merge code, just set the internal string self.merge_implementation.

Attributes

dof_association: DoFAssociation Clarifies which grid entity the underlying datatype is associated to.

Definition at line 9 of file MPIAndStorageAspect.py.

Constructor & Destructor Documentation

◆ __init__()

peano4.dastgen2.MPIAndStorageAspect.MPIAndStorageAspect.__init__ ( self,
dof_association_ )

Reimplemented from dastgen2.aspects.MPI.MPI.

Definition at line 50 of file MPIAndStorageAspect.py.

References peano4.dastgen2.MPIAndStorageAspect.MPIAndStorageAspect.__init__().

Referenced by peano4.dastgen2.MPIAndStorageAspect.MPIAndStorageAspect.__init__().

Here is the call graph for this function:
Here is the caller graph for this function:

Member Function Documentation

◆ __str__()

◆ get_implementation()

◆ get_include()

◆ get_method_declarations()

peano4.dastgen2.MPIAndStorageAspect.MPIAndStorageAspect.get_method_declarations ( self,
full_qualified_name )

Field Documentation

◆ dof_association

◆ includes

peano4.dastgen2.MPIAndStorageAspect.MPIAndStorageAspect.includes

◆ load_store_compute_flag

◆ merge_implementation

peano4.dastgen2.MPIAndStorageAspect.MPIAndStorageAspect.merge_implementation

◆ receive_predicate

peano4.dastgen2.MPIAndStorageAspect.MPIAndStorageAspect.receive_predicate

◆ send_predicate

peano4.dastgen2.MPIAndStorageAspect.MPIAndStorageAspect.send_predicate

The documentation for this class was generated from the following file: