LehrFEM++ 1.0.0
A simple Finite Element Library for teaching
|
Element matrix provider for the Whitney one mass matrix that is the dot product of two Whitney one basis functions. More...
Public Member Functions | |
WhitneyOneMassMatrixProvider () | |
Constructor. More... | |
Eigen::MatrixXd | Eval (const lf::mesh::Entity &entity) const |
Compute the element matrix for a given cell of a mesh. More... | |
bool | isActive (const lf::mesh::Entity &entity) const |
All entities are regarded as active. More... | |
Element matrix provider for the Whitney one mass matrix that is the dot product of two Whitney one basis functions.
The element matrix provider works in a 3 dimensional world with 2 dimensional triangular cells.
\[ (\textbf{u}, \textbf{v}) \mapsto \int\limits_{K} \textbf{u} \cdot \textbf{v} dx \]
The whitney 1-forms, surface edge elements are associated with edges and defined as
\[ \mathbf{b}_i = s_i (\lambda_i \mathbf{grad}_{\Gamma}(\lambda_{i+1}) - \lambda_{i+1} \mathbf{grad}_{\Gamma}(\lambda_{i})) \]
with \( \lambda_i \) barycentric basis functions and \( s_i \) is a sign of the function based on the relative orientation of the edge in the mesh.
Details regarding the mathematical derivations can be found in the thesis Hodge-Laplacians and Dirac Operators on the Surface of the 3-Sphere
section 4.2.5.
Definition at line 50 of file whitney_one_mass_matrix_provider.h.
|
inline |
Constructor.
Definition at line 55 of file whitney_one_mass_matrix_provider.h.
Eigen::MatrixXd projects::hldo_sphere::assemble::WhitneyOneMassMatrixProvider::Eval | ( | const lf::mesh::Entity & | entity | ) | const |
Compute the element matrix for a given cell of a mesh.
entity | The mesh cell to compute the element matrix for |
Definition at line 11 of file whitney_one_mass_matrix_provider.cc.
References lf::mesh::Entity::Geometry(), lf::geometry::Geometry::Global(), lf::uscalfe::FeLagrangeO1Tria< SCALAR >::GradientsReferenceShapeFunctions(), lf::base::RefEl::kTria(), lf::base::RefEl::NodeCoords(), lf::mesh::Entity::RefEl(), lf::mesh::Entity::RelativeOrientations(), lf::mesh::to_sign(), and lf::geometry::Volume().
|
inline |
All entities are regarded as active.
Definition at line 69 of file whitney_one_mass_matrix_provider.h.