MERF v3.0, a highly computationally efficient non-hydrostatic ocean model with implicit parallelism: Algorithms and validation experiments. (November 2021) - Tang, Qiang; Huang, Xiaomeng; Lin, Lei; Xiong, Wei; Wang, Dong; Wang, Mingqing; Huang, Xing
Abstract: Non-hydrostatic ocean models are widely required in coastal and estuarine studies but are limited in their application due to their very high computational expense. To alleviate this issue, this study developed a highly computationally efficient non-hydrostatic ocean model named MERF v3.0 (the third version of the Marine Environment Research and Forecasting model) in which a semi-implicit and variable layers (SIVL) scheme is proposed for dynamic pressure calculation. The SIVL scheme provides freedom to choose the ratio between the number of dynamic pressure layers and the number of velocity layers as required. Moreover, the model adopted numerical calculation framework OpenArray and PETSc (Portable, Extensible Toolkit for Scientific Computation) to achieve implicit parallelism and a concise code structure. Five classical numerical experiments were performed to validate the simulation capacity of this non-hydrostatic ocean model, including the standing wave in a closed basin, surface solitary wave, lock-exchange problem, periodic wave over a bar and tidally induced internal lee wave. The numerical simulation results are consistent with the analytical solutions and experimental data published in the literature. Benefitting from the advantages of OpenArray and PETSc, MERF v3.0 achieves an 87.8% parallel efficiency in the strong scaling test and an 84.1% parallel efficiency in the weak scaling test on 3584 processes, whereas the OpenArray limits the parallel efficiency of MERF v3.0 on more processes, which is beyond the scope of this article and will be further examined in our next study. Highlights: A variable-layer scheme can improve the computational efficiency of the model. The model based on OpenArray has implicit parallelism and a concise code structure. The model based on OpenArray has high parallel efficiency.