Page 98 - 《应用声学》2023年第1期
P. 98
94 2023 年 1 月
BELLHOP3D 模型应用广泛,且结构清晰,非
0 引言 常适合并行。本文使用 MPI 对 BELLHOP3D 进行
并行优化。第 1 节介绍射线法的理论,以及 BELL-
射线法 [1] 是一种常用的声场计算方法,它通过
HOP3D 的串行算法。第 2 节介绍本文对 BELL-
高频近似,将波动方程进行简化,然后使用较为简单
HOP3D 进行的并行优化,并给出对应算法。第 3
快捷的几何声学求解声线的轨迹,最后叠加求解声
节是数值实验,给出了有关精度和计算效率的结果。
场。常用的海洋声传播射线模型有 BELLHOP [2] 、
第 4 节是结论与讨论,分析了本文的局限性以及后
Eigenray [3] 、HWT_3D_mm [4] 和TRACEO [5] 等。
续的工作方向。
从 20 世纪 60 年代早期开始,射线法和简正波
法就是计算水下声场的主要方法。射线法的理论发 1 BELLHOP3D串行算法
展成熟,物理意义清晰,计算速度快,因此它有广泛
1.1 射线理论
的应用场景,如:水下声场快速预报、海洋声层析、匹
考虑三维波动方程
配场定位等水声领域。针对声影区和汇聚区声场计
2
1 ∂ p
2
算不准确的问题,Porter等 [2] 提出了高斯射线追踪 ∇ p − = 0. (1)
2
c ∂t 2
理论,使用高斯函数描述波束宽度与射线管宽度的 将简谐波解写成如下形式 [1] :
关系,解决了传统射线方法中声影区和会聚区声能
p(x, y, z, t) = A(x, y, z)e i[ωt−k(x,y,z)ϕ 1 (x,y,z)]
量不准确的问题和声束宽度设定的限制,有效地提
高了计算精度。相对简正波计算方法,它的优势在 = A(x, y, z)e i[ωt−k 0 ϕ(x,y,z)] , (2)
ω ω c 0
高频、远程情况。 其中,A 为振幅,k = = = k 0 n(x, y, z) 为波
c c 0 c
随着水声学研究的不断深入,实际应用对声场 数,c 0 为参考声速,n 为折射率,kϕ 1 = k 0 ϕ 为相位,
计算速度提出了越来越高的要求。同时计算机性能 ϕ(x, y, z) = nϕ 1 (x, y, z)的量纲为长度,称为程函。
的持续提升和并行计算技术的广泛应用,使学者们 将式(2)代入式(1)可以得到强度方程
有能力也有必要使用并行计算技术提升水下声场 2 2
∇ ϕ + ∇A · ∇ϕ = 0, (3)
的计算效率。 A
以及方程
近年来,有不少学者对常用的声场计算模
2
∇ A 2 2
型进行了并行优化。2009 年,王鲁军等 [6] 使用 − k ∇ϕ · ∇ϕ + k = 0. (4)
0
A
OpenMP 对抛物方程模型进行了优化;2011 年,陈 当 ∇ A/A ≪ k 时,且有 ∇ϕ · ∇ϕ = |∇ϕ| ,式 (4)
2
2
2
连荣等 [7] 使用信息传递接口 (Message passing in- 可近似写为
terface, MPI) 对二维射线模型 BELLHOP 进行了 2 2
|∇ϕ| = n (x, y, z), (5)
优化;2019 年,张朝金等 [8] 使用 OpenMP 对射线模
即为程函方程。之后,满足程函方程的声场可以用
型 BELLHOP 进行了优化;2019 年,Ulmstedt 等 [9]
射线来表示,射线的方向由折射率决定。可以通过
使用 GPU 对 BELLHOP 进行了加速。不过这些都
几何关系求解每一条射线的传播方式,然后进行求
是对二维声场计算模型进行的并行优化,而本文
和,从而求解声场。
并行后的 BELLHOP3D 模型可以用于高效计算三
维问题且可以在单台多核计算机上,或大规模计算 1.2 BELLHOP3D声场计算模型
机集群上运行,具有更好的可扩展性。对于三维模 BELLHOP3D [13] 求解射线方程可以由程函方
型,近几年也有一些研究,Calazan 等 [10] 对三维射 程,即式(5)通过简单的几何关系得到
线模型 TRACE3D 进行了并行优化;Zhu 等 [11] 使 dx = cξ(s), dξ = − 1 dc ,
2
ds ds c dx
用 OpenMP 和 MPI 对 Tang 等 [12] 的楔形海底三维
dy dη 1 dc
声场解析解计算程序进行了并行优化,但是这个计 = cη(s), = − 2 , (6)
ds ds c dy
算程序不具有通用性,本文对 BELLHOP3D进行并 dz dζ 1 dc
行优化,适用范围更广。 ds = cζ(s), ds = − c dz ,
2