Epetra_SerialComm Class Reference

Epetra_SerialComm: The Epetra Serial Communication Class. More...

#include <Epetra_SerialComm.h>

Inheritance diagram for Epetra_SerialComm:

[legend]
Collaboration diagram for Epetra_SerialComm:
[legend]
List of all members.

Public Member Functions

Epetra_SerialCommoperator= (const Epetra_SerialComm &Comm)
 Assignment Operator.
Constructor/Destructor Methods
 Epetra_SerialComm ()
 Epetra_SerialComm Serial Constructor.
 Epetra_SerialComm (const Epetra_SerialComm &Comm)
 Epetra_SerialComm Copy Constructor.
Epetra_CommClone () const
 Clone method.
virtual ~Epetra_SerialComm ()
 Epetra_SerialComm Destructor.
Barrier Methods
void Barrier () const
 Epetra_SerialComm Barrier function.
Broadcast Methods
int Broadcast (double *MyVals, int Count, int Root) const
 Epetra_SerialComm Broadcast function.
int Broadcast (int *MyVals, int Count, int Root) const
 Epetra_SerialComm Broadcast function.
int Broadcast (long *MyVals, int Count, int Root) const
 Epetra_SerialComm Broadcast function.
Gather Methods
int GatherAll (double *MyVals, double *AllVals, int Count) const
 Epetra_SerialComm All Gather function.
int GatherAll (int *MyVals, int *AllVals, int Count) const
 Epetra_SerialComm All Gather function.
int GatherAll (long *MyVals, long *AllVals, int Count) const
 Epetra_SerialComm All Gather function.
Sum Methods
int SumAll (double *PartialSums, double *GlobalSums, int Count) const
 Epetra_SerialComm Global Sum function.
int SumAll (int *PartialSums, int *GlobalSums, int Count) const
 Epetra_SerialComm Global Sum function.
int SumAll (long *PartialSums, long *GlobalSums, int Count) const
 Epetra_SerialComm Global Sum function.
Max/Min Methods
int MaxAll (double *PartialMaxs, double *GlobalMaxs, int Count) const
 Epetra_SerialComm Global Max function.
int MaxAll (int *PartialMaxs, int *GlobalMaxs, int Count) const
 Epetra_SerialComm Global Max function.
int MaxAll (long *PartialMaxs, long *GlobalMaxs, int Count) const
 Epetra_SerialComm Global Max function.
int MinAll (double *PartialMins, double *GlobalMins, int Count) const
 Epetra_SerialComm Global Min function.
int MinAll (int *PartialMins, int *GlobalMins, int Count) const
 Epetra_SerialComm Global Min function.
int MinAll (long *PartialMins, long *GlobalMins, int Count) const
 Epetra_SerialComm Global Min function.
Parallel Prefix Methods
int ScanSum (double *MyVals, double *ScanSums, int Count) const
 Epetra_SerialComm Scan Sum function.
int ScanSum (int *MyVals, int *ScanSums, int Count) const
 Epetra_SerialComm Scan Sum function.
int ScanSum (long *MyVals, long *ScanSums, int Count) const
 Epetra_SerialComm Scan Sum function.
Attribute Accessor Methods
int MyPID () const
 Return my process ID.
int NumProc () const
 Returns total number of processes (always returns 1 for SerialComm).
Gather/Scatter and Directory Constructors
Epetra_DistributorCreateDistributor () const
 Create a distributor object.
Epetra_DirectoryCreateDirectory (const Epetra_BlockMap &Map) const
 Create a directory object for the given Epetra_BlockMap.
Print object to an output stream
void Print (ostream &os) const
 Print method that implements Epetra_Object virtual Print method.
void PrintInfo (ostream &os) const
 Print method that implements Epetra_Comm virtual PrintInfo method.
Expert Users and Developers Only
int ReferenceCount () const
 Returns the reference count of SerialCommData.
const Epetra_SerialCommDataDataPtr () const
 Returns a pointer to the SerialCommData instance this SerialComm uses.

Detailed Description

Epetra_SerialComm: The Epetra Serial Communication Class.

The Epetra_SerialComm class is an implementation of Epetra_Comm, providing the general information and services needed for other Epetra classes to run on a serial computer.


Constructor & Destructor Documentation

Epetra_SerialComm::Epetra_SerialComm  ) 
 

Epetra_SerialComm Serial Constructor.

Builds an instance of a serial communicator. Even if the application is running in parallel via MPI, this communicator will execute in serial. The access functions return the number of processors to be 1 and the processor ID to be 0.

Epetra_SerialComm::Epetra_SerialComm const Epetra_SerialComm Comm  ) 
 

Epetra_SerialComm Copy Constructor.

Makes an exact copy of an existing Epetra_SerialComm instance.

virtual Epetra_SerialComm::~Epetra_SerialComm  )  [virtual]
 

Epetra_SerialComm Destructor.

Completely deletes a Epetra_SerialComm object.

Warning:
Note: All objects that depend on a Epetra_SerialComm instance should be destroyed prior to calling this function.


Member Function Documentation

void Epetra_SerialComm::Barrier  )  const [virtual]
 

Epetra_SerialComm Barrier function.

A no-op for a serial communicator.

Implements Epetra_Comm.

int Epetra_SerialComm::Broadcast long *  MyVals,
int  Count,
int  Root
const [virtual]
 

Epetra_SerialComm Broadcast function.

A no-op for a serial communicator.

Parameters:
MyVals InOut On entry, the root processor contains the list of values. On exit, all processors will have the same list of values. Note that values must be allocated on all processor before the broadcast.
Count In On entry, contains the length of the list of MyVals.
Root In On entry, contains the processor from which all processors will receive a copy of MyVals.

Implements Epetra_Comm.

int Epetra_SerialComm::Broadcast int *  MyVals,
int  Count,
int  Root
const [virtual]
 

Epetra_SerialComm Broadcast function.

A no-op for a serial communicator.

Parameters:
MyVals InOut On entry, the root processor contains the list of values. On exit, all processors will have the same list of values. Note that values must be allocated on all processor before the broadcast.
Count In On entry, contains the length of the list of MyVals.
Root In On entry, contains the processor from which all processors will receive a copy of MyVals.

Implements Epetra_Comm.

int Epetra_SerialComm::Broadcast double *  MyVals,
int  Count,
int  Root
const [virtual]
 

Epetra_SerialComm Broadcast function.

A no-op for a serial communicator.

Parameters:
MyVals InOut On entry, the root processor contains the list of values. On exit, all processors will have the same list of values. Note that values must be allocated on all processor before the broadcast.
Count In On entry, contains the length of the list of MyVals.
Root In On entry, contains the processor from which all processors will receive a copy of MyVals.

Implements Epetra_Comm.

const Epetra_SerialCommData* Epetra_SerialComm::DataPtr  )  const [inline]
 

Returns a pointer to the SerialCommData instance this SerialComm uses.

(Intended for developer use only for testing purposes.)

int Epetra_SerialComm::GatherAll long *  MyVals,
long *  AllVals,
int  Count
const [virtual]
 

Epetra_SerialComm All Gather function.

A copy for a serial communicator.

Parameters:
MyVals In On entry, contains the list of values, to be sent to all processors.
AllVals Out On exit, contains the list of values from all processors. Must by of size NumProc*Count.
Count In On entry, contains the length of the list of MyVals.

Implements Epetra_Comm.

int Epetra_SerialComm::GatherAll int *  MyVals,
int *  AllVals,
int  Count
const [virtual]
 

Epetra_SerialComm All Gather function.

A copy for a serial communicator.

Parameters:
MyVals In On entry, contains the list of values, to be sent to all processors.
AllVals Out On exit, contains the list of values from all processors. Must by of size NumProc*Count.
Count In On entry, contains the length of the list of MyVals.

Implements Epetra_Comm.

int Epetra_SerialComm::GatherAll double *  MyVals,
double *  AllVals,
int  Count
const [virtual]
 

Epetra_SerialComm All Gather function.

A copy for a serial communicator.

Parameters:
MyVals In On entry, contains the list of values, to be sent to all processors.
AllVals Out On exit, contains the list of values from all processors. Must by of size NumProc*Count.
Count In On entry, contains the length of the list of MyVals.

Implements Epetra_Comm.

int Epetra_SerialComm::MaxAll long *  PartialMaxs,
long *  GlobalMaxs,
int  Count
const [virtual]
 

Epetra_SerialComm Global Max function.

A copy for a serial communicator.

Parameters:
PartialMaxs In On entry, contains the list of values, usually partial maxs computed locally; using these Partial Maxs, the max across all processors will be computed.
GlobalMaxs Out On exit, contains the list of maxs computed across all processors.
Count In On entry, contains the length of the list of values.

Implements Epetra_Comm.

int Epetra_SerialComm::MaxAll int *  PartialMaxs,
int *  GlobalMaxs,
int  Count
const [virtual]
 

Epetra_SerialComm Global Max function.

A copy for a serial communicator.

Parameters:
PartialMaxs In On entry, contains the list of values, usually partial maxs computed locally; using these Partial Maxs, the max across all processors will be computed.
GlobalMaxs Out On exit, contains the list of maxs computed across all processors.
Count In On entry, contains the length of the list of values.

Implements Epetra_Comm.

int Epetra_SerialComm::MaxAll double *  PartialMaxs,
double *  GlobalMaxs,
int  Count
const [virtual]
 

Epetra_SerialComm Global Max function.

A copy for a serial communicator.

Parameters:
PartialMaxs In On entry, contains the list of values, usually partial maxs computed locally, using these Partial Maxs, the max across all processors will be computed.
GlobalMaxs Out On exit, contains the list of maxs computed across all processors.
Count In On entry, contains the length of the list of values.

Implements Epetra_Comm.

int Epetra_SerialComm::MinAll long *  PartialMins,
long *  GlobalMins,
int  Count
const [virtual]
 

Epetra_SerialComm Global Min function.

A copy for a serial communicator.

Parameters:
PartialMins In On entry, contains the list of values, usually partial mins computed locally; using these Partial Mins, the min across all processors will be computed.
GlobalMins Out On exit, contains the list of mins computed across all processors.
Count In On entry, contains the length of the list of values.

Implements Epetra_Comm.

int Epetra_SerialComm::MinAll int *  PartialMins,
int *  GlobalMins,
int  Count
const [virtual]
 

Epetra_SerialComm Global Min function.

A copy for a serial communicator.

Parameters:
PartialMins In On entry, contains the list of values, usually partial mins computed locally; using these Partial Mins, the min across all processors will be computed.
GlobalMins Out On exit, contains the list of mins computed across all processors.
Count In On entry, contains the length of the list of values.

Implements Epetra_Comm.

int Epetra_SerialComm::MinAll double *  PartialMins,
double *  GlobalMins,
int  Count
const [virtual]
 

Epetra_SerialComm Global Min function.

A copy for a serial communicator.

Parameters:
PartialMins In On entry, contains the list of values, usually partial mins computed locally; using these Partial Mins, the min across all processors will be computed.
GlobalMins Out On exit, contains the list of mins computed across all processors.
Count In On entry, contains the length of the list of values.

Implements Epetra_Comm.

int Epetra_SerialComm::MyPID  )  const [inline, virtual]
 

Return my process ID.

In MPI mode returns the rank of the calling process. In serial mode returns 0.

Implements Epetra_Comm.

int Epetra_SerialComm::ReferenceCount  )  const
 

Returns the reference count of SerialCommData.

(Intended for testing purposes.)

int Epetra_SerialComm::ScanSum long *  MyVals,
long *  ScanSums,
int  Count
const [virtual]
 

Epetra_SerialComm Scan Sum function.

A copy for a serial communicator.

Parameters:
MyVals In On entry, contains the list of values to be summed across all processors.
ScanSums Out On exit, contains the list of values summed across processors 0 through i.
Count In On entry, contains the length of the list of values.

Implements Epetra_Comm.

int Epetra_SerialComm::ScanSum int *  MyVals,
int *  ScanSums,
int  Count
const [virtual]
 

Epetra_SerialComm Scan Sum function.

A copy for a serial communicator.

Parameters:
MyVals In On entry, contains the list of values to be summed across all processors.
ScanSums Out On exit, contains the list of values summed across processors 0 through i.
Count In On entry, contains the length of the list of values.

Implements Epetra_Comm.

int Epetra_SerialComm::ScanSum double *  MyVals,
double *  ScanSums,
int  Count
const [virtual]
 

Epetra_SerialComm Scan Sum function.

A copy for a serial communicator.

Parameters:
MyVals In On entry, contains the list of values to be summed across all processors.
ScanSums Out On exit, contains the list of values summed across processors 0 through i.
Count In On entry, contains the length of the list of values.

Implements Epetra_Comm.

int Epetra_SerialComm::SumAll long *  PartialSums,
long *  GlobalSums,
int  Count
const [virtual]
 

Epetra_SerialComm Global Sum function.

A copy for a serial communicator.

Parameters:
PartialSums In On entry, contains the list of values, usually partial sums computed locally, to be summed across all processors.
GlobalSums Out On exit, contains the list of values summed across all processors.
Count In On entry, contains the length of the list of values.

Implements Epetra_Comm.

int Epetra_SerialComm::SumAll int *  PartialSums,
int *  GlobalSums,
int  Count
const [virtual]
 

Epetra_SerialComm Global Sum function.

A copy for a serial communicator.

Parameters:
PartialSums In On entry, contains the list of values, usually partial sums computed locally, to be summed across all processors.
GlobalSums Out On exit, contains the list of values summed across all processors.
Count In On entry, contains the length of the list of values.

Implements Epetra_Comm.

int Epetra_SerialComm::SumAll double *  PartialSums,
double *  GlobalSums,
int  Count
const [virtual]
 

Epetra_SerialComm Global Sum function.

A copy for a serial communicator.

Parameters:
PartialSums In On entry, contains the list of values, usually partial sums computed locally, to be summed across all processors.
GlobalSums Out On exit, contains the list of values summed across all processors.
Count In On entry, contains the length of the list of values.

Implements Epetra_Comm.


The documentation for this class was generated from the following file:
Generated on Thu Sep 18 12:37:45 2008 for Epetra by doxygen 1.3.9.1