Extend global basis tests
This extends the global basis check checkBasis()
by incorporating the check for zero-basis functions
and adding a check for continuity of basis functions across intersections. The continuity check first
matches inside and outside DOFs on an intersection via their global indices. Then it performs a local
check which can be customized:.
- You can enable a continuity check by passing
EnableContinuityCheck()
tocheckBasis()
. - The default is checking if the norm of the jump is zero (this is simple continuity).
- By deriving from
EnableContinuityCheck
and overloadinglocalContinuityCheck()
this can be customized. - A simple form of customization is to implement
localContinuityCheck()
usinglocalJumpContinuityCheck()
which allows to compute other pointwise jump-expressions like, e.g., the normal jump. - Full customization is possible by a hand-crafted implementation of
localContinuityCheck()
. This e.g. allows to check continuity in edge midpoints only. - A checking for the normal jump is implemented in
EnableNormalContinuityCheck
(but not tested so far).