HowTo Import a fluent mesh with interfaces
The purpose of this short HowTo is to explain the few steps that are necessary in order to read a fluent mesh that contains interfaces.
2 How is it doneA mesh with an interface is a mesh containing two overlapping surfaces that do not necessary share the same discretization nodes, as seen in Figure 1.
To convert such a mesh, just use fluentMeshToFoam utility. Let consider the current case, where an "inlet", an "outlet" and two interface "interface_coarse" and "interface_fine" boundaries are defined. The rest of the boundaries are considered walls.
fluentMeshToFoam ./ test_interfaces test_interface/geometry/test_interface.msh
Once imported, the mesh consists of actually two separated volumes by the interface_fine and interface_coarse surfaces. The second step is to stitch the meshes by splitting the faces of the two interfaces creating polyhedral cells, so they match each other face to face and node to node:
stitchMesh ./ test_interfaces interface_fine interface_coarse
Now the mesh looks something like in Figure 2. Note that the post-processor (in this case OpenDX), does not know how to plot polyhedra so all the cells that are not tetrahedra or hexahedra are virtually split into tetrahedra only for visualisation purposes, though the mesh inside OpenFOAM is still containing the polyhedral cells.
The utility will preserve also the original patches as boundaries, but since they are no longer needed, they can be safely deleted from the polyMesh/boundary file.
The sources of the test case can be downloaded from: test_interfaces