Rocstar  1.0
Rocstar multiphysics simulation application
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
GEM_PartitionBoundary Class Reference

#include <GEM.H>

Inheritance diagram for GEM_PartitionBoundary:
Collaboration diagram for GEM_PartitionBoundary:

Public Member Functions

void report ()
 
void populate (int rpid, int nnshared, int nnsend, int nnrecv, int ncsend, int ncrecv, int *sharedn, int *sendn, int *recvn, int *sendc, int *recvc)
 
 GEM_PartitionBoundary (const GEM_PartitionBoundary &pb)
 
 GEM_PartitionBoundary ()
 
GEM_PartitionBoundaryoperator= (const GEM_PartitionBoundary &pb)
 

Public Attributes

unsigned int _rpart
 
std::vector< unsigned int > _sendcells
 
std::vector< unsigned int > _recvcells
 
std::vector< unsigned int > _sendnodes
 
std::vector< unsigned int > _recvnodes
 
std::vector< unsigned int > _sharenodes
 
GEM_UserData _data
 
std::ostream * _out
 
bool _debug
 

Detailed Description

Definition at line 224 of file GEM.H.

Constructor & Destructor Documentation

Definition at line 239 of file GEM.H.

References _data, _out, _recvcells, _recvnodes, _rpart, _sendcells, _sendnodes, and _sharenodes.

240  {
241  _rpart = pb._rpart;
242  _out = pb._out;
243  _sendcells = pb._sendcells;
244  _recvcells = pb._recvcells;
245  _sendnodes = pb._sendnodes;
246  _recvnodes = pb._recvnodes;
248  _data = pb._data;
249  };
std::vector< unsigned int > _recvnodes
Definition: GEM.H:230
std::vector< unsigned int > _sendcells
Definition: GEM.H:227
std::vector< unsigned int > _sharenodes
Definition: GEM.H:231
std::vector< unsigned int > _recvcells
Definition: GEM.H:228
std::vector< unsigned int > _sendnodes
Definition: GEM.H:229
std::ostream * _out
Definition: GEM.H:233
GEM_UserData _data
Definition: GEM.H:232
unsigned int _rpart
Definition: GEM.H:226

Definition at line 250 of file GEM.H.

References _out, _recvcells, _recvnodes, _rpart, _sendcells, _sendnodes, and _sharenodes.

251  {
252  _rpart = 0;
253  _out = NULL;
254  _sendcells.resize(0);
255  _sendnodes.resize(0);
256  _recvnodes.resize(0);
257  _recvcells.resize(0);
258  _sharenodes.resize(0);
259  // _data.resize(0);
260  };
std::vector< unsigned int > _recvnodes
Definition: GEM.H:230
std::vector< unsigned int > _sendcells
Definition: GEM.H:227
std::vector< unsigned int > _sharenodes
Definition: GEM.H:231
std::vector< unsigned int > _recvcells
Definition: GEM.H:228
std::vector< unsigned int > _sendnodes
Definition: GEM.H:229
std::ostream * _out
Definition: GEM.H:233
unsigned int _rpart
Definition: GEM.H:226

Member Function Documentation

GEM_PartitionBoundary& operator= ( const GEM_PartitionBoundary pb)
inline

Definition at line 261 of file GEM.H.

References _data, _out, _recvcells, _recvnodes, _rpart, _sendcells, _sendnodes, and _sharenodes.

262  {
263  _rpart = pb._rpart;
264  _out = pb._out;
265  _sendcells = pb._sendcells;
266  _recvcells = pb._recvcells;
267  _sendnodes = pb._sendnodes;
268  _recvnodes = pb._recvnodes;
270  _data = pb._data;
271  return(*this);
272  };
std::vector< unsigned int > _recvnodes
Definition: GEM.H:230
std::vector< unsigned int > _sendcells
Definition: GEM.H:227
std::vector< unsigned int > _sharenodes
Definition: GEM.H:231
std::vector< unsigned int > _recvcells
Definition: GEM.H:228
std::vector< unsigned int > _sendnodes
Definition: GEM.H:229
std::ostream * _out
Definition: GEM.H:233
GEM_UserData _data
Definition: GEM.H:232
unsigned int _rpart
Definition: GEM.H:226
void populate ( int  rpid,
int  nnshared,
int  nnsend,
int  nnrecv,
int  ncsend,
int  ncrecv,
int *  sharedn,
int *  sendn,
int *  recvn,
int *  sendc,
int *  recvc 
)

Definition at line 193 of file GEM.C.

Referenced by FluRegion::AddFluBorder(), and GEM_Partition::AddParitionBoundary().

196 {
197  int indy = 0;
198  _rpart = rpid;
199  _sendcells.resize(ncsend);
200  while(indy < ncsend){
201  _sendcells[indy] = sendc[indy];
202  indy++;
203  }
204  _recvcells.resize(ncrecv);
205  indy = 0;
206  while(indy < ncrecv){
207  _recvcells[indy] = recvc[indy];
208  indy++;
209  }
210  indy = 0;
211  _sendnodes.resize(nnsend);
212  while(indy < nnsend){
213  _sendnodes[indy] = sendn[indy];
214  indy++;
215  }
216  indy = 0;
217  _recvnodes.resize(nnrecv);
218  while(indy < nnrecv){
219  _recvnodes[indy] = recvn[indy];
220  indy++;
221  }
222  indy = 0;
223  _sharenodes.resize(nnshared);
224  while(indy < nnshared){
225  _sharenodes[indy] = sharedn[indy];
226  indy++;
227  }
228 }
std::vector< unsigned int > _recvnodes
Definition: GEM.H:230
std::vector< unsigned int > _sendcells
Definition: GEM.H:227
std::vector< unsigned int > _sharenodes
Definition: GEM.H:231
std::vector< unsigned int > _recvcells
Definition: GEM.H:228
std::vector< unsigned int > _sendnodes
Definition: GEM.H:229
unsigned int _rpart
Definition: GEM.H:226

Here is the caller graph for this function:

void report ( )

Definition at line 150 of file GEM.C.

Referenced by GEM_Partition::report_partition_boundaries().

151 {
152  if(_out){
153  *_out << "Remote Partition: " << _rpart << endl
154  << "Nodes: (" << _sharenodes.size() << ","
155  << _sendnodes.size() << "," << _recvnodes.size()
156  << ")" << endl
157  << "Cells: (" << _sendcells.size() << ","
158  << _recvcells.size() << ")" << endl;
159  }
160 }
std::vector< unsigned int > _recvnodes
Definition: GEM.H:230
std::vector< unsigned int > _sendcells
Definition: GEM.H:227
std::vector< unsigned int > _sharenodes
Definition: GEM.H:231
std::vector< unsigned int > _recvcells
Definition: GEM.H:228
std::vector< unsigned int > _sendnodes
Definition: GEM.H:229
std::ostream * _out
Definition: GEM.H:233
unsigned int _rpart
Definition: GEM.H:226

Here is the caller graph for this function:

Member Data Documentation

GEM_UserData _data

Definition at line 232 of file GEM.H.

Referenced by GEM_PartitionBoundary(), and operator=().

bool _debug

Definition at line 234 of file GEM.H.

Referenced by GEM_Partition::AddParitionBoundary().

std::ostream* _out

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