Hello,

In Fenics/Dolfin, I can interpolate between different meshes, even with less basic elements like Raviart-Thomas.  For example:

from fenics import *
mesh1 = UnitSquareMesh(1,1)
mesh2 = UnitSquareMesh(2,2)
V1 = FunctionSpace(mesh1,'RT',1)
V2 = FunctionSpace(mesh2,'RT',1)
u = Expression(('x[0] + 1','x[1]'),degree = 1)
U = interpolate(u,V1)
Uf = interpolate(U,V2)

Interpolating the function 'U' that is defined on one mesh can be moved to another in a fairly simple matter.

Trying something similar in Firedrake with 'project' instead of 'interpolate' results in an error message.  A different error appears for nodal FE functions as well, when using 'interpolate'.  However, in that case, I have developed a work-around using mesh.coordinates.dat.data.  However, I can't see how to extend this to nodal DG or Raviart-Thomas FE functions.  

Can you access the coordinates of the degrees of freedom of an arbitrary function space?  Barring that, is there some mechanism to move between meshes if I use a MeshHierarchy, for example?

Thanks,

Peter Sentz