Enosh, a structured grid generator (IV)


I have made significant improvement on the mesh export. The manual building up of OpenFOAM mesh now turns up really fast. I got a feeling that it could possibly beat even OpenFOAM’s native blockMesh generator. In my test of a \(3,200,000\) mesh (for flow around a square cylinder). The building process took \(90.51\)s in total. Here are more details:

...... [1] Done assembling the points. ( 7.09000s)
...... [2] Done assembling all cells & intnl cntrs. ( 40.62000s)
...... [3] Done treatment of cntrs and init o&nbs. ( 27.74000s)
...... [4] Done assembling boundary cntrs and info. ( 9.77000s)
...... [5] Done assembling faces. ( 1.29000s)
...... [6] Done assembling owners on frontAndBack. ( 0.23000s)
...... [7] Done face orientation correction. ( 3.77000s)

This is a very exciting progress. As in the old days, I have to wait for 10 minutes for just a \(24,000\) grid sized mesh. So the speed now scales roughly around \(O(N)\), which is way better than \(O(N \log N)\) or \(O(N^2)\).

The renumber (e.g., using Cuthill–McKee algorithm) is needed, but it is not a big deal at this moment.

As for a smaller mesh, using the same blocks as before (8 blocks around the square), \(240,000\) mesh size, it took:

...... [1] Done assembling the points. ( 0.53000s)
...... [2] Done assembling all cells & intnl cntrs. ( 2.60000s)
...... [3] Done treatment of cntrs and init o&nbs. ( 1.81000s)
...... [4] Done assembling boundary cntrs and info. ( 0.91000s)
...... [5] Done assembling faces. ( 0.10000s)
...... [6] Done assembling owners on frontAndBack. ( 0.01000s)
...... [7] Done face orientation correction. ( 0.28000s)

Leave a Reply

Your email address will not be published. Required fields are marked *