PyTrilinos  Development
 All Classes Functions
Public Member Functions | Public Attributes
PyTrilinos.Epetra.MpiDistributor Class Reference
Inheritance diagram for PyTrilinos.Epetra.MpiDistributor:
Inheritance graph
[legend]
Collaboration diagram for PyTrilinos.Epetra.MpiDistributor:
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
def NumReceives
def NumSends
def MaxSendLength
def TotalReceiveLength
def ProcsFrom
def ProcsTo
def LengthsFrom
def LengthsTo

Public Attributes

 this

Detailed Description

MPI implementation of Epetra_Distributor.

This class is an MPI implementation of  Epetra_Distributor. It
encapsulates the general information and services needed for other
Epetra classes to perform gather/scatter operations on a parallel
computer. An Epetra_MpiDistributor instance is actually produced by
calling a method in the Epetra_MpiComm class.

C++ includes: Epetra_MpiDistributor.h 

Constructor & Destructor Documentation

def PyTrilinos.Epetra.MpiDistributor.__init__ (   self,
  args 
)
__init__(Epetra_MpiDistributor self, MpiComm Comm) -> MpiDistributor
__init__(Epetra_MpiDistributor self, MpiDistributor Distributor) -> MpiDistributor

Epetra_MpiDistributor::Epetra_MpiDistributor(const
Epetra_MpiDistributor &Distributor)

Copy constructor. 

Reimplemented from PyTrilinos.Epetra.Object.


Member Function Documentation

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

Epetra_Distributor* Epetra_MpiDistributor::Clone()

Clone method. 

Reimplemented from PyTrilinos.Epetra.Distributor.

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

int
Epetra_MpiDistributor::CreateFromRecvs(const int &NumRemoteIDs, const
long long *RemoteGIDs, const int *RemotePIDs, bool Deterministic, int
&NumExportIDs, long long *&ExportGIDs, int *&ExportPIDs) 

Reimplemented from PyTrilinos.Epetra.Distributor.

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

int
Epetra_MpiDistributor::CreateFromSends(const int &NumExportIDs, const
int *ExportPIDs, bool Deterministic, int &NumRemoteIDs)

Create a communication plan from send list.

Given a list of process IDs to which to send the given number of data
IDs, construct a communication plan for efficiently scattering data to
these processes.

The number of data IDs being sent to me.

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

NumExportIDs:  [in] Number of data IDs that need to be sent from the
calling process.

ExportPIDs:  [in] List of process IDs that will get the exported data
IDs.

Deterministic:  [in] Currently has no effect.

NumRemoteIDs:  [out] Number of data IDs the calling process will be
receiving. 

Reimplemented from PyTrilinos.Epetra.Distributor.

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

int
Epetra_MpiDistributor::Do(char *export_objs, int obj_size, int
*&sizes, int &len_import_objs, char *&import_objs)

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

Reimplemented from PyTrilinos.Epetra.Distributor.

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

int
Epetra_MpiDistributor::DoPosts(char *export_objs, int obj_size, int
*&sizes, int &len_import_objs, char *&import_objs)

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

Reimplemented from PyTrilinos.Epetra.Distributor.

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

int
Epetra_MpiDistributor::DoReverse(char *export_objs, int obj_size, int
*&sizes, int &len_import_objs, char *&import_objs)

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

Reimplemented from PyTrilinos.Epetra.Distributor.

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

int
Epetra_MpiDistributor::DoReversePosts(char *export_objs, int obj_size,
int *&sizes, int &len_import_objs, char *&import_objs)

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

Reimplemented from PyTrilinos.Epetra.Distributor.

DoReverseWaits(MpiDistributor self) -> int

int
Epetra_MpiDistributor::DoReverseWaits()

Wait on a reverse set of posts. 

Reimplemented from PyTrilinos.Epetra.Distributor.

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

int
Epetra_MpiDistributor::DoWaits()

Wait on a set of posts. 

Reimplemented from PyTrilinos.Epetra.Distributor.

LengthsFrom(MpiDistributor self) -> int const *

const int*
Epetra_MpiDistributor::LengthsFrom() const

Number of values we're receiving from each proc.

We will receive LengthsFrom[i] values from proc ProcsFrom[i]. 
def PyTrilinos.Epetra.MpiDistributor.LengthsTo (   self,
  args 
)
LengthsTo(MpiDistributor self) -> int const *

const int*
Epetra_MpiDistributor::LengthsTo() const

Number of values we're sending to each proc.

We will send LengthsTo[i] values to procs ProcsTo[i]. 
MaxSendLength(MpiDistributor self) -> int

int
Epetra_MpiDistributor::MaxSendLength() const

Maximum number of values that this proc is sending to another single
proc. 
NumReceives(MpiDistributor self) -> int

int
Epetra_MpiDistributor::NumReceives() const

The number of procs from which we will receive data. 
def PyTrilinos.Epetra.MpiDistributor.NumSends (   self,
  args 
)
NumSends(MpiDistributor self) -> int

int
Epetra_MpiDistributor::NumSends() const

The number of procs to which we will send data. 
def PyTrilinos.Epetra.MpiDistributor.ProcsFrom (   self,
  args 
)
ProcsFrom(MpiDistributor self) -> int const *

const int*
Epetra_MpiDistributor::ProcsFrom() const

A list of procs sending values to this proc. 
def PyTrilinos.Epetra.MpiDistributor.ProcsTo (   self,
  args 
)
ProcsTo(MpiDistributor self) -> int const *

const int*
Epetra_MpiDistributor::ProcsTo() const

A list of procs to which this proc is sending values. 
TotalReceiveLength(MpiDistributor self) -> int

int
Epetra_MpiDistributor::TotalReceiveLength() const

Total number of values that this proc is receiving from other procs.


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