PyTrilinos  Development
 All Classes Functions
Public Member Functions
PyTrilinos.Epetra.Distributor Class Reference
Inheritance diagram for PyTrilinos.Epetra.Distributor:
Inheritance graph
[legend]
Collaboration diagram for PyTrilinos.Epetra.Distributor:
Collaboration graph
[legend]

List of all members.

Public Member Functions

def __init__
def Clone
def CreateFromSends
def CreateFromRecvs
def DoWaits
def DoReverseWaits
def Do
def DoReverse
def DoPosts
def DoReversePosts

Detailed Description

Epetra_Distributor: The Epetra Gather/Scatter Setup Base Class.

The Epetra_Distributor class is an interface that encapsulates the
general information and services needed for other Epetra classes to
perform gather/scatter operations on a parallel computer. An
Epetra_Distributor object is actually produced by calling a method in
the Epetra_Comm class.

Epetra_Distributor has default implementations, via
Epetra_SerialDistributor and Epetra_MpiDistributor, for both serial
execution and MPI distributed memory execution. It is meant to
insulate the user from the specifics of communication that are not
required for normal manipulation of linear algebra objects..

C++ includes: Epetra_Distributor.h 

Member Function Documentation

def PyTrilinos.Epetra.Distributor.Clone (   self,
  args 
)
Clone(Distributor self) -> Distributor

virtual
Epetra_Distributor* Epetra_Distributor::Clone()=0

Epetra_Distributor clone constructor. 

Reimplemented in PyTrilinos.Epetra.MpiDistributor, and PyTrilinos.Epetra.Epetra_SerialDistributor.

CreateFromRecvs(Distributor self, int const & NumRemoteIDs, int const * RemoteGIDs, int const * RemotePIDs, bool Deterministic, 
    int & NumExportIDs, int *& ExportGIDs, int *& ExportPIDs) -> int
CreateFromRecvs(Distributor self, int const & NumRemoteIDs, long long const * RemoteGIDs, int const * RemotePIDs, bool Deterministic, 
    int & NumExportIDs, long long *& ExportGIDs, int *& ExportPIDs) -> int

virtual
int Epetra_Distributor::CreateFromRecvs(const int &NumRemoteIDs, const
long long *RemoteGIDs, const int *RemotePIDs, bool Deterministic, int
&NumExportIDs, long long *&ExportGIDs, int *&ExportPIDs)=0 

Reimplemented in PyTrilinos.Epetra.MpiDistributor, and PyTrilinos.Epetra.Epetra_SerialDistributor.

CreateFromSends(Distributor self, int const & NumExportIDs, int const * ExportPIDs, bool Deterministic, int & NumRemoteIDs) -> int

virtual
int Epetra_Distributor::CreateFromSends(const int &NumExportIDs, const
int *ExportPIDs, bool Deterministic, int &NumRemoteIDs)=0

Create Distributor object using list of process IDs to which we
export.

Take a list of Process IDs and construct a plan for efficiently
scattering to these processes. Return the number of IDs being sent to
me.

Parameters:
-----------

NumExportIDs:  In Number of IDs that need to be sent from this
processor.

ExportPIDs:  In List of processors that will get the exported IDs.

Deterministic:  In No op.

NumRemoteIDs:  Out Number of IDs this processor will be receiving. 

Reimplemented in PyTrilinos.Epetra.MpiDistributor, and PyTrilinos.Epetra.Epetra_SerialDistributor.

def PyTrilinos.Epetra.Distributor.Do (   self,
  args 
)
Do(Distributor self, char * export_objs, int obj_size, int & len_import_objs, char *& import_objs) -> int
Do(Distributor self, char * export_objs, int obj_size, int *& sizes, int & len_import_objs, char *& import_objs) -> int

virtual int
Epetra_Distributor::Do(char *export_objs, int obj_size, int *&sizes,
int &len_import_objs, char *&import_objs)=0

Execute plan on buffer of export objects in a single step (object size
may vary) 

Reimplemented in PyTrilinos.Epetra.MpiDistributor, and PyTrilinos.Epetra.Epetra_SerialDistributor.

def PyTrilinos.Epetra.Distributor.DoPosts (   self,
  args 
)
DoPosts(Distributor self, char * export_objs, int obj_size, int & len_import_objs, char *& import_objs) -> int
DoPosts(Distributor self, char * export_objs, int obj_size, int *& sizes, int & len_import_objs, char *& import_objs) -> int

virtual int
Epetra_Distributor::DoPosts(char *export_objs, int obj_size, int
*&sizes, int &len_import_objs, char *&import_objs)=0

Post buffer of export objects (can do other local work before
executing Waits) 

Reimplemented in PyTrilinos.Epetra.MpiDistributor, and PyTrilinos.Epetra.Epetra_SerialDistributor.

def PyTrilinos.Epetra.Distributor.DoReverse (   self,
  args 
)
DoReverse(Distributor self, char * export_objs, int obj_size, int & len_import_objs, char *& import_objs) -> int
DoReverse(Distributor self, char * export_objs, int obj_size, int *& sizes, int & len_import_objs, char *& import_objs) -> int

virtual int
Epetra_Distributor::DoReverse(char *export_objs, int obj_size, int
*&sizes, int &len_import_objs, char *&import_objs)=0

Execute reverse of plan on buffer of export objects in a single step
(object size may vary) 

Reimplemented in PyTrilinos.Epetra.MpiDistributor, and PyTrilinos.Epetra.Epetra_SerialDistributor.

DoReversePosts(Distributor self, char * export_objs, int obj_size, int & len_import_objs, char *& import_objs) -> int
DoReversePosts(Distributor self, char * export_objs, int obj_size, int *& sizes, int & len_import_objs, char *& import_objs) -> int

virtual
int Epetra_Distributor::DoReversePosts(char *export_objs, int
obj_size, int *&sizes, int &len_import_objs, char *&import_objs)=0

Do reverse post of buffer of export objects (can do other local work
before executing Waits) 

Reimplemented in PyTrilinos.Epetra.MpiDistributor, and PyTrilinos.Epetra.Epetra_SerialDistributor.

DoReverseWaits(Distributor self) -> int

virtual
int Epetra_Distributor::DoReverseWaits()=0

Wait on a reverse set of posts. 

Reimplemented in PyTrilinos.Epetra.MpiDistributor, and PyTrilinos.Epetra.Epetra_SerialDistributor.

def PyTrilinos.Epetra.Distributor.DoWaits (   self,
  args 
)
DoWaits(Distributor self) -> int

virtual int
Epetra_Distributor::DoWaits()=0

Wait on a set of posts. 

Reimplemented in PyTrilinos.Epetra.MpiDistributor, and PyTrilinos.Epetra.Epetra_SerialDistributor.


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