It seems the firedrake 2026 version is using a new function to create the rectangle mesh:
plex = PETSc.DMPlex().createBoxMesh(
(nx, ny),
lower=(originX, originY),
upper=(Lx, Ly),
simplex=False,
interpolate=True,
comm=comm
)
This is different from 2025 version:
return TensorRectangleMesh(
xcoords,
ycoords,
quadrilateral=quadrilateral,
reorder=reorder,
...
)
I believe this change is creating an interpolation in the vp grid, changing the segy velocity model. This subtle change is making Gmsh or even other meshers create 2 different meshes with different number of elements. This is another reason the test is failing.
A troubleshoot must be done to compare the final state of the velocity model when the segy is treated by the function rectangleMesh
It seems the firedrake 2026 version is using a new function to create the rectangle mesh:
plex = PETSc.DMPlex().createBoxMesh(
(nx, ny),
lower=(originX, originY),
upper=(Lx, Ly),
simplex=False,
interpolate=True,
comm=comm
)
This is different from 2025 version:
return TensorRectangleMesh(
xcoords,
ycoords,
quadrilateral=quadrilateral,
reorder=reorder,
...
)
I believe this change is creating an interpolation in the vp grid, changing the segy velocity model. This subtle change is making Gmsh or even other meshers create 2 different meshes with different number of elements. This is another reason the test is failing.
A troubleshoot must be done to compare the final state of the velocity model when the segy is treated by the function rectangleMesh