![]() |
v0.15.0 |
data structure for finite element entity More...
#include "src/finite_elements/EntitiesFieldData.hpp"
Classes | |
| struct | EntData |
| Data on single entity (This is passed as argument to DataOperator::doWork) More... | |
Public Member Functions | |
| EntitiesFieldData (const EntityType type) | |
| Construct EntitiesFieldData for given entity type. | |
| virtual | ~EntitiesFieldData ()=default |
| virtual MoFEMErrorCode | setElementType (const EntityType type) |
| Set element type and initialize data structures. | |
| MoFEMErrorCode | resetFieldDependentData () |
| Reset data associated with particular field name. | |
| virtual MoFEMErrorCode | baseSwap (const std::string &field_name, const FieldApproximationBase base) |
| Swap approximation base. | |
Public Attributes | |
| std::bitset< LASTBASE > | bAse |
| bases on element | |
| MatrixInt | facesNodes |
| nodes on finite element faces | |
| MatrixInt | facesNodesOrder |
| order of face nodes on element | |
| std::array< std::bitset< LASTSPACE >, MBMAXTYPE > | spacesOnEntities |
| spaces on entity types | |
| std::array< std::bitset< LASTBASE >, MBMAXTYPE > | basesOnEntities |
| bases on entity types | |
| std::array< std::bitset< LASTBASE >, LASTSPACE > | basesOnSpaces |
| base on spaces | |
| std::array< std::bitset< LASTBASE >, LASTSPACE > | brokenBasesOnSpaces |
| base on spaces | |
| std::array< boost::ptr_vector< EntData >, MBMAXTYPE > | dataOnEntities |
Protected Member Functions | |
| EntitiesFieldData () | |
Friends | |
| std::ostream & | operator<< (std::ostream &os, const EntitiesFieldData &e) |
data structure for finite element entity
It keeps that about indices of degrees of freedom, dofs data, base functions functions, entity side number, type of entities, approximation order, etc.
Definition at line 40 of file EntitiesFieldData.hpp.
| MoFEM::EntitiesFieldData::EntitiesFieldData | ( | const EntityType | type | ) |
Construct EntitiesFieldData for given entity type.
| type | Entity type (MBVERTEX, MBEDGE, MBTRI, MBTET, etc.) |
Definition at line 75 of file EntitiesFieldData.cpp.
|
virtualdefault |
|
inlineprotected |
Definition at line 108 of file EntitiesFieldData.hpp.
|
virtual |
Swap approximation base.
Bernstein-Bezier (BB) base is not hierarchical, and is calculated for particular field, since it all shape functions change with the order. BB base is precalculated for every field, and when user push operator with particular field using BB base, pointers to shape functions and BaseDerivatives of shape functions are set to particular location, once operator is executed, pointers are switch back to its original position.
getNSharedPtr(base) <=== getBBNSharedPtr(field_name); // DO OPERATOR WORK getNSharedPtr(base) ==> getBBNSharedPtr(field_name);
| field_name | Name of the field for which to swap base |
| base | Approximation base type to swap |
Definition at line 156 of file EntitiesFieldData.cpp.
|
inline |
Reset data associated with particular field name.
Definition at line 127 of file EntitiesFieldData.cpp.
|
virtual |
Set element type and initialize data structures.
| type | Entity type to set |
Reimplemented in MoFEM::DerivedEntitiesFieldData.
Definition at line 79 of file EntitiesFieldData.cpp.
|
friend |
Definition at line 270 of file EntitiesFieldData.cpp.
| std::bitset<LASTBASE> MoFEM::EntitiesFieldData::bAse |
bases on element
Definition at line 44 of file EntitiesFieldData.hpp.
| std::array<std::bitset<LASTBASE>, MBMAXTYPE> MoFEM::EntitiesFieldData::basesOnEntities |
bases on entity types
Definition at line 51 of file EntitiesFieldData.hpp.
base on spaces
Definition at line 53 of file EntitiesFieldData.hpp.
base on spaces
Definition at line 55 of file EntitiesFieldData.hpp.
| std::array<boost::ptr_vector<EntData>, MBMAXTYPE> MoFEM::EntitiesFieldData::dataOnEntities |
data on nodes, base function, dofs values, etc.
Definition at line 57 of file EntitiesFieldData.hpp.
| MatrixInt MoFEM::EntitiesFieldData::facesNodes |
nodes on finite element faces
Definition at line 45 of file EntitiesFieldData.hpp.
| MatrixInt MoFEM::EntitiesFieldData::facesNodesOrder |
order of face nodes on element
Definition at line 46 of file EntitiesFieldData.hpp.
| std::array<std::bitset<LASTSPACE>, MBMAXTYPE> MoFEM::EntitiesFieldData::spacesOnEntities |
spaces on entity types
Definition at line 49 of file EntitiesFieldData.hpp.