![]() |
v0.13.0 |
Simple interface for fast problem set-up. More...
#include <src/interfaces/BcManager.hpp>
Classes | |
struct | BCs |
Data structure storing bc markers and atributes. More... | |
Public Types | |
using | BcMapByBlockName = std::map< string, boost::shared_ptr< BCs > > |
using | BcMarkerPtr = boost::shared_ptr< std::vector< char unsigned > > |
Public Member Functions | |
MoFEMErrorCode | query_interface (boost::typeindex::type_index type_index, UnknownInterface **iface) const |
BcManager (const MoFEM::Core &core) | |
virtual | ~BcManager ()=default |
MoFEMErrorCode | getOptions () |
get options More... | |
Range | getAdjEnts (Range ents) |
MoFEMErrorCode | removeBlockDOFsOnEntities (const std::string problem_name, const std::string block_name, const std::string field_name, int lo, int hi, bool get_low_dim_ents=true) |
Remove DOFs from problem. More... | |
MoFEMErrorCode | pushMarkDOFsOnEntities (const std::string problem_name, const std::string block_name, const std::string field_name, int lo, int hi, bool get_low_dim_ents=true) |
Mark block dofs. More... | |
boost::shared_ptr< BCs > | popMarkDOFsOnEntities (const std::string block_name) |
Get bc data and remove element. More... | |
auto | getBcStructure (const std::string bc_id) |
Get the bc structure object. More... | |
BcMapByBlockName & | getBcMapByBlockName () |
Get the bc map. More... | |
BcMarkerPtr | getMergedBlocksMarker (std::vector< std::regex > bc_regex_vec) |
Get the Merged Boundary Marker object. More... | |
auto | getMergedBlocksMarker (std::vector< string > bc_names) |
Get the Merged Boundary Marker object. More... | |
BcMarkerPtr | getMergedBlocksMarker (const std::vector< BcMarkerPtr > &boundary_markers_ptr_vec) |
Get the Merged Blocks Marker object. More... | |
auto | checkBlock (const std::pair< string, boost::shared_ptr< BCs >> &bc, std::regex reg) |
check if given boundary condition name is in the map bc element More... | |
auto | checkBlock (const std::pair< string, boost::shared_ptr< BCs >> &bc, std::string name) |
check if given boundary condition name is in the map bc element More... | |
SmartPetscObj< IS > | getBlockIS (const std::string block_prefix, const std::string block_name, const std::string field_name, const std::string problem_name, int lo, int hi, SmartPetscObj< IS > is_expand=SmartPetscObj< IS >()) |
Get block is. More... | |
SmartPetscObj< IS > | getBlockIS (const std::string problem_name, const std::string block_name, const std::string field_name, int lo, int hi, SmartPetscObj< IS > is_expand=SmartPetscObj< IS >()) |
Get block is. More... | |
![]() | |
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 |
Private Attributes | |
MoFEM::Core & | cOre |
BcMapByBlockName | bcMapByBlockName |
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... | |
Simple interface for fast problem set-up.
Definition at line 27 of file BcManager.hpp.
using MoFEM::BcManager::BcMapByBlockName = std::map<string, boost::shared_ptr<BCs> > |
Definition at line 113 of file BcManager.hpp.
using MoFEM::BcManager::BcMarkerPtr = boost::shared_ptr<std::vector<char unsigned> > |
Definition at line 115 of file BcManager.hpp.
MoFEM::BcManager::BcManager | ( | const MoFEM::Core & | core | ) |
Definition at line 30 of file BcManager.cpp.
|
virtualdefault |
auto MoFEM::BcManager::checkBlock | ( | const std::pair< string, boost::shared_ptr< BCs >> & | bc, |
std::regex | reg | ||
) |
check if given boundary condition name is in the map bc element
bc | element of the map |
reg | bc regex |
Definition at line 169 of file BcManager.hpp.
auto MoFEM::BcManager::checkBlock | ( | const std::pair< string, boost::shared_ptr< BCs >> & | bc, |
std::string | name | ||
) |
check if given boundary condition name is in the map bc element
bc | element of the map |
name | bc name |
Definition at line 180 of file BcManager.hpp.
Range MoFEM::BcManager::getAdjEnts | ( | Range | ents | ) |
BcMapByBlockName& MoFEM::BcManager::getBcMapByBlockName | ( | ) |
auto MoFEM::BcManager::getBcStructure | ( | const std::string | bc_id | ) |
Get the bc structure object.
block_name |
Definition at line 122 of file BcManager.hpp.
SmartPetscObj< IS > MoFEM::BcManager::getBlockIS | ( | const std::string | block_prefix, |
const std::string | block_name, | ||
const std::string | field_name, | ||
const std::string | problem_name, | ||
int | lo, | ||
int | hi, | ||
SmartPetscObj< IS > | is_expand = SmartPetscObj<IS>() |
||
) |
Get block is.
block_prefix | for hashmap |
block_name | for hash map |
field_name | for hash map and IS |
problem_name | for IS |
lo | |
hi | |
is_expand | is to extend |
Definition at line 238 of file BcManager.cpp.
SmartPetscObj< IS > MoFEM::BcManager::getBlockIS | ( | const std::string | problem_name, |
const std::string | block_name, | ||
const std::string | field_name, | ||
int | lo, | ||
int | hi, | ||
SmartPetscObj< IS > | is_expand = SmartPetscObj<IS>() |
||
) |
Get block is.
problem_name | |
block_name | |
field_name | |
lo | |
hi | |
is_expand | is to extend |
Definition at line 278 of file BcManager.cpp.
BcManager::BcMarkerPtr MoFEM::BcManager::getMergedBlocksMarker | ( | const std::vector< BcMarkerPtr > & | boundary_markers_ptr_vec | ) |
Get the Merged Blocks Marker object.
boundary_markers_ptr_vec | vector of boundary markers to merge |
Definition at line 227 of file BcManager.cpp.
BcManager::BcMarkerPtr MoFEM::BcManager::getMergedBlocksMarker | ( | std::vector< std::regex > | bc_regex_vec | ) |
Get the Merged Boundary Marker object.
bc_regex_vec | boundary name regex vector |
Definition at line 209 of file BcManager.cpp.
auto MoFEM::BcManager::getMergedBlocksMarker | ( | std::vector< string > | bc_names | ) |
Get the Merged Boundary Marker object.
bc_names | vector of boundary names |
Definition at line 146 of file BcManager.hpp.
MoFEMErrorCode MoFEM::BcManager::getOptions | ( | ) |
get options
Definition at line 54 of file BcManager.cpp.
boost::shared_ptr< BcManager::BCs > MoFEM::BcManager::popMarkDOFsOnEntities | ( | const std::string | block_name | ) |
Get bc data and remove element.
block_name |
Definition at line 198 of file BcManager.cpp.
MoFEMErrorCode MoFEM::BcManager::pushMarkDOFsOnEntities | ( | const std::string | problem_name, |
const std::string | block_name, | ||
const std::string | field_name, | ||
int | lo, | ||
int | hi, | ||
bool | get_low_dim_ents = true |
||
) |
Mark block dofs.
problem_name | |
block_name | |
field_name | |
lo | lowest coefficient |
hi | highest coefficient |
get_low_dim_ents | get lower dimension entities |
Definition at line 121 of file BcManager.cpp.
|
virtual |
MoFEMErrorCode MoFEM::BcManager::removeBlockDOFsOnEntities | ( | const std::string | problem_name, |
const std::string | block_name, | ||
const std::string | field_name, | ||
int | lo, | ||
int | hi, | ||
bool | get_low_dim_ents = true |
||
) |
Remove DOFs from problem.
problem_name | |
block_name | |
field_name | |
lo | lowest coefficient |
hi | highest coefficient |
get_low_dim_ents | get lower dimension entities |
Definition at line 63 of file BcManager.cpp.
|
private |
Definition at line 222 of file BcManager.hpp.
|
private |
Definition at line 220 of file BcManager.hpp.