MFEM  v4.6.0
Finite element discretization library
Public Types | Public Member Functions | Public Attributes | Protected Member Functions | Protected Attributes | List of all members
mfem::ParNCMesh::RebalanceDofMessage Class Reference

#include <pncmesh.hpp>

Inheritance diagram for mfem::ParNCMesh::RebalanceDofMessage:
[legend]
Collaboration diagram for mfem::ParNCMesh::RebalanceDofMessage:
[legend]

Public Types

typedef std::map< int, RebalanceDofMessageMap
 

Public Member Functions

void SetElements (const Array< int > &elems, NCMesh *ncmesh)
 
void SetNCMesh (NCMesh *ncmesh)
 
std::size_t MemoryUsage () const
 
- Public Member Functions inherited from mfem::VarMessage< 158 >
void Isend (int rank, MPI_Comm comm)
 Non-blocking send to processor 'rank'. Returns immediately. Completion (as tested by MPI_Wait/Test) does not mean the message was received – it may be on its way or just buffered locally. More...
 
void Issend (int rank, MPI_Comm comm)
 Non-blocking synchronous send to processor 'rank'. Returns immediately. Completion (MPI_Wait/Test) means that the message was received. More...
 
void Recv (int rank, int size, MPI_Comm comm)
 Post-probe receive from processor 'rank' of message size 'size'. More...
 
void RecvDrop (int rank, int size, MPI_Comm comm)
 Like Recv(), but throw away the message. More...
 
 VarMessage ()
 
 VarMessage (const VarMessage &other)
 
void Clear ()
 Clear the message and associated request. More...
 
virtual ~VarMessage ()
 

Public Attributes

std::vector< int > elem_ids
 
std::vector< int > dofs
 
long dof_offset
 
- Public Attributes inherited from mfem::VarMessage< 158 >
std::string data
 
MPI_Request send_request
 

Protected Member Functions

void Encode (int) override
 
void Decode (int) override
 

Protected Attributes

ElementSet eset
 

Additional Inherited Members

- Static Public Member Functions inherited from mfem::VarMessage< 158 >
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 bool TestAllSent (MapT &rank_msg)
 Return true if all messages in the map container were sent, otherwise return false, without waiting. More...
 
static void Probe (int &rank, int &size, MPI_Comm comm)
 Blocking probe for incoming message of this type from any rank. Returns the rank and message size. More...
 
static bool IProbe (int &rank, int &size, MPI_Comm comm)
 Non-blocking probe for incoming message of this type from any rank. If there is an incoming message, returns true and sets 'rank' and 'size'. Otherwise returns false. More...
 
static void RecvAll (MapT &rank_msg, MPI_Comm comm)
 Helper to receive all messages in a rank-to-message map container. More...
 

Detailed Description

Allows migrating element data (DOFs) after Rebalance(). Used by SendRebalanceDofs and RecvRebalanceDofs.

Definition at line 501 of file pncmesh.hpp.

Member Typedef Documentation

◆ Map

Definition at line 511 of file pncmesh.hpp.

Member Function Documentation

◆ Decode()

void mfem::ParNCMesh::RebalanceDofMessage::Decode ( int  )
overrideprotectedvirtual

Reimplemented from mfem::VarMessage< 158 >.

Definition at line 2717 of file pncmesh.cpp.

◆ Encode()

void mfem::ParNCMesh::RebalanceDofMessage::Encode ( int  )
overrideprotectedvirtual

Reimplemented from mfem::VarMessage< 158 >.

Definition at line 2706 of file pncmesh.cpp.

◆ MemoryUsage()

std::size_t mfem::ParNCMesh::RebalanceDofMessage::MemoryUsage ( ) const

Definition at line 2780 of file pncmesh.cpp.

◆ SetElements()

void mfem::ParNCMesh::RebalanceDofMessage::SetElements ( const Array< int > &  elems,
NCMesh ncmesh 
)

Definition at line 2676 of file pncmesh.cpp.

◆ SetNCMesh()

void mfem::ParNCMesh::RebalanceDofMessage::SetNCMesh ( NCMesh ncmesh)
inline

Definition at line 508 of file pncmesh.hpp.

Member Data Documentation

◆ dof_offset

long mfem::ParNCMesh::RebalanceDofMessage::dof_offset

Definition at line 505 of file pncmesh.hpp.

◆ dofs

std::vector<int> mfem::ParNCMesh::RebalanceDofMessage::dofs

Definition at line 504 of file pncmesh.hpp.

◆ elem_ids

std::vector<int> mfem::ParNCMesh::RebalanceDofMessage::elem_ids

Definition at line 504 of file pncmesh.hpp.

◆ eset

ElementSet mfem::ParNCMesh::RebalanceDofMessage::eset
protected

Definition at line 514 of file pncmesh.hpp.


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