![]() |
v0.13.2 |
Managing BitRefLevels. More...
#include <src/interfaces/CommInterface.hpp>
Public Member Functions | |
MoFEMErrorCode | query_interface (boost::typeindex::type_index type_index, UnknownInterface **iface) const |
CommInterface (const MoFEM::Core &core) | |
~CommInterface ()=default | |
Destructor. More... | |
![]() | |
virtual MoFEMErrorCode | query_interface (boost::typeindex::type_index type_index, UnknownInterface **iface) const =0 |
template<class IFACE > | |
MoFEMErrorCode | registerInterface (bool error_if_registration_failed=true) |
Register interface. More... | |
template<class IFACE > | |
MoFEMErrorCode | getInterface (IFACE *&iface) const |
Get interface refernce to pointer of interface. More... | |
template<class IFACE > | |
MoFEMErrorCode | getInterface (IFACE **const iface) const |
Get interface pointer to pointer of interface. More... | |
template<class IFACE , typename boost::enable_if< boost::is_pointer< IFACE >, int >::type = 0> | |
IFACE | getInterface () const |
Get interface pointer to pointer of interface. More... | |
template<class IFACE , typename boost::enable_if< boost::is_reference< IFACE >, int >::type = 0> | |
IFACE | getInterface () const |
Get reference to interface. More... | |
template<class IFACE > | |
IFACE * | getInterface () const |
Function returning pointer to interface. More... | |
virtual | ~UnknownInterface ()=default |
Public Attributes | |
MoFEM::Core & | cOre |
bool | dEbug |
Make elemnts multishared | |
MoFEMErrorCode | resolveSharedFiniteElements (const Problem *problem_ptr, const std::string &fe_name, int verb=DEFAULT_VERBOSITY) |
resolve shared entities for finite elements in the problem More... | |
MoFEMErrorCode | resolveSharedFiniteElements (const std::string name, const std::string &fe_name, int verb=DEFAULT_VERBOSITY) |
resolve shared entities for finite elements in the problem More... | |
Make entities multishared | |
MoFEMErrorCode | makeEntitiesMultishared (const EntityHandle *entities, const int num_entities, const int owner_proc=0, int verb=DEFAULT_VERBOSITY) |
make entities from proc 0 shared on all proc More... | |
MoFEMErrorCode | makeEntitiesMultishared (Range &entities, const int owner_proc=0, int verb=DEFAULT_VERBOSITY) |
make entities from proc 0 shared on all proc More... | |
MoFEMErrorCode | makeFieldEntitiesMultishared (const std::string field_name, const int owner_proc=0, int verb=DEFAULT_VERBOSITY) |
make field entities multi shared More... | |
MoFEMErrorCode | exchangeFieldData (const std::string field_name, int verb=DEFAULT_VERBOSITY) |
Exchange field data. More... | |
Synchronize entities (Following functions in future will be | |
deprecated) | |
MoFEMErrorCode | synchroniseEntities (Range &ent, std::map< int, Range > *received_ents, int verb=DEFAULT_VERBOSITY) |
synchronize entity range on processors (collective) More... | |
MoFEMErrorCode | synchroniseEntities (Range &ent, int verb=DEFAULT_VERBOSITY) |
synchronize entity range on processors (collective) More... | |
MoFEMErrorCode | synchroniseFieldEntities (const std::string name, int verb=DEFAULT_VERBOSITY) |
MoFEMErrorCode | resolveParentEntities (const Range &ent, int verb=DEFAULT_VERBOSITY) |
Synchronise parent entities. More... | |
Read load and boradcoast | |
@ | |
MoFEMErrorCode | partitionMesh (const Range &ents, const int dim, const int adj_dim, const int n_parts, Tag *th_vertex_weights=nullptr, Tag *th_edge_weights=nullptr, Tag *th_part_weights=nullptr, int verb=VERBOSE, const bool debug=false) |
Set partition tag to each finite element in the problem. More... | |
Additional Inherited Members | |
![]() | |
static MoFEMErrorCode | getLibVersion (Version &version) |
Get library version. More... | |
static MoFEMErrorCode | getFileVersion (moab::Interface &moab, Version &version) |
Get database major version. More... | |
static MoFEMErrorCode | setFileVersion (moab::Interface &moab, Version version=Version(MoFEM_VERSION_MAJOR, MoFEM_VERSION_MINOR, MoFEM_VERSION_BUILD)) |
Get database major version. More... | |
static MoFEMErrorCode | getInterfaceVersion (Version &version) |
Get database major version. More... | |
Managing BitRefLevels.
Definition at line 21 of file CommInterface.hpp.
MoFEM::CommInterface::CommInterface | ( | const MoFEM::Core & | core | ) |
Definition at line 23 of file CommInterface.cpp.
|
default |
Destructor.
MoFEMErrorCode MoFEM::CommInterface::exchangeFieldData | ( | const std::string | field_name, |
int | verb = DEFAULT_VERBOSITY |
||
) |
Exchange field data.
Exchange field for all shared and ghosted entities. This function should be called collectively over the communicator for this ParallelComm. If the entities vector is empty, all shared entities participate in the exchange. If a proc has no owned entities this function must still be called since it is collective.
verb | |
field_name |
Definition at line 818 of file CommInterface.cpp.
MoFEMErrorCode MoFEM::CommInterface::makeEntitiesMultishared | ( | const EntityHandle * | entities, |
const int | num_entities, | ||
const int | owner_proc = 0 , |
||
int | verb = DEFAULT_VERBOSITY |
||
) |
make entities from proc 0 shared on all proc
entities | |
num_entities | |
my_proc | default proc id to share from |
verb |
Definition at line 654 of file CommInterface.cpp.
MoFEMErrorCode MoFEM::CommInterface::makeEntitiesMultishared | ( | Range & | entities, |
const int | owner_proc = 0 , |
||
int | verb = DEFAULT_VERBOSITY |
||
) |
make entities from proc 0 shared on all proc
entities | |
my_proc | default proc id to share from |
verb |
Definition at line 787 of file CommInterface.cpp.
MoFEMErrorCode MoFEM::CommInterface::makeFieldEntitiesMultishared | ( | const std::string | field_name, |
const int | owner_proc = 0 , |
||
int | verb = DEFAULT_VERBOSITY |
||
) |
make field entities multi shared
field_name | |
owner_proc | |
verb |
Definition at line 803 of file CommInterface.cpp.
|
virtual |
Implements MoFEM::UnknownInterface.
Definition at line 16 of file CommInterface.cpp.
MoFEMErrorCode MoFEM::CommInterface::resolveParentEntities | ( | const Range & | ent, |
int | verb = DEFAULT_VERBOSITY |
||
) |
Synchronise parent entities.
Exchange parent entity tag and bitref of entity. Note thar parent handle can be different on each processor.
ent | |
verb |
Definition at line 256 of file CommInterface.cpp.
MoFEMErrorCode MoFEM::CommInterface::synchroniseEntities | ( | Range & | ent, |
int | verb = DEFAULT_VERBOSITY |
||
) |
synchronize entity range on processors (collective)
ent | ents to send and received |
verb |
Definition at line 240 of file CommInterface.cpp.
MoFEMErrorCode MoFEM::CommInterface::synchroniseEntities | ( | Range & | ent, |
std::map< int, Range > * | received_ents, | ||
int | verb = DEFAULT_VERBOSITY |
||
) |
synchronize entity range on processors (collective)
synchronize entity range on processors (collective)
ent | ents to send and received |
received_ents | pointer to map with received entities |
verb |
Definition at line 26 of file CommInterface.cpp.
MoFEM::Core& MoFEM::CommInterface::cOre |
Definition at line 26 of file CommInterface.hpp.
bool MoFEM::CommInterface::dEbug |
Definition at line 27 of file CommInterface.hpp.