EpetraExt  Development
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Protected Attributes | List of all members
EpetraExt::MultiSerialComm Class Reference

#include <EpetraExt_MultiSerialComm.h>

Inheritance diagram for EpetraExt::MultiSerialComm:
Inheritance graph
[legend]

Public Member Functions

virtual Epetra_CommSubDomainComm () const
 Get reference to split Communicator for sub-domain. More...
 
virtual Epetra_CommTimeDomainComm () const
 Get reference to split Communicator for time domain. More...
 
virtual int NumSubDomains () const
 Return number of sub-domains that the global problem is split into. More...
 
virtual int SubDomainRank () const
 Return integer [0:numSubDomains-1} corresponding to this sub-domain's rank. More...
 
virtual int NumTimeDomains () const
 Return number of time domains that the global problem is split into. More...
 
virtual int TimeDomainRank () const
 Return integer [0:numTimeDomains-1} corresponding to this time-domain's rank. More...
 
virtual int NumTimeStepsOnDomain () const
 Return number of time steps, first step number, on time domain. More...
 
virtual int FirstTimeStepOnDomain () const
 
virtual int NumTimeSteps () const
 Return total number of time steps. More...
 
void ResetNumTimeSteps (int numTimeSteps)
 Reset total number of time steps, allowing time steps per domain to. More...
 
virtual Epetra_CommClone () const
 
virtual void Barrier () const
 
virtual int Broadcast (double *MyVals, int Count, int Root) const
 
virtual int Broadcast (int *MyVals, int Count, int Root) const
 
virtual int Broadcast (long *MyVals, int Count, int Root) const
 
virtual int Broadcast (long long *MyVals, int Count, int Root) const
 
virtual int Broadcast (char *MyVals, int Count, int Root) const
 
virtual int GatherAll (double *MyVals, double *AllVals, int Count) const
 
virtual int GatherAll (int *MyVals, int *AllVals, int Count) const
 
virtual int GatherAll (long *MyVals, long *AllVals, int Count) const
 
virtual int GatherAll (long long *MyVals, long long *AllVals, int Count) const
 
virtual int SumAll (double *PartialSums, double *GlobalSums, int Count) const
 
virtual int SumAll (int *PartialSums, int *GlobalSums, int Count) const
 
virtual int SumAll (long *PartialSums, long *GlobalSums, int Count) const
 
virtual int SumAll (long long *PartialSums, long long *GlobalSums, int Count) const
 
virtual int MaxAll (double *PartialMaxs, double *GlobalMaxs, int Count) const
 
virtual int MaxAll (int *PartialMaxs, int *GlobalMaxs, int Count) const
 
virtual int MaxAll (long *PartialMaxs, long *GlobalMaxs, int Count) const
 
virtual int MaxAll (long long *PartialMaxs, long long *GlobalMaxs, int Count) const
 
virtual int MinAll (double *PartialMins, double *GlobalMins, int Count) const
 
virtual int MinAll (int *PartialMins, int *GlobalMins, int Count) const
 
virtual int MinAll (long *PartialMins, long *GlobalMins, int Count) const
 
virtual int MinAll (long long *PartialMins, long long *GlobalMins, int Count) const
 
virtual int ScanSum (double *MyVals, double *ScanSums, int Count) const
 
virtual int ScanSum (int *MyVals, int *ScanSums, int Count) const
 
virtual int ScanSum (long *MyVals, long *ScanSums, int Count) const
 
virtual int ScanSum (long long *MyVals, long long *ScanSums, int Count) const
 
virtual int MyPID () const
 
virtual int NumProc () const
 
virtual Epetra_DistributorCreateDistributor () const
 
virtual Epetra_DirectoryCreateDirectory (const Epetra_BlockMap &Map) const
 
virtual void PrintInfo (std::ostream &os) const
 
- Public Member Functions inherited from EpetraExt::MultiComm
 MultiComm ()
 Constructor. More...
 
virtual ~MultiComm ()
 Destructor. More...
 
- Public Member Functions inherited from Epetra_Comm
virtual ~Epetra_Comm ()
 

Protected Attributes

Teuchos::RCP< Epetra_CommmyComm
 
Epetra_SerialCommsubComm
 
int numTimeSteps
 
 MultiSerialComm (int numTimeSteps_=-1)
 MultiSerialComm constuctor. More...
 
 MultiSerialComm (const MultiSerialComm &MSC)
 Copy constructor. More...
 
virtual ~MultiSerialComm ()
 Destructor. More...
 

Detailed Description

Definition at line 72 of file EpetraExt_MultiSerialComm.h.

Constructor & Destructor Documentation

EpetraExt::MultiSerialComm::MultiSerialComm ( int  numTimeSteps_ = -1)

MultiSerialComm constuctor.

Creates a MultiSerialComm object and communicators for the global and sub- problems.
Parameters
InglobalComm - MPI communciator (usually MPI_COMM_WORLD)
InsubDomainProcss - number of processors in each subdomain. This must divide evenly into the total number of processors of the globalComm.
InnumTimeSteps (Default=-1) - Piece of partitioning data needed specifically for parallel space-time project, corresponding to the total number of time steps.

Definition at line 46 of file EpetraExt_MultiSerialComm.cpp.

EpetraExt::MultiSerialComm::MultiSerialComm ( const MultiSerialComm MSC)

Copy constructor.

Definition at line 57 of file EpetraExt_MultiSerialComm.cpp.

EpetraExt::MultiSerialComm::~MultiSerialComm ( )
virtual

Destructor.

Definition at line 64 of file EpetraExt_MultiSerialComm.cpp.

Member Function Documentation

virtual Epetra_Comm& EpetraExt::MultiSerialComm::SubDomainComm ( ) const
inlinevirtual

Get reference to split Communicator for sub-domain.

Implements EpetraExt::MultiComm.

Definition at line 96 of file EpetraExt_MultiSerialComm.h.

virtual Epetra_Comm& EpetraExt::MultiSerialComm::TimeDomainComm ( ) const
inlinevirtual

Get reference to split Communicator for time domain.

Implements EpetraExt::MultiComm.

Definition at line 99 of file EpetraExt_MultiSerialComm.h.

virtual int EpetraExt::MultiSerialComm::NumSubDomains ( ) const
inlinevirtual

Return number of sub-domains that the global problem is split into.

Implements EpetraExt::MultiComm.

Definition at line 102 of file EpetraExt_MultiSerialComm.h.

virtual int EpetraExt::MultiSerialComm::SubDomainRank ( ) const
inlinevirtual

Return integer [0:numSubDomains-1} corresponding to this sub-domain's rank.

Implements EpetraExt::MultiComm.

Definition at line 105 of file EpetraExt_MultiSerialComm.h.

virtual int EpetraExt::MultiSerialComm::NumTimeDomains ( ) const
inlinevirtual

Return number of time domains that the global problem is split into.

Implements EpetraExt::MultiComm.

Definition at line 108 of file EpetraExt_MultiSerialComm.h.

virtual int EpetraExt::MultiSerialComm::TimeDomainRank ( ) const
inlinevirtual

Return integer [0:numTimeDomains-1} corresponding to this time-domain's rank.

Implements EpetraExt::MultiComm.

Definition at line 111 of file EpetraExt_MultiSerialComm.h.

virtual int EpetraExt::MultiSerialComm::NumTimeStepsOnDomain ( ) const
inlinevirtual

Return number of time steps, first step number, on time domain.

Implements EpetraExt::MultiComm.

Definition at line 114 of file EpetraExt_MultiSerialComm.h.

virtual int EpetraExt::MultiSerialComm::FirstTimeStepOnDomain ( ) const
inlinevirtual

Implements EpetraExt::MultiComm.

Definition at line 115 of file EpetraExt_MultiSerialComm.h.

virtual int EpetraExt::MultiSerialComm::NumTimeSteps ( ) const
inlinevirtual

Return total number of time steps.

Implements EpetraExt::MultiComm.

Definition at line 118 of file EpetraExt_MultiSerialComm.h.

void EpetraExt::MultiSerialComm::ResetNumTimeSteps ( int  numTimeSteps)
virtual

Reset total number of time steps, allowing time steps per domain to.

Implements EpetraExt::MultiComm.

Definition at line 69 of file EpetraExt_MultiSerialComm.cpp.

virtual Epetra_Comm* EpetraExt::MultiSerialComm::Clone ( ) const
inlinevirtual

Implements Epetra_Comm.

Definition at line 124 of file EpetraExt_MultiSerialComm.h.

virtual void EpetraExt::MultiSerialComm::Barrier ( ) const
inlinevirtual

Implements Epetra_Comm.

Definition at line 125 of file EpetraExt_MultiSerialComm.h.

virtual int EpetraExt::MultiSerialComm::Broadcast ( double *  MyVals,
int  Count,
int  Root 
) const
inlinevirtual

Implements Epetra_Comm.

Definition at line 126 of file EpetraExt_MultiSerialComm.h.

virtual int EpetraExt::MultiSerialComm::Broadcast ( int *  MyVals,
int  Count,
int  Root 
) const
inlinevirtual

Implements Epetra_Comm.

Definition at line 128 of file EpetraExt_MultiSerialComm.h.

virtual int EpetraExt::MultiSerialComm::Broadcast ( long *  MyVals,
int  Count,
int  Root 
) const
inlinevirtual

Implements Epetra_Comm.

Definition at line 130 of file EpetraExt_MultiSerialComm.h.

virtual int EpetraExt::MultiSerialComm::Broadcast ( long long *  MyVals,
int  Count,
int  Root 
) const
inlinevirtual

Implements Epetra_Comm.

Definition at line 132 of file EpetraExt_MultiSerialComm.h.

virtual int EpetraExt::MultiSerialComm::Broadcast ( char *  MyVals,
int  Count,
int  Root 
) const
inlinevirtual

Implements Epetra_Comm.

Definition at line 134 of file EpetraExt_MultiSerialComm.h.

virtual int EpetraExt::MultiSerialComm::GatherAll ( double *  MyVals,
double *  AllVals,
int  Count 
) const
inlinevirtual

Implements Epetra_Comm.

Definition at line 136 of file EpetraExt_MultiSerialComm.h.

virtual int EpetraExt::MultiSerialComm::GatherAll ( int *  MyVals,
int *  AllVals,
int  Count 
) const
inlinevirtual

Implements Epetra_Comm.

Definition at line 138 of file EpetraExt_MultiSerialComm.h.

virtual int EpetraExt::MultiSerialComm::GatherAll ( long *  MyVals,
long *  AllVals,
int  Count 
) const
inlinevirtual

Implements Epetra_Comm.

Definition at line 140 of file EpetraExt_MultiSerialComm.h.

virtual int EpetraExt::MultiSerialComm::GatherAll ( long long *  MyVals,
long long *  AllVals,
int  Count 
) const
inlinevirtual

Implements Epetra_Comm.

Definition at line 142 of file EpetraExt_MultiSerialComm.h.

virtual int EpetraExt::MultiSerialComm::SumAll ( double *  PartialSums,
double *  GlobalSums,
int  Count 
) const
inlinevirtual

Implements Epetra_Comm.

Definition at line 144 of file EpetraExt_MultiSerialComm.h.

virtual int EpetraExt::MultiSerialComm::SumAll ( int *  PartialSums,
int *  GlobalSums,
int  Count 
) const
inlinevirtual

Implements Epetra_Comm.

Definition at line 146 of file EpetraExt_MultiSerialComm.h.

virtual int EpetraExt::MultiSerialComm::SumAll ( long *  PartialSums,
long *  GlobalSums,
int  Count 
) const
inlinevirtual

Implements Epetra_Comm.

Definition at line 148 of file EpetraExt_MultiSerialComm.h.

virtual int EpetraExt::MultiSerialComm::SumAll ( long long *  PartialSums,
long long *  GlobalSums,
int  Count 
) const
inlinevirtual

Implements Epetra_Comm.

Definition at line 150 of file EpetraExt_MultiSerialComm.h.

virtual int EpetraExt::MultiSerialComm::MaxAll ( double *  PartialMaxs,
double *  GlobalMaxs,
int  Count 
) const
inlinevirtual

Implements Epetra_Comm.

Definition at line 152 of file EpetraExt_MultiSerialComm.h.

virtual int EpetraExt::MultiSerialComm::MaxAll ( int *  PartialMaxs,
int *  GlobalMaxs,
int  Count 
) const
inlinevirtual

Implements Epetra_Comm.

Definition at line 154 of file EpetraExt_MultiSerialComm.h.

virtual int EpetraExt::MultiSerialComm::MaxAll ( long *  PartialMaxs,
long *  GlobalMaxs,
int  Count 
) const
inlinevirtual

Implements Epetra_Comm.

Definition at line 156 of file EpetraExt_MultiSerialComm.h.

virtual int EpetraExt::MultiSerialComm::MaxAll ( long long *  PartialMaxs,
long long *  GlobalMaxs,
int  Count 
) const
inlinevirtual

Implements Epetra_Comm.

Definition at line 158 of file EpetraExt_MultiSerialComm.h.

virtual int EpetraExt::MultiSerialComm::MinAll ( double *  PartialMins,
double *  GlobalMins,
int  Count 
) const
inlinevirtual

Implements Epetra_Comm.

Definition at line 160 of file EpetraExt_MultiSerialComm.h.

virtual int EpetraExt::MultiSerialComm::MinAll ( int *  PartialMins,
int *  GlobalMins,
int  Count 
) const
inlinevirtual

Implements Epetra_Comm.

Definition at line 162 of file EpetraExt_MultiSerialComm.h.

virtual int EpetraExt::MultiSerialComm::MinAll ( long *  PartialMins,
long *  GlobalMins,
int  Count 
) const
inlinevirtual

Implements Epetra_Comm.

Definition at line 164 of file EpetraExt_MultiSerialComm.h.

virtual int EpetraExt::MultiSerialComm::MinAll ( long long *  PartialMins,
long long *  GlobalMins,
int  Count 
) const
inlinevirtual

Implements Epetra_Comm.

Definition at line 166 of file EpetraExt_MultiSerialComm.h.

virtual int EpetraExt::MultiSerialComm::ScanSum ( double *  MyVals,
double *  ScanSums,
int  Count 
) const
inlinevirtual

Implements Epetra_Comm.

Definition at line 168 of file EpetraExt_MultiSerialComm.h.

virtual int EpetraExt::MultiSerialComm::ScanSum ( int *  MyVals,
int *  ScanSums,
int  Count 
) const
inlinevirtual

Implements Epetra_Comm.

Definition at line 170 of file EpetraExt_MultiSerialComm.h.

virtual int EpetraExt::MultiSerialComm::ScanSum ( long *  MyVals,
long *  ScanSums,
int  Count 
) const
inlinevirtual

Implements Epetra_Comm.

Definition at line 172 of file EpetraExt_MultiSerialComm.h.

virtual int EpetraExt::MultiSerialComm::ScanSum ( long long *  MyVals,
long long *  ScanSums,
int  Count 
) const
inlinevirtual

Implements Epetra_Comm.

Definition at line 174 of file EpetraExt_MultiSerialComm.h.

virtual int EpetraExt::MultiSerialComm::MyPID ( ) const
inlinevirtual

Implements Epetra_Comm.

Definition at line 176 of file EpetraExt_MultiSerialComm.h.

virtual int EpetraExt::MultiSerialComm::NumProc ( ) const
inlinevirtual

Implements Epetra_Comm.

Definition at line 177 of file EpetraExt_MultiSerialComm.h.

virtual Epetra_Distributor* EpetraExt::MultiSerialComm::CreateDistributor ( ) const
inlinevirtual

Implements Epetra_Comm.

Definition at line 178 of file EpetraExt_MultiSerialComm.h.

virtual Epetra_Directory* EpetraExt::MultiSerialComm::CreateDirectory ( const Epetra_BlockMap Map) const
inlinevirtual

Implements Epetra_Comm.

Definition at line 179 of file EpetraExt_MultiSerialComm.h.

virtual void EpetraExt::MultiSerialComm::PrintInfo ( std::ostream &  os) const
inlinevirtual

Implements Epetra_Comm.

Definition at line 181 of file EpetraExt_MultiSerialComm.h.

Member Data Documentation

Teuchos::RCP<Epetra_Comm> EpetraExt::MultiSerialComm::myComm
protected

Definition at line 181 of file EpetraExt_MultiSerialComm.h.

Epetra_SerialComm* EpetraExt::MultiSerialComm::subComm
protected

Definition at line 186 of file EpetraExt_MultiSerialComm.h.

int EpetraExt::MultiSerialComm::numTimeSteps
protected

Definition at line 187 of file EpetraExt_MultiSerialComm.h.


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