32 std::vector<unsigned int>
35 std::vector<unsigned int>
dpo(dim + 1);
62 std::vector<Point<dim>>
68 std::vector<Point<dim>> points =
fe_p.get_unit_support_points();
70 const auto reference_cell =
fe_p.reference_cell();
88 for (
const auto &
face_no : reference_cell.face_indices())
92 reference_cell.face_reference_cell(0).vertex_indices())
95 reference_cell.face_to_cell_vertices(
105 reference_cell.face_reference_cell(0).n_vertices();
122 std::vector<Point<0>>
125 std::vector<Point<0>> points;
126 points.emplace_back();
136 const auto reference_cell = ReferenceCells::get_simplex<dim>();
139 auto M = [](
const unsigned int d) {
159 for (
const auto &vertex : reference_cell.vertex_indices())
173 for (
const auto &
face_no : reference_cell.face_indices())
177 reference_cell.face_reference_cell(0).vertex_indices())
178 vertices.push_back(reference_cell.face_to_cell_vertices(
204 std::vector<BarycentricPolynomial<dim>>
lump_polys;
205 for (
unsigned int i = 0; i <
fe_p.n(); ++i)
209 for (
unsigned int j = 0;
j < n_bubbles; ++
j)
228 for (
unsigned int d = 0; d < dim; ++d)
256 ReferenceCells::get_simplex<dim>(),
265template <
int dim,
int spacedim>
267 const unsigned int degree)
275 , approximation_degree(degree)
280template <
int dim,
int spacedim>
285 "(" + std::to_string(approximation_degree) +
")";
290template <
int dim,
int spacedim>
291std::unique_ptr<FiniteElement<dim, spacedim>>
294 return std::make_unique<FE_SimplexP_Bubbles<dim, spacedim>>(*this);
298#include "fe_simplex_p_bubbles.inst"
static BarycentricPolynomial< dim, Number > monomial(const unsigned int d)
static BarycentricPolynomials< dim > get_fe_p_basis(const unsigned int degree)
FE_SimplexP_Bubbles(const unsigned int degree)
virtual std::unique_ptr< FiniteElement< dim, spacedim > > clone() const override
virtual std::string get_name() const override
const unsigned int degree
static constexpr unsigned char default_combined_face_orientation()
#define DEAL_II_NAMESPACE_OPEN
#define DEAL_II_NAMESPACE_CLOSE
static ::ExceptionBase & ExcNotImplemented()
#define Assert(cond, exc)
static ::ExceptionBase & ExcInternalError()
BarycentricPolynomials< dim > get_basis(const unsigned int degree)
std::vector< Point< dim > > unit_support_points(const unsigned int degree)
std::vector< unsigned int > get_dpo_vector(const unsigned int degree)
std::vector< Point< 0 > > unit_support_points< 0 >(const unsigned int)
FiniteElementData< dim > get_fe_data(const unsigned int degree)
std::string dim_string(const int dim, const int spacedim)
::VectorizedArray< Number, width > abs(const ::VectorizedArray< Number, width > &)