MFEM v4.7.0
Finite element discretization library
Loading...
Searching...
No Matches
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.
 
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.
 
void Recv (int rank, int size, MPI_Comm comm)
 Post-probe receive from processor 'rank' of message size 'size'.
 
void RecvDrop (int rank, int size, MPI_Comm comm)
 Like Recv(), but throw away the message.
 
 VarMessage ()
 
 VarMessage (const VarMessage &other)
 
void Clear ()
 Clear the message and associated request.
 
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.
 
static void WaitAllSent (MapT &rank_msg)
 Helper to wait for all messages in a map container to be sent.
 
static bool TestAllSent (MapT &rank_msg)
 Return true if all messages in the map container were sent, otherwise return false, without waiting.
 
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.
 
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.
 
static void RecvAll (MapT &rank_msg, MPI_Comm comm)
 Helper to receive all messages in a rank-to-message map container.
 

Detailed Description

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

Definition at line 499 of file pncmesh.hpp.

Member Typedef Documentation

◆ Map

Definition at line 509 of file pncmesh.hpp.

Member Function Documentation

◆ Decode()

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

Implements mfem::VarMessage< 158 >.

Definition at line 2893 of file pncmesh.cpp.

◆ Encode()

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

Implements mfem::VarMessage< 158 >.

Definition at line 2882 of file pncmesh.cpp.

◆ MemoryUsage()

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

Definition at line 2956 of file pncmesh.cpp.

◆ SetElements()

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

Definition at line 2852 of file pncmesh.cpp.

◆ SetNCMesh()

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

Definition at line 506 of file pncmesh.hpp.

Member Data Documentation

◆ dof_offset

long mfem::ParNCMesh::RebalanceDofMessage::dof_offset

Definition at line 503 of file pncmesh.hpp.

◆ dofs

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

Definition at line 502 of file pncmesh.hpp.

◆ elem_ids

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

Definition at line 502 of file pncmesh.hpp.

◆ eset

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

Definition at line 512 of file pncmesh.hpp.


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