Dear all,
I need to interpolate a function on a new mesh with different topology (I add nodes on the boundary), but I get a bad access
error. Maybe I've made an error in my code:
mesh.update(newNode);
dolfin::Timer t1("interpolate");
t1.start();
elasticity::FunctionSpace VV(mesh.object); // On the new mesh
dolfin::Function uu(VV);
uu.interpolate(u); // <------ u is on the old mesh: BOOM!
t1.stop();
printf("interpolate %g\n", t1.value());
Is it possible, or must the meshed meet some requirements? The documentation says:
void interpolate(const GenericFunction& v)
Interpolate function (on possibly non-matching meshes)
It works if I refine the mesh, but not if I change its topology.
Thanks!