I have discovered an issue when trying to use to avg and jump operators with expressions for the initial conditions in a DG problem. dolfin version ==2019.2.0.dev0

I have been unable to correctly define the expression on both sides of the facet - one side is always ~0. For example:

from fenics import *
mesh = UnitIntervalMesh(10)
V = FunctionSpace(mesh, 'DG', 1)
f = Expression('1', element = V.ufl_element())
# f = interpolate(f, V) #problem persists with or without interpolation step, which I have seen in other codes
print(project(avg(f), mesh=mesh).vector().get_local())
# prints list of 0.5s, but should print list of 1s as f=1 on both sides of each facet

The projection operation youâ€™re proposing doesnâ€™t make sense for an operator (avg(.)) defined on facets only. Iâ€™d suggest you construct your own projection operation as you require.

I am trying to debug a numerical flux made up of a combination of avg() and jump() operators. Erroneously, Iâ€™ve been using project() as a way to evaluate the result and observe the values at the facets. Is there a more correct way of doing this? (avg(f) is a Product object)