Go to the documentation of this file.
42 #ifndef EPETRAEXT_MULTISERIALCOMM_H
43 #define EPETRAEXT_MULTISERIALCOMM_H
47 #include "Epetra_SerialComm.h"
48 #include "Teuchos_RCP.hpp"
120 virtual int Broadcast(
double * MyVals,
int Count,
int Root)
const
121 {
return myComm->Broadcast( MyVals, Count, Root); };
122 virtual int Broadcast(
int * MyVals,
int Count,
int Root)
const
123 {
return myComm->Broadcast( MyVals, Count, Root); };
124 virtual int Broadcast(
long * MyVals,
int Count,
int Root)
const
125 {
return myComm->Broadcast( MyVals, Count, Root); };
126 virtual int Broadcast(
long long * MyVals,
int Count,
int Root)
const
127 {
return myComm->Broadcast( MyVals, Count, Root); };
128 virtual int Broadcast(
char * MyVals,
int Count,
int Root)
const
129 {
return myComm->Broadcast( MyVals, Count, Root); };
130 virtual int GatherAll(
double * MyVals,
double * AllVals,
int Count)
const
131 {
return myComm->GatherAll( MyVals, AllVals, Count); };
132 virtual int GatherAll(
int * MyVals,
int * AllVals,
int Count)
const
133 {
return myComm->GatherAll( MyVals, AllVals, Count); };
134 virtual int GatherAll(
long * MyVals,
long * AllVals,
int Count)
const
135 {
return myComm->GatherAll( MyVals, AllVals, Count); };
136 virtual int GatherAll(
long long* MyVals,
long long* AllVals,
int Count)
const
137 {
return myComm->GatherAll( MyVals, AllVals, Count); };
138 virtual int SumAll(
double * PartialSums,
double * GlobalSums,
int Count)
const
139 {
return myComm->SumAll( PartialSums, GlobalSums, Count); };
140 virtual int SumAll(
int * PartialSums,
int * GlobalSums,
int Count)
const
141 {
return myComm->SumAll( PartialSums, GlobalSums, Count); };
142 virtual int SumAll(
long * PartialSums,
long * GlobalSums,
int Count)
const
143 {
return myComm->SumAll( PartialSums, GlobalSums, Count); };
144 virtual int SumAll(
long long* PartialSums,
long long* GlobalSums,
int Count)
const
145 {
return myComm->SumAll( PartialSums, GlobalSums, Count); };
146 virtual int MaxAll(
double * PartialMaxs,
double * GlobalMaxs,
int Count)
const
147 {
return myComm->MaxAll( PartialMaxs, GlobalMaxs, Count); };
148 virtual int MaxAll(
int * PartialMaxs,
int * GlobalMaxs,
int Count)
const
149 {
return myComm->MaxAll( PartialMaxs, GlobalMaxs, Count); };
150 virtual int MaxAll(
long * PartialMaxs,
long * GlobalMaxs,
int Count)
const
151 {
return myComm->MaxAll( PartialMaxs, GlobalMaxs, Count); };
152 virtual int MaxAll(
long long* PartialMaxs,
long long* GlobalMaxs,
int Count)
const
153 {
return myComm->MaxAll( PartialMaxs, GlobalMaxs, Count); };
154 virtual int MinAll(
double * PartialMins,
double * GlobalMins,
int Count)
const
155 {
return myComm->MinAll( PartialMins, GlobalMins, Count); };
156 virtual int MinAll(
int * PartialMins,
int * GlobalMins,
int Count)
const
157 {
return myComm->MinAll( PartialMins, GlobalMins, Count); };
158 virtual int MinAll(
long * PartialMins,
long * GlobalMins,
int Count)
const
159 {
return myComm->MinAll( PartialMins, GlobalMins, Count); };
160 virtual int MinAll(
long long* PartialMins,
long long* GlobalMins,
int Count)
const
161 {
return myComm->MinAll( PartialMins, GlobalMins, Count); };
162 virtual int ScanSum(
double * MyVals,
double * ScanSums,
int Count)
const
163 {
return myComm->ScanSum( MyVals, ScanSums, Count); };
164 virtual int ScanSum(
int * MyVals,
int * ScanSums,
int Count)
const
165 {
return myComm->ScanSum(MyVals, ScanSums, Count); };
166 virtual int ScanSum(
long * MyVals,
long * ScanSums,
int Count)
const
167 {
return myComm->ScanSum(MyVals, ScanSums, Count); };
168 virtual int ScanSum(
long long* MyVals,
long long* ScanSums,
int Count)
const
169 {
return myComm->ScanSum(MyVals, ScanSums, Count); };
174 {
return myComm->CreateDirectory(Map); };
179 Teuchos::RCP<Epetra_Comm>
myComm;
virtual int GatherAll(long *MyVals, long *AllVals, int Count) const
virtual int NumTimeDomains() const
Return number of time domains that the global problem is split into.
virtual int GatherAll(double *MyVals, double *AllVals, int Count) const
virtual void PrintInfo(std::ostream &os) const
virtual int MinAll(int *PartialMins, int *GlobalMins, int Count) const
virtual int MaxAll(long long *PartialMaxs, long long *GlobalMaxs, int Count) const
virtual ~MultiSerialComm()
Destructor.
virtual int SumAll(double *PartialSums, double *GlobalSums, int Count) const
virtual int SumAll(long long *PartialSums, long long *GlobalSums, int Count) const
virtual int ScanSum(double *MyVals, double *ScanSums, int Count) const
virtual int Broadcast(long long *MyVals, int Count, int Root) const
virtual int NumTimeSteps() const
Return total number of time steps.
virtual int NumTimeStepsOnDomain() const
Return number of time steps, first step number, on time domain.
virtual int ScanSum(int *MyVals, int *ScanSums, int Count) const
virtual Epetra_Distributor * CreateDistributor() const
virtual int MyPID() const
virtual int Broadcast(char *MyVals, int Count, int Root) const
void ResetNumTimeSteps(int numTimeSteps)
Reset total number of time steps, allowing time steps per domain to.
virtual void Barrier() const
virtual int SumAll(long *PartialSums, long *GlobalSums, int Count) const
virtual int TimeDomainRank() const
Return integer [0:numTimeDomains-1} corresponding to this time-domain's rank.
virtual int Broadcast(double *MyVals, int Count, int Root) const
virtual int MinAll(double *PartialMins, double *GlobalMins, int Count) const
virtual int MinAll(long *PartialMins, long *GlobalMins, int Count) const
virtual int FirstTimeStepOnDomain() const
virtual int MaxAll(int *PartialMaxs, int *GlobalMaxs, int Count) const
virtual int NumSubDomains() const
Return number of sub-domains that the global problem is split into.
virtual int MaxAll(double *PartialMaxs, double *GlobalMaxs, int Count) const
virtual Epetra_Directory * CreateDirectory(const Epetra_BlockMap &Map) const
virtual Epetra_Comm * Clone() const
virtual int Broadcast(long *MyVals, int Count, int Root) const
virtual int SubDomainRank() const
Return integer [0:numSubDomains-1} corresponding to this sub-domain's rank.
virtual Epetra_Comm & SubDomainComm() const
Get reference to split Communicator for sub-domain.
virtual int SumAll(int *PartialSums, int *GlobalSums, int Count) const
virtual int GatherAll(long long *MyVals, long long *AllVals, int Count) const
MultiSerialComm(int numTimeSteps_=-1)
MultiSerialComm constuctor.
virtual int ScanSum(long *MyVals, long *ScanSums, int Count) const
virtual int MinAll(long long *PartialMins, long long *GlobalMins, int Count) const
Teuchos::RCP< Epetra_Comm > myComm
Epetra_SerialComm * subComm
virtual int ScanSum(long long *MyVals, long long *ScanSums, int Count) const
virtual int GatherAll(int *MyVals, int *AllVals, int Count) const
EpetraExt::BlockCrsMatrix: A class for constructing a distributed block matrix.
virtual int Broadcast(int *MyVals, int Count, int Root) const
virtual Epetra_Comm & TimeDomainComm() const
Get reference to split Communicator for time domain.
virtual int NumProc() const
virtual int MaxAll(long *PartialMaxs, long *GlobalMaxs, int Count) const