Hello,
im currently looking for a way to restrict point integrals on DG functions like you can do for an interior surface integral dS by adding ("+") behind the expression.
When looking through the dolfin sourcecode i found this in dolfin/function/function.py:272 :
def __call__(self, *args, **kwargs):
if len(args) == 0:
raise TypeError("expected at least 1 argument")
# Test for ufl restriction
if len(args) == 1 and isinstance(args[0], str):
if args[0] in ('+', '-'):
return ufl.Coefficient.__call__(self, *args)
# Test for ufl mapping
if len(args) == 2 and isinstance(args[1], dict) and self in args[1]:
return ufl.Coefficient.__call__(self, *args)
I would guess that this is where the ‘+’ and the ‘-’ sign is considered for the first time when running an interior surface integral. But what im actually curious about is the second part, the mapping stuff. Unfortunately i havent found any documentation on what exactly this is and how to use it. I thought maybe this will allow me to supply some kind of dof map which i could use to restrict my point integral but maybe this is something completely different… Does anyone know more about this?
Thanks in advance!
Lukas