MFEM
v3.2
Finite element discretization library
|
#include <communication.hpp>
Classes | |
struct | OpData |
Public Member Functions | |
GroupCommunicator (GroupTopology >) | |
void | Create (Array< int > &ldof_group) |
Table & | GroupLDofTable () |
void | Finalize () |
Allocate internal buffers after the GroupLDofTable is defined. More... | |
GroupTopology & | GetGroupTopology () |
Get a reference to the group topology object. More... | |
template<class T > | |
void | Bcast (T *ldata) |
template<class T > | |
void | Bcast (Array< T > &ldata) |
template<class T > | |
void | Reduce (T *ldata, void(*Op)(OpData< T >)) |
template<class T > | |
void | Reduce (Array< T > &ldata, void(*Op)(OpData< T >)) |
~GroupCommunicator () | |
Static Public Member Functions | |
template<class T > | |
static void | Sum (OpData< T >) |
Reduce operation Sum, instantiated for int and double. More... | |
template<class T > | |
static void | Min (OpData< T >) |
Reduce operation Min, instantiated for int and double. More... | |
template<class T > | |
static void | Max (OpData< T >) |
Reduce operation Max, instantiated for int and double. More... | |
template<class T > | |
static void | BitOR (OpData< T >) |
Reduce operation bitwise OR, instantiated for int only. More... | |
Definition at line 107 of file communication.hpp.
mfem::GroupCommunicator::GroupCommunicator | ( | GroupTopology & | gt | ) |
Definition at line 203 of file communication.cpp.
mfem::GroupCommunicator::~GroupCommunicator | ( | ) |
Definition at line 508 of file communication.cpp.
void mfem::GroupCommunicator::Bcast | ( | T * | ldata | ) |
Broadcast within each group where the master is the root. This method is instantiated for int and double.
Definition at line 263 of file communication.cpp.
|
inline |
Definition at line 134 of file communication.hpp.
|
static |
Reduce operation bitwise OR, instantiated for int only.
Definition at line 495 of file communication.cpp.
void mfem::GroupCommunicator::Create | ( | Array< int > & | ldof_group | ) |
Initialize the communicator from a local-dof to group map. Finalize is called internally.
Definition at line 211 of file communication.cpp.
void mfem::GroupCommunicator::Finalize | ( | ) |
Allocate internal buffers after the GroupLDofTable is defined.
Definition at line 237 of file communication.cpp.
|
inline |
Get a reference to the group topology object.
Definition at line 129 of file communication.hpp.
|
inline |
Fill-in the returned Table reference to initialize the communicator then call Finalize.
Definition at line 124 of file communication.hpp.
|
static |
Reduce operation Max, instantiated for int and double.
Definition at line 477 of file communication.cpp.
|
static |
Reduce operation Min, instantiated for int and double.
Definition at line 459 of file communication.cpp.
void mfem::GroupCommunicator::Reduce | ( | T * | ldata, |
void(*)(OpData< T >) | Op | ||
) |
Reduce within each group where the master is the root. The reduce operation is given by the second argument (see below for list of the supported operations.) This method is instantiated for int and double.
Definition at line 352 of file communication.cpp.
|
inline |
Definition at line 149 of file communication.hpp.
|
static |
Reduce operation Sum, instantiated for int and double.
Definition at line 445 of file communication.cpp.