Suppose we are trying to compute an integral-based edge interpolant on a 3D domain. We would have to solve the following system.
Given $u_0$, find $u$ in the lowest order Nedelec $H(curl)$ of the 1st kind such that $$\langle (u - u_0) \cdot t, v \rangle_{edge} = 0$$ for any $v \in DG_0(edge)$, where $t$ is the unit tangent to each edge.
However...
- It is not clear how to define Measure(edge), nor tangent $t$.
- To define, $DG_0(edge)$, we attempted to use FunctionSpace(Restriction(mesh, domain, "edge"), DG, 0), but this is not yet supported.
- We could try FunctionSpace(mesh, "N2curl", 1, "edge") with $v \cdot t$ in place of $v$ in the system.
In application, this kind of interpolant inside a system appears in systems like the Reissner-Mindlin equations. The case of facet however has been resolved in 1. A good enough approach would be to simply use interpolate() on a trial and a test function, but FEniCS does not allow that.