![]() |
OGS
|
The LocalDataInitializer is a functor creating a local assembler data with corresponding to the mesh element type shape functions and calling initialization of the new local assembler data. For example for MeshLib::Quad a local assembler data with template argument NumLib::ShapeQuad4 is created.
Definition at line 42 of file LocalDataInitializer.h.
#include <LocalDataInitializer.h>
Classes | |
struct | IsNDElement |
Public Types | |
using | LADataIntfPtr = std::unique_ptr<LocalAssemblerInterface> |
Public Member Functions | |
LocalDataInitializer (NumLib::LocalToGlobalIndexMap const &dof_table, NumLib::IntegrationOrder const integration_order) | |
LADataIntfPtr | operator() (std::size_t const, MeshLib::Element const &mesh_item, std::unordered_map< std::size_t, BHE::BHETypes * > const &element_to_bhe_map, ConstructorArgs &&... args) const |
Private Types | |
using | LADataBuilder |
Static Private Member Functions | |
template<typename ShapeFunction> | |
static LADataBuilder | makeLocalAssemblerBuilder (NumLib::IntegrationOrder const integration_order) |
template<typename ShapeFunction> | |
static LADataBuilder | makeLocalAssemblerBuilderBHE (NumLib::IntegrationOrder const integration_order) |
Private Attributes | |
std::unordered_map< std::type_index, LADataBuilder > | _builder |
Mapping of element types to local assembler constructors. | |
NumLib::LocalToGlobalIndexMap const & | _dof_table |
|
private |
Definition at line 126 of file LocalDataInitializer.h.
using ProcessLib::HeatTransportBHE::LocalDataInitializer< LocalAssemblerInterface, LocalAssemblerDataSoil, LocalAssemblerDataBHE, ConstructorArgs >::LADataIntfPtr = std::unique_ptr<LocalAssemblerInterface> |
Definition at line 55 of file LocalDataInitializer.h.
|
inlineexplicit |
Definition at line 57 of file LocalDataInitializer.h.
References _builder, _dof_table, BaseLib::TMP::filter(), BaseLib::TMP::foreach(), makeLocalAssemblerBuilder(), and makeLocalAssemblerBuilderBHE().
|
inlinestaticprivate |
Definition at line 133 of file LocalDataInitializer.h.
References MeshLib::Element::getDimension().
Referenced by LocalDataInitializer().
|
inlinestaticprivate |
Definition at line 158 of file LocalDataInitializer.h.
References MeshLib::Element::getID(), and OGS_FATAL.
Referenced by LocalDataInitializer().
|
inline |
Returns data pointer to the newly created local assembler data.
id
is not necessarily the mesh item's id. Especially when having multiple meshes it will differ from the latter. Definition at line 99 of file LocalDataInitializer.h.
|
private |
Mapping of element types to local assembler constructors.
Definition at line 218 of file LocalDataInitializer.h.
Referenced by LocalDataInitializer(), and operator()().
|
private |
Definition at line 220 of file LocalDataInitializer.h.
Referenced by LocalDataInitializer().