Skip to content

Add a GeometryType cache for lagrange local finite elements

Simon Praetorius requested to merge feature/lagrange-geometrytype-caches into master


Some cache implementations to allow the construction of local finite-elements on grids with variable GeometryType. The implementation follows the generic LocalFiniteElementVariantCache interface and provides a FiniteElement const& get(Geometry type) method, as well as a typedef FiniteElement. Three (two new) implementations are provided: DynamicLagrangeLocalFiniteElementCache, StaticLagrangeLocalFiniteElementCache and a FixedGeometryTypeLagrangeFiniteElementCache. The latter additionally makes use of the fact that the grid might have only single geometry types, and thus returns only the corresponding Lagrange local finite-element but fulfills the same interface as the other two caches. The static cache was already implemented in the lagrangelfecache.hh and is included for completeness here, with an alias to distinguish it from the dynamic-order case.

Merge request reports