Mesh check in `make_same_mesh_connection` too strict?
@anderson2981 and @tulioricci have both run into errors in make_same_mesh_connection when restarting with different orders. Specifically, this check is failing:
if from_discr.mesh is not to_discr.mesh:
raise ValueError("from_discr and to_discr must be based on "
"the same mesh")
I suspect it's related to the mesh boundary tag relabeling that grudge does when constructing DiscretizationCollections. Strangely, though, changing the check condition to
if from_discr.mesh.groups is not to_discr.mesh.groups:
...
doesn't appear to help, so maybe something else is going on? (Edit: I don't think this would be correct anyway, since it wouldn't detect transformed meshes.)
This can be worked around for now by just commenting out the check, but I should take a closer look.
I had something in this direction here if it helps: https://github.com/alexfikl/meshmode/commit/6b35e06c98c32cae056a2648e33755e6540f701b
It mostly just checks that the structure of the discretizations is the same, but it doesn't have any special handling for transformed meshes. If you think it would be useful, I can open a PR.
I had something in this direction here if it helps: alexfikl@6b35e06
It mostly just checks that the structure of the discretizations is the same, but it doesn't have any special handling for transformed meshes. If you think it would be useful, I can open a PR.
#359 might be good enough for this particular issue; we'll see.