GPU探地雷达复杂介质DGTD正演方法转让专利
申请号 : CN202011102867.X
文献号 : CN112327374B
文献日 : 2021-10-26
发明人 : 杨军 , 冯德山 , 刘硕 , 王珣 , 张陆军 , 柳杰
申请人 : 广州市市政工程设计研究总院有限公司 , 中南大学
摘要 :
权利要求 :
1.一种GPU探地雷达复杂介质DGTD正演方法,包括如下步骤:S1.建立DGTD正演模型,并对模型进行初始化;
S2.将步骤S1建立的正演模型进行三角剖分,并设置基函数的阶次和节点;具体为采用如下步骤设置基函数的阶次和节点:A.基函数设置为正交的Legendre多项式;
B.二维情况下,采用如下算式作为标准三角形定义的N阶基函数:式中ξ为标准三角形I内节点的横坐标;η为标准三角形I内节点的纵坐标;(i,j)≥0,且i+j≤N; 为n阶Jacobi多项式,且当α1=β1=0时 为Legendre多项式;N为基函数阶次;a1和b1为Legendre多项式的变量,且 b1=η;
C.采用如下算式作为扭曲函数ω(r),并利用等间距节点和LGL节点来产生新的插值节点:
LGL
式中NP为节点的个数,且在二维情况下 ri 为第i个LGL节点;
m m
ri为第m个三角单元的第i个等距节点, 为基于ri的Lagrange多项式;r为新插值节点的位置;
S3.设置激励源和接收点的位置;
S4.计算正演所需要的参数,并开启GPU并行计算;
S5.开始时间积分;
S6.计算通量,并更新电磁场的场值;
S7.在UPML区域更新电磁场辅助场;
S8.增加时间步,并重复步骤S5~S7,直至完成整个时间步的模拟;
S9.数据输出;
S10.重复步骤S3~S9,直至所有激发完成,从而完成DGTD正演,得到最终的雷达剖面。
2.根据权利要求1所述的GPU探地雷达复杂介质DGTD正演方法,其特征在于步骤S3所述的设置激励源和接收点的位置,具体为采用如下步骤设置激励源和接收点的位置:在二维TM模式下,采用如下算式表示电流源项积分:式中Ωm为加载电流源的所属单元;Jz为加载的线电流源,且在z方向上加载线电流源时Jz=f(t)δ(x‑x0,y‑y0);f(t)为延时的雷克子波的波函数;上标T表示向量的转置, 为基函数在此单元节点上的值所组成的向量;(x0,y0)为源点的坐标;δ(x,y)为狄拉克函数。
3.根据权利要求2所述的GPU探地雷达复杂介质DGTD正演方法,其特征在于步骤S4所述的计算正演所需要的参数,并开启GPU并行计算,具体为在进行激励源激发,并求取场值之前,先根据已知的数据,计算得到DGTD正演所需要的参数;同时,将所有预先计算并得到的DGTD正演参数存入到GPU中,并进行后续场值的计算,从而对正演模型的模拟进行加速,节约计算时间。
4.根据权利要求3所述的GPU探地雷达复杂介质DGTD正演方法,其特征在于步骤S5所述的开始时间积分,具体为采用五级四阶低储存Runge‑Kutta 方法进行时间积分。
5.根据权利要求4所述的GPU探地雷达复杂介质DGTD正演方法,其特征在于步骤S6所述的计算通量,并更新电磁场的场值,具体为采用如下步骤计算通量并进行更新:a.通量采用迎风通量,并采用如下算式计算迎风通量:式中 为数值通量;上标‑表示单元内部信息;上标+表示单元外部信息;
为节点处的场值;为边界上的法线向量;α为保证整体稳定性的系数且取值范围为[0,1],同时当α=0时数值通量 转换为迎风通量;
b.采用如下算式进行DGTD更新式中ε为介电常数;σ为电导率;M为单元的质量矩阵且 Ez为z轴方向的电场值;Sx为x轴方向的单位刚性矩阵且 Sy为y轴方向的单位刚性矩阵且 Hx为x轴方向的磁场值;Hy为y轴方向的磁场值;F为边界单元矩阵且 κh、κe、ve和vh均为通量系数,且为Ωm边界处的外法向向量在x方向上的投影; 为Ωm边界处的外法向向量在y方向上的投影; 为基函数;上标+表示单元外部信息;εr为介质的相对介电常数;μr为相对磁导率;μ为磁导率。
6.根据权利要求5所述的GPU探地雷达复杂介质DGTD正演方法,其特征在于步骤S7所述的在UPML区域更新电磁场辅助场,具体为采用如下步骤进行更新:(1)采用如下算式表示时间域上引入了辅助场P、Q的UPML方程:式中上标‑1表示逆运算;κ、a、b、c和d均为对角张量,且κ=diag(κx,κy,κz),其中κi为改善PML对表面
波的吸收的参数,i取值为x,y或z;σi表示PML层内i方向的电导率,i取值为x,y或z;ε0为真空中的介电常数;
(2)在二维TM模式下,只有Hx、Hy、Ez三个分量,辅助电场P中Px=Py=0;辅助磁场Q中Qz=
0;
(3)采用DGTD算法来求解步骤(1)中的算式,得到二维TM模式下UPML区域的半离散强格式更新方程如下所示:
式中 Pz为辅助
电场P的z轴分量;
Qx为辅助磁场Q的x轴分量;
Qy为辅助磁场Q的y轴分量。
说明书 :
GPU探地雷达复杂介质DGTD正演方法
技术领域
背景技术
效率、直观结果和无损检测等各种优势,GPR已用于各种市政、地质、民用、地球物理和环境
应用中的近地表勘探。
促进GPR数据的解释,涉及不规则地质体或复杂介质的精细GPR正演模拟对于理解EM波的传
播,尤其是掌握EM回波的详细特征至关重要。
定的交变方向隐式时域有限差分(alternating direction implicit finite‑difference
time‑domain,ADI‑FDTD)算法也被开发了出来,专门用于GPR仿真,有效地改善了传统FDTD
算法的时间色散限制。为了降低时间限制,Zhang等将旋转交错网格(rotated staggered
grid,RSG)FDTD方法和未拆分卷积完美匹配层(unsplit convolutional perfect matched
layer,UCPML)相结合,实现了GPR仿真。但是,FDTD算法无法与非结构化网格很好地结合。电
磁波在具有不规则几何边界的地质体之间的传播本质上是一个非常复杂的过程,区分出正
确与错误的反射波仍然是一个难题。FETD方法将求解空间划分为一系列单元,利用插值函
数来代替解函数。FETD算法能与非结构网格结合,可以很好地拟合不规则地质体的边界。
出的。Hu等将DGTD算法应用到波的传播中,并开展了由空间离散化引起的误差分析。作为继
任者,许多其他学者开始将DGTD算法应用于电磁学。Bernacki等已经实现了基于非结构化
网格剖分的并行计算,大大减少了计算时间。将DGTD算法应用于GPR仿真时,截断边界的处
理是无限空间仿真的必要前提和关键问题。许多学者研究了DGTD算法的吸收边界条件
(absorption boundary conditions,ABC)。Kabakian将最简单的ABC吸收边界用于DGTD方
法;Xiao和Liu将PML吸收边界引入到DGTD算法中。此外,广泛使用的单轴PML(uniaxial
PML,UPML)也得到了改进,并应用于DGTD。在GPR模拟方面,Lu等推导了Debye色散材料在
UPML区域的Maxwell方程;Angulo等在简单的3D模型GPR仿真中使用DGTD算法,证明了该方
法的高度收敛性;Yang等使用具有正交四面体多项式基的高阶DGTD方法进行GPR仿真。
发明内容
项式;N为基函数阶次;a和b为Legendre多项式的变量,且 b=η。
新插值节点的位置。
基函数在此单元节点上的值所组成的向量;(x0,y0)为源点的坐标;δ(x,y)为狄拉克函数。
预先计算并得到的DGTD正演参数存入到GPU中,并进行后续场值的计算,从而对正演模型的
模拟进行加速,节约计算时间。
为[0,1],同时当α=0时数值通量 转换为迎风通量;
刚性矩阵且 Hx为x轴方向的磁场值;Hy为y轴方向的磁场值;F为边界
单元矩阵且 κh、κe、ve和vh均为通量系数,且
为Ωm边界处
的外法向向量在x方向上的投影; 为Ωm边界处的外法向向量在y方向上的投影; 为基函
数;上标+表示单元外部信息。
波的吸收的参数,i取值为x,y或z;σi表示PML层内i方向的电导率,i取值为x,y或z;ε0为真空
中的介电常数;
Qx为辅助磁场Q的x轴分量;
Qy为辅助磁场Q的y轴分量。
强格式而不是求解大型的刚度矩阵,并使用Runge‑Kutta时间积分方案,本发明方法可以有
效地克服内存不足的问题,进而解决了不稳定问题;此外,采用UPML进行了扩展以匹配有损
介质,并用作吸收边界条件来模拟开放空间;最后,本发明方法还探究了网格大小和基函数
阶次对所本发明方法的建模精度的详细影响,通过选取合适的网格和阶次,可以在保证精
度的同时,提高计算效率;因此,本发明方法具有高精度、能与非结构化网格结合、可用来模
拟复杂介质正演的优点,提高了雷达正演效率,能够更好的模拟复杂地质,而且兼顾了计算
效率和计算精度。
附图说明
具体实施方式
发明方法的标准三角形和一般三角形之间的映射关系;
基函数阶次;a和b为Legendre多项式的变量,且 b=η。
Guass‑Lobatto)节点来产生新的插值节点:
插值节点的位置。
出,新设置的节点会向三个顶点聚集,相对于等距节点,更加适合插值;相对于LGL节点,它
的分布更加均匀,求解场值时会更加准确
点上,将会有一定的误差;所以,本发明将采用形函数的加载方式,将源等价加到这一单元
的所有节点内;
表示为:
基函数在此单元节点上的值所组成的向量;(x0,y0)为源点的坐标;δ(x,y)为狄拉克函数;
配权重即为源在各个节点上的形函数;在其他单元上,δ函数均为0;
并得到的DGTD正演参数存入到GPU中,并进行后续场值的计算,从而对正演模型的模拟进行
加速,节约计算时间;
网格、设置好的基函数和节点等信息,算出正演所需要的参数,可以节约大量时间,避免重
复计算;此外,将所需要的参数存入到GPU中,进行求取场值的计算,可以对正演模型的模拟
进行加速,节约计算时间;
上的模拟,具体公式如下:
p 、k 为中间变量,αi、βi、γi为常数,表1为本发明方法的LESRK方法中的系数值;
2
方向上的电场分量(V/m),Ez是z方向上的磁场分量(A/m),Jz是z方向上的电流密度(A/m);
▽·表示散度运算符。
以试函数 并在单元内部积分,可以得到
元的边界值统一起来;上式为DGTD算法的弱解形式,再进行一次分部积分,则可以得到强格
式方程:
其中,Z和Y分别代表局部阻抗和局部导纳,εr为介质
的相对介电常数,μr为相对磁导率;
其中, Ez=(Ez,1,Ez,2,...,Ez,NP) ,Hx=(Hx,1,Hx,2,...,
T T
Hx,NP) ,Hy=(Hy,1,Hy,2,...,Hy,NP) ;NP为此单元内节点的个数;
为[0,1],同时当α=0时数值通量 转换为迎风通量;
刚性矩阵且 Hx为x轴方向的磁场值;Hy为y轴方向的磁场值;F为边界
单元矩阵且 κh、κe、ve和vh均为通量系数; 为Ωm边界处的外法向向量在x
方向上的投影; 为Ωm边界处的外法向向量在y方向上的投影; 为基函数;上标+表示单
元外部信息;
波的吸收的参数,i取值为x,y或z;σi表示PML层内i方向的电导率,i取值为x,y或z;ε0为真空
中的介电常数;
助磁场Q的x轴分量; Qy
为辅助磁场Q的y轴分量;
值,以此来模拟波场在时域的进程;
置为(0.2m,0.2m)。时间步长为0.01ns,模拟时间为10ns。DGTD使用具有二阶基函数的粗网
格进行仿真(3200个单元和1681个节点)。粗网格FETD的网格剖分与DGTD算法相同。此外,还
采用细网格的FETD方法进行仿真(80000个单元和40401个节点)。将这三个结果与解析解进
行比较,并计算误差。
DGTD 20.58 3200 19200 3.16×10
‑3
粗网格FETD 3.02 3200 1681 1.1×10
‑5
细网格FETD 120.53 80000 40401 2.9×10
但是粗网格的FETD算法误差达到1.1×10 ,波形上有较大的波动。细网格的FETD结果与解
析解基本吻合,但是比DGTD算法模拟花费更多的时间。这表明与FETD相比,DGTD不仅对网格
的依赖程度较低,可以使用高阶基函数来补充网格的“不足”,而且精度更高,计算效率显著
增加。
的剖分网格。
深度处每隔0.2m设置一个接收天线,总共接收100道数据,模拟时间为120ns。FDTD的网格数
为400×200,空间步长为0.05m,时间步长为0.08ns。因为FDTD剖分网格是结构化的,所以分
界处具有小型的锯齿,与实际的界面不符;采用DGTD算法的基函数阶次为N=3,模拟区域总
单元数为7490,节点数为3847,时间步长为0.04ns。由于DGTD算法的剖分为非结构化网格,
所以分界线贴合实际情况。
算法的48ns、56ns和64ns的波场快照;图8(g)和(h)分别为FDTD和DGTD算法的雷达剖面。
到箭头指向的位置为结构化网格所引起的多次波。在DGTD算法的波场快照和雷达剖面中,
由于非结构化网格,波形平滑且无杂波。两种算法的对比表明,DGTD可以与非结构化网格相
结合,可适用于复杂模型的仿真,其精度更高。
出了一个经验公式,在保证计算精度的同时,尽可能地提高计算效率;利用GPU加速策略进
行计算,可以节约计算时间;将DGTD算法应用到地质隧道预报中,证明DGTD算法对复杂模型
的适应性
体的模型示意图,模拟区域大小为1m×1m,三角形和圆形分别代表激励源和接收器的位置。
图9(b)、(c)、(d)和(e)是图9(a)中虚拟框内的不同基函数阶次节点图,分别对应于3阶、4
阶、5阶和6阶基函数,圆点为节点的位置。
为0.1m;右边为混凝土介质的空洞,其相对介电常数为6,电导率为0.01mS/m,圆心的位置为
(0.25m,0.1m),半径为0.1m。整个模拟区域的单元数为2594。激励源为100MHz的雷克子波。
发射天线位于顶界面的中心处,接收天线在‑0.45m深度处,从‑0.49m水平位置开始,每隔
0.01m设置一个,共接收100道数据;模拟时间为20ns。
振荡现象,虽然能看出异常体的存在,但是信噪比低,有较多杂波。相比较于图10(a),图10
(b)中雷达剖面清晰度有所提高,杂波有所减少,异常体所产生的绕射波形更为明显。图10
(c)与图10(d)中,因为基函数阶次高,节点数多,雷达剖面更为清晰,信噪比更高。
放大,在40~60ns的时间内,基函数的阶次为3时,起伏较大,有一定的误差;N=4时,也有一
定的起伏,但相对N=3时较小;N=5、N=6的线条基本没有起伏,符合实际情况,这也反映出
同一网格下,基函数的阶次越高,精度越高。
验,表3给出了本发明方法的网格大小与基函数阶次建议对应的关系。其中,d为网格大小,λ
为激励源在背景介质处的波长,N为基函数阶次,网格大小与阶次的关系为d/N≈λ/15。
λ/7 2 λ/14
λ/5 3 λ/15
λ/4 4 λ/16
λ/3 5 λ/15
2λ/5 6 λ/15
λ/2 7 λ/14
3λ/5 8 3λ/40
如表4所示。为了比较误差,将极细网格的FDTD算法模拟效果作为标准(400×400网格)。误
差函数在模型1中已给出。
加;当基函数阶次提高时,计算自由度逐渐减小,计算效率显著提高,当基函数大于3阶后,
误差变化不大,计算效率呈缓慢提高。由此可见,用大网格高阶次来进行模拟比小网格低阶
次更好一些。但网格剖分过大,可能会导致对模型拟合不好,损失边角信息,从而导致误差。
因此,开展DGTD算法正演时,应该首先根据精度要求选取合适的网格大小,再根据网格大小
来选取合适的基函数阶次。
高效率。近年来,随着计算机技术的发展,使用GPU来提高计算效率非常流行,这也是提高
DGTD算法计算效率的有力工具。GPU和CPU的体系结构不同。CPU适用于处理少量复杂任务,
而GPU适用于处理大量简单任务。为了比较GPU并行和传统CPU串行的特性,本发明选择了一
个线源位于计算域中心的2D简单模型,对比了两种情况下的DGTD的仿真效率。
计算时间为线性增长,而CPU计算时间为指数增加,最后加速比稳定在10左右。
剖面图。
覆盖层,其相对介电常数为5,电导率为2mS/m;下方土黄色区域为围岩,其相对介电常数为
9,电导率为0.5mS/m;中间灰色带区域为断层,其相对介电常数为16,电导率为10mS/m;左侧
蓝色区域为围岩破碎带,内部充满水,其相对介电常数为81,电导率为1.8mS/m;右侧白色区
域为空气溶洞,其相对介电常数为1,电导率为0。计算域由10555个单元和5397个节点组成,
计算的自由度为158325。采用主频为100MHz的雷克子波作为激励源,时间步长为0.01ns,模
拟时间为240ns。收发天线距地表0.02m,收发距为0.2m,自左向右同步移动,采样间隔为
0.15m,共记录100道数据。采用基函数阶次N=4来进行模拟。GPU计算时间为179.89分钟,
CPU计算时间为1007.7分钟,加速比为5.6。
的。中间的黑色实线勾勒出了断层的位置,与图14(a)相对应。在右侧上方,由椭圆形圈出的
位置,上方是来空洞的上界面反射,下面是为其下界面反射。图15是该模型的Wiggle图。
红色虚线处的两种算法的A‑scan比较图。由图可见,两者的整体数据是一致的。点A为直接
波,点B是上曲线界面的反射,点C是上空洞界面的反射,点D是空洞下界面的反射。从波形到
达时间和传播速度可以计算出该记录信号与每个异常体之间的距离基本相同,这说明了
DGTD在GPR复杂模型模拟中的可行性。