MFEM
v3.3
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 below are only exchanged between immediate neighbors. Used by ParFiniteElementSpace::GetParallelConformingInterpolation().
Definition at line 500 of file pncmesh.hpp.
|
protected |
Definition at line 519 of file pncmesh.hpp.
typedef std::map<int, NeighborDofMessage> mfem::NeighborDofMessage::Map |
Definition at line 516 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 1884 of file pncmesh.cpp.
|
protectedvirtual |
Reimplemented from mfem::VarMessage< 135 >.
Definition at line 1996 of file pncmesh.cpp.
|
protectedvirtual |
Reimplemented from mfem::VarMessage< 135 >.
Definition at line 1959 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 1891 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 508 of file pncmesh.hpp.
|
protected |
Definition at line 1908 of file pncmesh.cpp.
|
protected |
Definition at line 523 of file pncmesh.hpp.
|
protected |
Definition at line 520 of file pncmesh.hpp.
|
protected |
Definition at line 524 of file pncmesh.hpp.
|
protected |
Definition at line 522 of file pncmesh.hpp.