Class template Dune::GDT::ContinuousLagrangeSpace¶
Inherits from Dune::GDT::SpaceInterface.
-
template<class GV, size_t r = 1, class R = double>
class Dune::GDT::ContinuousLagrangeSpace<GV, r, R> : public SpaceInterface<GV, r, 1, R>¶ The following dimensions/orders/elements are tested to work:
1d: orders 1, 2 work - 2d: orders 1, 2 work on simplices, cubes and mixed simplices and cubes - 3d: orders 1, 2 work on simplices, cubes, prisms
The following dimensions/orders/elements are tested to fail:
3d: pyramids (jacobians seem to be incorrect) - 3d: mixed simplices and cubes (intersections are non-conforming)
Note
Order > 2 on non-cube grids (in d >= 2) is a hard, currently unresolved contract limit, not a missing overload: ContinuousMapper::global_index() throws Dune::NotImplemented in that case (see the comment there). The root cause is that order >= 3 Lagrange elements place more than one DoF on a shared sub-entity (e.g. two DoFs on one edge), and the mapper has no canonical, grid-independent way of telling whether the local numbering of those DoFs agrees between the two elements sharing the sub-entity; on cube grids (YaspGrid, cube-ALUGrid, UGGrid) the local numbering happens to always agree, but not on simplicial grids in general. Fixing this needs a consistent sub-entity orientation scheme threaded through the local finite element’s DoF numbering, which is a mapper-level feature, not something
ContinuousLagrangeSpaceitself can route around. This boundary (order < = 2 on simplices vs. order < = 3 on cubes) is encoded as a tested contract inpython/gdt/test/test_hypothesis_spaces.py(_cg_orders), so that a future fix in the mapper is picked up by the property tests without any test needing to change.See also:
make_local_lagrange_finite_element,ContinuousMapper
Method Dune::GDT::ContinuousLagrangeSpace::operator=¶
-
template<class GV, size_t r = 1, class R = double>
ThisType &Dune::GDT::ContinuousLagrangeSpace<GV, r, R>::operator=(const ThisType&) = delete¶ No documentation provided.
Method Dune::GDT::ContinuousLagrangeSpace::operator=¶
-
template<class GV, size_t r = 1, class R = double>
ThisType &Dune::GDT::ContinuousLagrangeSpace<GV, r, R>::operator=(ThisType&&) = delete¶ No documentation provided.
Method Dune::GDT::ContinuousLagrangeSpace::copy¶
-
template<class GV, size_t r = 1, class R = double>
BaseType *Dune::GDT::ContinuousLagrangeSpace<GV, r, R>::copy() const final¶ No documentation provided.
Method Dune::GDT::ContinuousLagrangeSpace::grid_view¶
-
template<class GV, size_t r = 1, class R = double>
const GridViewType &Dune::GDT::ContinuousLagrangeSpace<GV, r, R>::grid_view() const final¶ No documentation provided.
Method Dune::GDT::ContinuousLagrangeSpace::mapper¶
-
template<class GV, size_t r = 1, class R = double>
const MapperType &Dune::GDT::ContinuousLagrangeSpace<GV, r, R>::mapper() const final¶ No documentation provided.
Method Dune::GDT::ContinuousLagrangeSpace::basis¶
-
template<class GV, size_t r = 1, class R = double>
const GlobalBasisType &Dune::GDT::ContinuousLagrangeSpace<GV, r, R>::basis() const final¶ No documentation provided.
Method Dune::GDT::ContinuousLagrangeSpace::finite_elements¶
-
template<class GV, size_t r = 1, class R = double>
const LocalFiniteElementFamilyType &Dune::GDT::ContinuousLagrangeSpace<GV, r, R>::finite_elements() const final¶ No documentation provided.
Method Dune::GDT::ContinuousLagrangeSpace::type¶
Method Dune::GDT::ContinuousLagrangeSpace::min_polorder¶
-
template<class GV, size_t r = 1, class R = double>
int Dune::GDT::ContinuousLagrangeSpace<GV, r, R>::min_polorder() const final¶ No documentation provided.
Method Dune::GDT::ContinuousLagrangeSpace::max_polorder¶
-
template<class GV, size_t r = 1, class R = double>
int Dune::GDT::ContinuousLagrangeSpace<GV, r, R>::max_polorder() const final¶ No documentation provided.
Method Dune::GDT::ContinuousLagrangeSpace::continuous¶
-
template<class GV, size_t r = 1, class R = double>
bool Dune::GDT::ContinuousLagrangeSpace<GV, r, R>::continuous(const int diff_order) const final¶ No documentation provided.
Method Dune::GDT::ContinuousLagrangeSpace::continuous_normal_components¶
-
template<class GV, size_t r = 1, class R = double>
bool Dune::GDT::ContinuousLagrangeSpace<GV, r, R>::continuous_normal_components() const final¶ No documentation provided.
Method Dune::GDT::ContinuousLagrangeSpace::is_lagrangian¶
-
template<class GV, size_t r = 1, class R = double>
bool Dune::GDT::ContinuousLagrangeSpace<GV, r, R>::is_lagrangian() const final¶ No documentation provided.
Method Dune::GDT::ContinuousLagrangeSpace::update_after_adapt¶
-
template<class GV, size_t r = 1, class R = double>
void Dune::GDT::ContinuousLagrangeSpace<GV, r, R>::update_after_adapt() final¶ No documentation provided.
Constructor Dune::GDT::ContinuousLagrangeSpace::ContinuousLagrangeSpace<GV, r, R>¶
-
template<>
template<class GV, size_t r = 1, class R = double>
Dune::GDT::ContinuousLagrangeSpace<GV, r, R>::ContinuousLagrangeSpace<GV, r, R>(GridViewType grd_vw, const int order, const std::string &logging_prefix, const std::array<bool, 3> &logging_state = XT::Common::default_logger_state())¶ No documentation provided.
Constructor Dune::GDT::ContinuousLagrangeSpace::ContinuousLagrangeSpace<GV, r, R>¶
Constructor Dune::GDT::ContinuousLagrangeSpace::ContinuousLagrangeSpace<GV, r, R>¶
Field Dune::GDT::ContinuousLagrangeSpace::grid_view_¶
-
const GridViewType Dune::GDT::ContinuousLagrangeSpace::grid_view_¶
No documentation provided.
Field Dune::GDT::ContinuousLagrangeSpace::fe_order_¶
-
const int Dune::GDT::ContinuousLagrangeSpace::fe_order_¶
No documentation provided.
Field Dune::GDT::ContinuousLagrangeSpace::min_polorder_¶
-
int Dune::GDT::ContinuousLagrangeSpace::min_polorder_¶
No documentation provided.
Field Dune::GDT::ContinuousLagrangeSpace::max_polorder_¶
-
int Dune::GDT::ContinuousLagrangeSpace::max_polorder_¶
No documentation provided.
Field Dune::GDT::ContinuousLagrangeSpace::local_finite_elements_¶
-
int Dune::GDT::ContinuousLagrangeSpace::local_finite_elements_¶
No documentation provided.
Field Dune::GDT::ContinuousLagrangeSpace::mapper_¶
-
int Dune::GDT::ContinuousLagrangeSpace::mapper_¶
No documentation provided.
Field Dune::GDT::ContinuousLagrangeSpace::basis_¶
-
int Dune::GDT::ContinuousLagrangeSpace::basis_¶
No documentation provided.
Type alias Dune::GDT::ContinuousLagrangeSpace::ThisType¶
-
type Dune::GDT::ContinuousLagrangeSpace::ThisType¶
No documentation provided.
Type alias Dune::GDT::ContinuousLagrangeSpace::BaseType¶
-
type Dune::GDT::ContinuousLagrangeSpace::BaseType¶
No documentation provided.
Type alias Dune::GDT::ContinuousLagrangeSpace::MapperImplementation¶
-
type Dune::GDT::ContinuousLagrangeSpace::MapperImplementation¶
No documentation provided.
Type alias Dune::GDT::ContinuousLagrangeSpace::GlobalBasisImplementation¶
-
type Dune::GDT::ContinuousLagrangeSpace::GlobalBasisImplementation¶
No documentation provided.