Research Article
Generating Multibillion Element Unstructured Meshes on
Distributed Memory Parallel Machines
Algorithm 1
PMSH parallel mesh generation algorithm.
| () On all processors do | | () Load geometry | | () Generate coarse surface mesh for | | () Generate coarse volume mesh | | () Partition the coarse volume mesh into parts , | | () Extract coarse surface mesh faces for all partitions | | () Construct surface mesh from | | () Perform -level refinement of surface mesh to get fine surface mesh and record barycentric global IDs of each | | newly created vertex | | () Project new surface vertices in to the geometric boundary | | () Compute partition boundary vertex adjacencies to adjacent processors by using a map that uses barycentric global IDs | | as keys | | () Generate fine volume mesh from the fine surface mesh | | () Compute owners of partition boundary vertices held by adjacent processors (called holders) | | () Compute global integer IDs of owned vertices | | () Inform global integer IDs of the owned vertices to the holder processors by using barycentric global IDs as keys | | to locate the corresponding vertices on adjacent holder processors | | () Output fine volume mesh in OpenFOAM format | | () enddo |
|