摘要
基于Boussinesq方程的波浪数学模型主要用来模拟水波在近岸浅水区的非线性变形,被广泛应用于海岸工程中。近几十年来,其数学模型本身和数值求解方法都得到了很大的发展。但是,这也使得求解此模型的计算量增大。单个处理器由于计算速度、内存以及存储空间的限制,已经不能满足工程实际计算的需要。本文基于这一实际情况,提出Boussinesq方程的一个区域分解并行算法。
本文首先回顾了Boussinesq方程在色散性、非线性和浅化性方面的改进,以及并行算法在CFD领域的发展及应用,并对并行算法的分类、并行程序性能评价方法及MPI作了介绍。在提出并行算法之前,本文先介绍了所选用的Boussinesq方程模型、方程的差分格式、数值造波方法、边界处理方法以及串行算法求解过程。
本文的并行算法采用了区域分解法,x方向计算时采用有重叠的区域划分,y方向计算时采用无重叠的区域划分,并通过Schwarz迭代法实现子区域之间的耦合。由于两个方向计算时都沿同一方向划分,避免了计算时不断进行方向的转换。对三个典型物理模型试验的模拟结果表明并行计算结果与串行计算结果吻合得很好,和试验结果一致,由此验证并行算法的正确性。本文还分析了该并行算法的加速比和效率,并讨论了重叠区域大小对计算时间的影响。
The numerical models based on Boussinesq equations could simulate nonlinear wave deformations in coastal shallow waters. So such models have been widely used in coastal engineering. In recent decades, there has been a great improvement in Boussinesq equation and discrete scheme. At the same time, however, it makes model solving more complicated, and increases the amount of computation. Singer-processor computers can not meet the need of practical engineering computation with their limit on the processing speed and the size of local memory and storage. For this reason, a domain decomposition method for solving Boussinesq equation parallelly is proposed in this paper.
Firstly, in this paper, the improvement of dispersive property, dissipative property, shoaling for the Boussinesq type equations, and the development of parallel methods in CFD are reviewed. Then, classification of parallel methods, performance analysis methods, and MPI are introduced. In order to propose the parallel method, some introduction about the model considered in this paper, finite difference scheme, method of wave generation, treatment of boundary and the process of serial simulation are described.
In this paper, domain decomposition method is adopted for the parallel strategy, and subdomains are coupled with each other through Schwarz iterations. The global solution domain is partitioned into several overlapping subdomains in x direction computation, while partitioned into several non-overlapping subdomains in y direction computation. However, in both direction computations, partioning is carried out along only one dirction, which makes direction changing is avoided. The parallel strategy proposed in paper is used to simulate three experimental models. Comparion between parallel results, serial results and experimental data shows that parallel model tallies closely with serial model, and both of them agree with experimental data, which means that the parallel strategy is correct. Speedup and efficiency of the parallel strategy, and the effect of the overlapping amount is also analyzed.
引文
[1] Peregrine D H, Long waves on a beach, Journal of Fluid Mechanics, 1967, 27(4): 815~827
[2] Witting J M, A numerical model for the evolution of non-linear water waves, J Comput Phys, 1984, 56: 203~236
[3] Madsen P A, Murray R and S?rensen O R, A new form of the Boussinesq equations with improved linear dispersion characteristics, Coastal Engineering, 1991, 15: 371~388
[4] Madsen P A, S?rensen O R, A new form of the Boussinesq equations with improved linear dispersion characteristics, Part 2, A slowly-varying bathymetry, astal Engineering, 1992, 18: 183~204
[5] Sch?ffer H A, Madsen P A, Further enhancements of Boussinesq-type equations, Coastal Engineering, 1995, 26: 1~14
[6] Nwogu O, Alternative form of Boussinesq equations for nearshore wave propagation, Journal of Waterway, Port, Coastal and Ocean Engineering, 1993, 119(6): 618~638
[7] Gobbi M F, Kirby J T, A fourth order Boussinesq-type wave model, Coastal Engineering, 1996, 87: 1116~1129
[8] Wei G, Kirby J T, Grilli S T and Subramanya R, A fully nonlinear Boussinesq model for surface waves, Part 1, Highly nonlinear unsteady waves, J. Fluid Mech., 1995, 294: 71~92
[9] Gobbi M F, Kirby J T, A fourth order Boussinesq-type wave model, Coastal Engineering, 1996, 87: 1116~1129
[10] Madsen P A, Banijamali B and Sch?ffer H A, Boussinesq type equations with high accuracy in dispersion and nonlinear, Coastal Engineering, 1996, 8: 95~109
[11] Madsen P A, Binggham H B, and Liu H, A new Boussinesq method for fully nonlinear waves from shallow to deep water, J. Fluid Mech., 2002, 462: 1~30
[12] Lonsdale G, Schüller A, Multigrid efficiency for complex flow simulation on distributed memory machines, Parallel Computing, 1993, 19: 23~32
[13] Basu A J, A parallel algorithm for spectral solution of the three-dimensional Navier-Stokes Equation, Parallel Computing, 1994, 20: 1191~1204
[14] Twamiya T, Fukuda M, Nakamura T and Yoshida M, On the numerical wind tunnel(NWT) program, Parallel Computational Fluid Dynamics:New Trends and Advances, 1995
[15] Lanteri S, Parallel solutions of compressible flow using overlapping and Non-overlapping mesh computing, 1996(22): 943~968
[16]吕晓斌,朱自强,李津,跨、超音速流动的区域分解方法与并行计算,航空学报,2000,21(4):322-325
[17]徐旭,张振鹏,喷管内流场并行计算方法研究,推进技术,1998,19(5):30-33
[18] Kashiyama K, Saitoh K, Behr M and Tezduyar T E, Parallel finite element methods for large-scale computation of storm surges and tidal flows, Int J for Numerical Methods in Fluids, 1997, 24: 1371~1389
[19]郑永红、游亚戈、沈永明等,缓坡地形上非线性波浪变形的并行计算,水科学进展,2003,14(3):328~332
[20] Cai X, Pedersen G K and Langtangen H P, A Parallel multi-subdomain strategy for solving Boussinesq water wave equations, Advances in Water Resources, 2005, 28: 215~233
[21] Sitanggang K I, Lynett P, Parallel computation of a highly nonlinear Boussinesq equation model through domain decomposition, Int. J. Numer. Meth. Fluids, 2005, 49: 57~74
[22] Lynett P, Liu P F, A two-layer approach to high order Boussinesq models, Journal of Fluid Mechanics, 1999, 399: 319~333
[23] Wu D M, Wu T Y, Three-dimensional nonlinear long waves due to moving surface pressure, In Proceedings of the 14th Symposium on Naval Hydrodynamatics, MI, USA, 1982, 103~129
[24]李晓梅,莫则尧,胡庆丰等,可扩展并行算法的设计与分析,北京:国防工业出版社,2000
[25]孙世新,卢光辉,张艳等,并行算法及其应用,北京:机械工业出版社,2005
[26]张林波,迟学斌,莫则尧等,并行计算导论,北京:清华大学出版社
[27]都志辉,李三立等,高性能计算之并行编程技术—MPI并行程序设计,北京:清华大学出版社, 2001
[28]张宝琳,袁国兴,刘兴平等,偏微分方程并行有限差分方法,北京:科学出版社,1999
[29]何有世,袁寿其,王大承,丛小青,计算流体力学(CFD)中的迭代法及其并行计算方法,中国安全科学学报,2006,12(3):42~45
[30]吴建平,王正华,李晓梅,稀疏线性方程组的高效求解与并行计算,长沙:湖南科学技术出版社,2004
[31]吕涛,石济民,林振宝,区域分解算法—偏微分方程数值解新技术,北京:科学出版社,1999
[32]康立山,全惠云,数值解高微偏微分方程的分裂法,上海:上海科学技术出版社,1990
[33]袁光伟,杭旭登,热传导方程基于界面修正的迭代并行计算方法,数值计算与计算机应用,2006,1:67~80
[34]钦文婷, Boussinesq方程数学模型的改进及其工程应用:[硕士学位论文],天津:天津大学,2003
[35] Berkhoff J C W, Booy N, Radder A C, Verification of numerical wave propagation models for simple waves. Coastal Engineering, 1982, 6: 255~279
[36] Kirby J T, Dalrymple R A, Verification of a parabolic equation for propagation of weakly-nonlinear waves, Coastal Engineering, 1984, 8: 219~232
[37] Akira W, Kohki M, Numerical modeling of nearshore wave field under combined refraction,diffraction and breaking, Coastal Engineering In Japan, 1986, 29: 19~39
[38]陶建华,夏中华,吴岩等,不规则波折射绕射综合数值模拟,天津大学力学系,1994
[39]陶建华,水波的数值模拟,天津:天津大学出版社,2005
[40] Peregrine D H, Long waves on a beach, Journal of Fluid Mechanics, 1967, 27(4): 815~827