EquilibratedFlux.jl

Author aerappa
Popularity
2 Stars
Updated Last
4 Months Ago
Started In
October 2023

EquilibratedFlux.jl

Stable Dev Build Status

This package is based on Gridap.jl to provide post-processing tools to calculate reconstructed fluxes associated to the given approximate solution of a PDE.

For simplicity, we consider here the Poisson equation

$$\begin{align} - \Delta u &= f &&\text{in }\Omega\\\ u &= g &&\text{on }\partial\Omega. \end{align}$$

We suppose we have already computed a conforming approximation $u_h \in V_h\subset H^1_0(\Omega)$ to the solution $u$ in Gridap.jl by solving

$$(\nabla u_h, \nabla v_h) = (f, v_h)\quad\forall v_h\in V_h,$$

The EquilibratedFlux.jl library then provides the tools to compute a reconstructed flux associated to $u_h$. This flux, obtained by postprocessing, is an approximation to the numerical flux, i.e.

$$\sigma_h \approx -\nabla u_h.$$

This flux has the important property of being "conservative over faces" in the sense that

$$\sigma_h \in \mathbf{H}(\mathrm{div},\Omega).$$

We provide two functions to obtain such an object: build_equilibrated_flux and build_averaged_flux both provide reconstructed fluxes, which we denote by $\sigma_{\mathrm{eq},h}$ and $\sigma_{\mathrm{ave},h}$ respectively.

In addition to the properties listed above, the equilibrated flux $\sigma_{\mathrm{eq},h}$ satisfies the so-called equilibrium condition, i.e., for piecewise polynomial $f$, we have

$$\nabla\cdot\sigma_{\mathrm{eq},h} = f.$$

More details can be found in the documentation.

Examples / Tutorials

Error estimation

The reconstructed flux is the main ingredient in computing a posteriori error estimators.

Mesh refinement

Estimators obtained using the equilibrated flux can be used to drive an Adaptive Mesh Refinement (AMR) precedure, demonstrated here for the Laplace problem in an L-shaped domain.

Used By Packages

No packages found.