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, str): if args in ('+', '-'): return ufl.Coefficient.__call__(self, *args) # Test for ufl mapping if len(args) == 2 and isinstance(args, dict) and self in args: 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!