LehrFEM++ 1.0.0
A simple Finite Element Library for teaching
piecewise_const_element_matrix_provider.h
1#ifndef THESIS_ASSEMBLE_PIECEWISE_CONST_ELEMENT_MATRIX_PROVIDER_H
2#define THESIS_ASSEMBLE_PIECEWISE_CONST_ELEMENT_MATRIX_PROVIDER_H
3
10#include <lf/mesh/utils/mesh_data_set.h>
11
12#include <Eigen/Dense>
13
14namespace projects::ipdg_stokes {
15
16namespace assemble {
17
40 public:
49 double sigma, const lf::mesh::utils::MeshDataSet<bool> &boundary,
50 bool modified = false);
51
59 Eigen::MatrixXd Eval(const lf::mesh::Entity &entity) const;
60
64 bool isActive(const lf::mesh::Entity &entity) const { return true; }
65
66 private:
67 const double sigma_;
69 const bool modified_;
70};
71
72} // end namespace assemble
73
74} // end namespace projects::ipdg_stokes
75
76#endif // THESIS_ASSEMBLE_PIECEWISE_CONST_ELEMENT_MATRIX_PROVIDER_H
Interface class representing a topological entity in a cellular complex
Definition: entity.h:39
PiecewiseConstElementMatrixProvider(double sigma, const lf::mesh::utils::MeshDataSet< bool > &boundary, bool modified=false)
Constructor.
bool isActive(const lf::mesh::Entity &entity) const
All entities are regarded as active.
Eigen::MatrixXd Eval(const lf::mesh::Entity &entity) const
Compute the element matrix for some entity of a mesh.