Skip to content

It’s all in the numbering – mesh renumbering may improve simulation speed

This monthly mesh we refer readers to our guest blog “It’s all in the numbering – mesh renumbering may improve simulation speed”, published on Another Fine Mesh.

We all know that the mesh plays a vital role in CFD simulations. Yet, not many realize that renumbering (ordering) of the cells in the Finite Volume Method (FVM) can affect the performance of the linear solver and thus the speed of the simulation. In some circumstances, a poorly numbered mesh may result in solver divergence and failure of the simulation. In the guest blog, we use Pointwise and OpenFOAM® to illustrate the effect of mesh renumbering on the matrix structure.

Why renumber mesh?

The goal of mesh renumbering is to reduce the matrix bandwidth and profile. There are many sparse matrix renumbering strategies, with the most commonly used in CFD being the Cuthill-McKee.

Most CFD solvers either renumber the mesh without user intervention or provide an application for the user to renumber the mesh manually. OpenFOAM has an application called renumberMesh that reduces the bandwidth and profile of the coefficient matrices by renumbering the cell label list.

Pointwise stores the mesh internally in a format and numbering that is efficient for mesh generation. This numbering does not necessarily result in a low bandwidth or profile matrix upon export.

Mesh renumbering structured mesh

This case is a simple structured mesh, as shown in Figure 1. The initial bandwidth and profile reported from renumberMesh (OpenFOAM v2006) were 7 and 300, respectively.

Simple structure mesh.
Simple structured mesh (Figure 1)

Before Renumbering

Plotting the matrix sparsity pattern (nonzero entries) allows visual inspection of the effect of matrix bandwidth and profile reduction (see Figure 2). A visualisation of the matrix sparsity for the simple structured mesh example before renumbering exhibits diagonal banding.

Simple structured mesh sparsity pattern before renumbering.
Matrix sparsity pattern for simple structure mesh as exported from Pointwise (Figure 2).

After Renumbering

Figure 3 shows the sparsity pattern for the renumbered simple structure mesh after the application of the Cuthill-McKee renumbering method. In this case, the matrix bandwidth remains unchanged, but the profile was reduced by 18.3% to 245. This mesh renumbering may improve simulation speed.

Simple structured mesh sparsity pattern after renumbering.
Matrix sparsity pattern for simple structure mesh after renumbering with Cuthill-Mckee (Figure 3).

We have shown the importance of renumbering using meshes exported from Pointwise. Meshes generated natively in OpenFOAM, from applications such as blockMesh, snappyHexMesh and cfMesh should also be renumbered.

Want to give it a go yourself?

Request a Pointwise free trial see link below.

In case you missed our other blogs, see here.

Thanks for reading, the next edition will be in November. Until then, happy meshing!

Monthly Mesh
1. Cricket bat meshing
2. Twin box bridge deck meshing
3. Golf Driver Meshing
4. Frigate Helipad Pointwise unstructured mesh
5. Frigate Helipad – Structured O-H mesh
6. Horizontal wind turbine near a bridge
7. Meshing a Raspberry Pi
8. Scripting Pointwise Meshing
9. 2D meshing with sources in Pointwise
10. Pointwise as a Pre-processor for CFD
11. Mesh Adaption with Caelus and Pointwise
12. Meshing Santa’s Pod Racer Sled
13. Scripting Structured-Unstructured Meshes for Aerospace
14. Mesh Adaptation With Pointwise, Caelus & Python
15. Normal Extrusion Hybrid Meshes for Multi-Element Airfoils
16. Car park Ventilation CFD with Pointwise, Caelus, CFX and FDS
17. Mesh Independence for Car Park Ventilation
18. It’s all in the numbering – mesh renumbering may improve simulation speed
19. Voxel Transition Cell Recombination for OpenFOAM meshes
20. Meshing Santa’s Hat
21. 2D Sources in Meshes in Pointwise 18.4R1
Back To Top