Aims and Scope
FEniCSx by default supports most of the relevant parts for the design of adaptive finite element algorithms, such as mesh-independent form compilation, evaluating the (cell-wise) errors, refining the mesh and resolving the problem. Nevertheless, a comprehensive demo combining these features, as this was done in the legacy version as well as performant implementations of cell marking and interaction with (facet-based) refinement routines, is missing. This is also not covered by external demos including fenicsx-error-estimation or the FEniCSx tutorials
Planed features
As nearly every relevant error estimator is initially introduced for the Poisson problem, the demo will focus on the adaptive solution of a Poisson problem in both primal as well as mixed form. In order to keep the complexity of the actual error estimation low, residual-type error estimators (see e.g. Carstensen 1) are considered. The classical L-shaped domain or a unit square with varying coefficient 2 could serve as test problem.
Prerequisites
For the marking routines we suggest to implement in C++:
Convenience functionality to identify the closure of topological entities based on their connectivity to neighboring entities of different topological dimensions. This allows the conversion from cell-wise markers to an edge list or alike.
- A scalable implementation of the classical maximum strategy 3 and Doerfler marking 4 to demonstrate their different behavior
Aims and Scope
FEniCSx by default supports most of the relevant parts for the design of adaptive finite element algorithms, such as mesh-independent form compilation, evaluating the (cell-wise) errors, refining the mesh and resolving the problem. Nevertheless, a comprehensive demo combining these features, as this was done in the legacy version as well as performant implementations of cell marking and interaction with (facet-based) refinement routines, is missing. This is also not covered by external demos including fenicsx-error-estimation or the FEniCSx tutorials
Planed features
As nearly every relevant error estimator is initially introduced for the Poisson problem, the demo will focus on the adaptive solution of a Poisson problem in both primal as well as mixed form. In order to keep the complexity of the actual error estimation low, residual-type error estimators (see e.g. Carstensen 1) are considered. The classical L-shaped domain or a unit square with varying coefficient 2 could serve as test problem.
Prerequisites
For the marking routines we suggest to implement in C++:
Convenience functionality to identify the closure of topological entities based on their connectivity to neighboring entities of different topological dimensions. This allows the conversion from cell-wise markers to an edge list or alike.