This requires a working patch in fe_interface_values.h that I've not opened yet upstream, but allows one to remove the "classical" computation of jumps and averages with local matrices in favor of an FEInterfaceValues object that walks over the union of interface dof indices.
In practice, this is how the contributions from internal faces look like now (objects are repeatedly constructed just for clarity's sake)
fe_interface_values.h
that I've not opened yet upstream, but allows one to remove the "classical" computation of jumps and averages with local matrices in favor of anFEInterfaceValues
object that walks over the union of interface dof indices. In practice, this is how the contributions from internal faces look like now (objects are repeatedly constructed just for clarity's sake)https://github.com/fdrmrc/AggloDeal/blob/b78c13a4f2d19a2e7aacaafa7c422b1ed4ef75a0/examples/minimal_SIP_FEInterfaceValues.cc#L369-L425
Tested with higher orders. FYI @luca-heltai