Unstructured vs. structured mesh models

It is commonly argued that unstructured meshes offer more geometrical flexibility, but for the price of being more expensive per degree of freedom than their structured-mesh counterparts. Refinement on structured meshes can be achieved through nesting or using orthogonal curvilinear meshes, so the acceptance of unstructured-mesh models by broader community depends on their numerical efficiency compared to the solutions available for structured meshes.

Recent advances in numerics of unstructured-mesh method lead to the conclusion that finite-volume unstructured mesh codes can be nearly as fast as regular mesh codes. On prismatic meshes and for the variable stored as two-dimensional arrays with vertical and horizontal extents the information on neighborhood or coefficients to compute derivatives is two-dimensional and can be reused for the entire vertical column. With current tendency of using 50-100 vertical layers in global ocean circulation models, the price of fetching the information related to unstructured mesh becomes negligible, and will be even less so in future.

Unstructured meshes still require more floating-point operations when it comes to high-order transport schemes. Commonly used triangular meshes involve more faces (edges) than quadrilateral meshes. Factors like these are the reason why the newly developed unstructured mesh codes (FESOM2.0, MPAS-ocean, ICON-ocean) are still slightly slower per degree of freedom than structured mesh codes. Given their good scalability on large parallel machines, it is expected that they would provide comparable throughput.

Some examples (SYPD is simulated years per day):

HR mesh (1.3M surface points, 47 layers):   6 SYPD on 2400 cores (time step 10 min)

XR mesh (5M surface points, 47 layers):  1.5-2 SYPD on 7000 cores (time step 4.5 min)

Global/4.5 km Arctic (0.6M surface points, 47 layers): 6 SYPD on 1800 cores (time step 10 min)

15 km global mesh (2M surface points, 47 layers)  17 SYPD on 1728 cores (time step 15 min)

8 km NA and Arctic (2M surface points, 47 layers) 12 SYPD on 1728 cores (time step 10 min)

4 km NA and Arctic (6M surface points, 47 layers) 2 SYPD on  1728 cores (time step 5 min)

For comparison: 6M is the number of wet points on a 1/10 quasi-Mercator structured mesh.