MFEM
v3.1
Finite element discretization library
|
#include <pncmesh.hpp>
Public Types | |
typedef std::map< int, NeighborDofMessage > | Map |
Public Member Functions | |
void | AddDofs (int type, const NCMesh::MeshId &id, const Array< int > &dofs) |
Add vertex/edge/face DOFs to an outgoing message. More... | |
void | Init (ParNCMesh *pncmesh, const FiniteElementCollection *fec, int ndofs) |
void | GetDofs (int type, const NCMesh::MeshId &id, Array< int > &dofs, int &ndofs) |
Public Member Functions inherited from mfem::VarMessage< 135 > | |
void | Isend (int rank, MPI_Comm comm) |
Non-blocking send to processor 'rank'. More... | |
void | Recv (int rank, int size, MPI_Comm comm) |
Post-probe receive from processor 'rank' of message size 'size'. More... | |
VarMessage () | |
VarMessage (const VarMessage &other) | |
void | Clear () |
virtual | ~VarMessage () |
Protected Types | |
typedef std::map < NCMesh::MeshId, std::vector < int > > | IdToDofs |
Protected Member Functions | |
virtual void | Encode () |
virtual void | Decode () |
void | ReorderEdgeDofs (const NCMesh::MeshId &id, std::vector< int > &dofs) |
Protected Attributes | |
IdToDofs | id_dofs [3] |
ParNCMesh * | pncmesh |
const FiniteElementCollection * | fec |
int | ndofs |
Additional Inherited Members | |
Static Public Member Functions inherited from mfem::VarMessage< 135 > | |
static void | IsendAll (MapT &rank_msg, MPI_Comm comm) |
Helper to send all messages in a rank-to-message map container. More... | |
static void | WaitAllSent (MapT &rank_msg) |
Helper to wait for all messages in a map container to be sent. More... | |
static void | Probe (int &rank, int &size, MPI_Comm comm) |
static bool | IProbe (int &rank, int &size, MPI_Comm comm) |
static void | RecvAll (MapT &rank_msg, MPI_Comm comm) |
Helper to receive all messages in a rank-to-message map container. More... | |
Public Attributes inherited from mfem::VarMessage< 135 > | |
std::string | data |
MPI_Request | send_request |
Represents a message about DOF assignment of vertex, edge and face DOFs on the boundary with another processor. This and other messages in this file are only exchanged between immediate neighbors. Used by ParFiniteElementSpace::GetConformingInterpolation().
Definition at line 344 of file pncmesh.hpp.
|
protected |
Definition at line 363 of file pncmesh.hpp.
typedef std::map<int, NeighborDofMessage> mfem::NeighborDofMessage::Map |
Definition at line 360 of file pncmesh.hpp.
void mfem::NeighborDofMessage::AddDofs | ( | int | type, |
const NCMesh::MeshId & | id, | ||
const Array< int > & | dofs | ||
) |
Add vertex/edge/face DOFs to an outgoing message.
Definition at line 920 of file pncmesh.cpp.
|
protectedvirtual |
Reimplemented from mfem::VarMessage< 135 >.
Definition at line 1032 of file pncmesh.cpp.
|
protectedvirtual |
Reimplemented from mfem::VarMessage< 135 >.
Definition at line 995 of file pncmesh.cpp.
void mfem::NeighborDofMessage::GetDofs | ( | int | type, |
const NCMesh::MeshId & | id, | ||
Array< int > & | dofs, | ||
int & | ndofs | ||
) |
Get vertex/edge/face DOFs from a received message. 'ndofs' receives the remote space size.
Definition at line 927 of file pncmesh.cpp.
|
inline |
Set pointers to ParNCMesh & FECollection (needed to encode the message), set the space size to be sent.
Definition at line 352 of file pncmesh.hpp.
|
protected |
Definition at line 944 of file pncmesh.cpp.
|
protected |
Definition at line 367 of file pncmesh.hpp.
|
protected |
Definition at line 364 of file pncmesh.hpp.
|
protected |
Definition at line 368 of file pncmesh.hpp.
|
protected |
Definition at line 366 of file pncmesh.hpp.