多次透射公式飘移问题的控制方法1)
2021-12-21孔曦骏邢浩洁李鸿晶周正华
孔曦骏 邢浩洁 李鸿晶,2) 周正华
* (南京工业大学工程力学研究所,南京 211816)
† (中国地震局地球物理研究所,北京 100081)
** (南京工业大学交通运输工程学院,南京 211816)
引言
多次透射公式(multi-transmitting formula,MTF)是由廖振鹏等[1-2]提出的一种基于离散参考点表示的局部人工边界条件[3-4],具有普适性、易实施和精度可控等优点.近年来,MTF 被广泛地应用于复杂地形场地[5-7]、多种介质场地[8-10]和大型结构[11]的地震反应分析.还有研究表明[12-15],MTF与Clayton-Engquist 边界[16]和Higdon 边界[17]具有一定的包含关系,并被应用于具有高精度特性的谱元法[18-20]中.高频振荡失稳[21-23]和飘移失稳[24-35]是MTF 可能会出现的两种失稳现象,本文将研究后者.
对飘移失稳的机理解释主要有两种:一种观点[24]认为将MTF 与有限元法结合后,用离散模型拟合连续介质产生的波场误差引发了失稳,且失稳导致数值解将以pN-1的形式增长[24-25],这里p为计算步数,N为MTF 阶次;另一种观点[26-28]认为零频和零波数的MTF 情形违背了用于判断双曲型微分方程初边值稳定性的GKS 准则,零频和零波数成分不断地从边界处进入波场从而产生了误差的累积.
基于第1 种解释,李小军等发展了实时降阶法[24]和数值输入法[29]等消飘方法.实时降阶法认为一阶MTF不会发生失稳,高阶MTF 则可能发生失稳.在应用高阶MTF 的过程中,通过判断失稳现象的发生将高阶MTF 降为一阶MTF,然后再适时调回高阶.因此,实时降阶法需要不断地进行失稳判断.事实上,杜修力等[30]的研究表明一阶MTF 也是可能发生失稳的,只是在大多数情况下不易发生[31].数值输入法则是建立边界计算区,从而获得入射波离散数值解,代替连续介质解析解作为波动的输入,减少误差波场的产生.基于第2 种解释,周正华和廖振鹏[26]提出的主要消飘方法是对MTF 添加消飘因子 γ 得到一种修正形式,形式上表现为对MTF 的各个时空外推节点项进行衰减.该方法在物理概念上被理解为考虑了介质的几何扩散特性或增加了阻尼特征[27].李小军和杨宇[32]在MTF 的基础上对边界附近的节点添加阻尼器或弹簧,结合应力型人工边界来消除失稳,本质上与添加消飘因子的方法类似.Zhang 和Yu[33]将一阶MTF 与高阶MTF 进行加权求和,用来解决电磁波差分模拟中的高阶MTF 飘移失稳问题.在上述几种消飘方法中,实时降阶法、数值输入法、附加黏弹性元件法和MTF 加权求和法都增加了编程的复杂性,并一定程度上降低了计算效率.添加消飘因子的方法从形式上并没有过多地改变MTF 的计算步骤,非常容易实现.然而添加消飘因子的方法对消飘因子 γ 的取值有较严苛的限制,若γ取值太小,消飘效果有限,而当 γ 取值太大时,则计算精度受到影响[34].同时,MTF 阶次越高,γ 的取值也要求越大[35].因此,在对不同模型进行分析时,传统的消飘因子添加方案需要根据经验不断地调试γ值,难于掌握和使用.值得注意的是,消飘因子 γ 的存在必然会降低MTF 的精度.以一维波动问题为例,当人工波速(MTF 边界所使用的计算波速参数)取值等于视波速时,除了离散舍入误差外,一阶MTF 本身不产生任何精度损失.然而,添加的消飘因子则先天性的对MTF 进行了衰减,使计算结果的幅值低于实际值.由此导致的精度损失与 γ 取值的大小有关.
本文将采用消飘因子法的技术路径,提出一种新的消飘因子修正MTF 方案,用于控制多次透射公式的飘移问题.该方法仅针对二阶及其以上各阶MTF 的透射误差项进行修正,而保持一次透射项不变,从而在保有消飘因子法的消飘能力和高阶MTF适应不同人工波速能力的前提下提供了至少一阶MTF 的精度保证.在此基础上,进一步将该方案推广至任意m阶MTF 情形,分别从反射系数和波动有限元数值算例的角度,对基于不同 γ 取值的消飘方案的精度和消飘能力进行对比分析,从而验证本文方法的可行性与适用性.
1 MTF 的小量修正形式
MTF 是基于多次透射的概念建立起来的,即假定所有外行波及其透射误差都是具有相同性质的外行单向波动,它们都以相同的人工波速沿着法线方向从人工边界处透射出去.MTF 的一般表达式写为
式中,N为透射阶次,为二项式系数,表示参考点j在t=pΔt时刻的波场值,由下式定义
其中Δt为时间步距,ca为人工波速.这里人工波速指的是MTF 边界所使用的计算波速参数,理论上它可以设定为任意值,在实际计算中通常取为等于或略大于介质物理波速的某个值.
为了抑制MTF 飘移失稳,周正华和廖振鹏[26,27]提出了一种在MTF 中直接添加带有几何扩散特性或阻尼特征的小量 γ (本文称之为消飘因子)的措施,即将MTF 表达式(1)修正为如下形式
这里消飘因子 γ 被规定为取值远小于1 的正数,因而其对有限元或有限差分模拟的波动分量只产生微小影响,可以忽略不计[2].本文中简称该措施为周-廖方案(Zhou-Liao’s method),附录A 给出了该方案在前4 阶MTF 情况下的具体表达式.
根据GKS 准则,添加消飘因子 γ 后的MTF 防止了零频率和零波数的内行波进入计算区,从而避免了边界节点的飘移失稳.然而,消飘因子 γ 的取值要求比较严格,既不能过小亦不可太大:若 γ 取值过小,则抑制零频和零波数内行波穿过人工边界而进入计算域的效果不明显,边界节点处位移依然可能会发生飘移失稳;若 γ 取值较大,由式(3)可知,人工边界节点处的位移值将被大大压低,这会严重地损失MTF 模拟精度.故 γ 值的确定需要平衡失稳抑制与精度损失这对矛盾,具体实施时需要经过繁琐的试错和调试寻求比较合理的 γ 取值.
2 MTF 飘移失稳控制方案
一阶MTF 不易发生飘移失稳现象,但精度有限.当人工波速偏离视波速越多,其拟合波动的精度就越低.此情形下可通过高阶MTF 的方式提高模拟精度,而高阶MTF 通常又会带来失稳问题.通过在MTF 上添加小量的消飘因子能够有效地抑制MTF 的飘移失稳,从而保持人工波速与视波速不一致情况下使用高阶MTF 时的稳定性.观察式(3)可以发现,这种消飘因子添加方案必然会降低所有阶次MTF 的模拟精度,如果控制不好将导致应用MTF 模拟波动问题时失真.
事实上,高阶MTF 是对误差波再次实施透射的结果,故仅针对误差波自身进行调整即可实现抑制失稳的目标,从而将MTF 精度损失尽可能控制在较小范围内.考虑将一阶MTF 表达为如下形式
如果定义
则N阶MTF 可以统一地写为
为实现抑制飘移失稳的目的,将式(5)改写为
将式(7)代入式(6),即得到MTF 飘移失稳控制方案.显然,按照这种控制方案,经过修正的前3 阶MTF 表示为
如此修正MTF 所形成的消飘方案是基于一阶MTF 不易失稳这一前提.容易发现,该方案仅对透射误差项进行了衰减处理,而一阶透射项保持不变,因而至少能够保留一阶MTF 的精度.当N=1 时,该方法实际上即转变为一阶MTF.
3 反射系数
下面通过人工边界反射系数分析消飘因子 γ 对修正MTF 精度的影响.不失一般性,这里使用文献[1]第4.2.3 节所定义的反射系数.令ca=c(这里c代表物理波速),当输入波为理想暂态波时,一阶MTF 的反射系数写为
式中,θ为入射平面波与人工边界法线的夹角,T为平面谐波的周期.
若定义
则按照本文方法,MTF 反射系数可表达为
事实上,式(10)给出的就是周-廖方案的边界反射系数表达式[2].显然,若取N=1,本文方法给出的MTF 反射系数(见式(11)) 退化为式(9),即一阶MTF 反射系数,这与本文方法在N=1 条件下即为一阶MTF 的结论一致.而形如式(10)的周-廖方案的MTF 反射系数则不同,为了比较,图1 示出了周-廖方案和本文方案在人工边界处的反射系数,从中可以看出消飘因子 γ 对不同阶次MTF 反射系数的影响.
图1 边界反射系数比较(Δt/T=1/20)Fig.1 Comparison of boundary reflection coefficients with respect to different γ (Δt/T=1/20)
图1 边界反射系数比较(Δt/T=1/20) (续)Fig.1 Comparison of boundary reflection coefficients with respect to different γ (Δt/T=1/20) (continued)
分别比较图1(a)、图1(b)和图1(c),可以发现,MTF 阶次相同时,本文方法的边界反射系数都明显低于周-廖方案的反射系数.在入射角为0 的情形下本文方法的反射系数保持为0,而周-廖方案无法达到零反射系数.从图1 中还可知,在本文方法中,消飘因子 γ 取值增大时主要对中等和大角度透射波动的模拟精度造成影响,而对波动能量比较集中的法向和小角度透射范围影响很小.周-廖方案和本文方法的边界反射系数均随着消飘因子 γ 取值单调增大,在 γ 取值较小时两种方案的反射系数差别很小,但当 γ 取值较大时本文方法的反射系数明显要小得多.因此,本文方法能够适应更大的消飘因子取值范围(如1.0 以内的正数)
由此可见,对于引入 γ 带来的精度损失本文方法比周-廖方案要小.比较同一种方案中的不同阶次MTF 情况,容易发现MTF 的阶次越高则反射系数越低,这符合高阶MTF 的精度比低阶MTF 精度高的特性.
下面从反射系数公式的角度来阐释本文方法反射系数低的原因.一阶MTF 方案、周-廖方案和本文方法的边界反射系数分别按照式(9)、式(10)和式(11) 进行计算.若分别以R1,R2和R3表示θ=0 情形下上述3 种方案的反射系数,则有
由于消飘因子 γ 为小值正数,周-廖方案的反射系数R2必定大于0,即周-廖方案必定导致一定的精度损失.由式(13)不难发现,消飘因子 γ 取值越大,周-廖方案的反射系数亦越大.而一阶MTF 方案则不受 γ 的影响,在该情形下的反射系数R1恒为0.本文方法建立在一阶MTF 的基础上,故该情形下的反射系数R3同样恒为0,即不会因为消飘因子 γ 的引入而产生精度损失.
当θ逐渐增大时,人工波速ca与边界上实际波速的差值越大,MTF 的精度越低,反射系数也越大(见图1).此时,消飘因子 γ 取值越大,周-廖方案和本文方案的反射系数整体上都有变大的趋势,但本文方案的增长趋势较小,而周-廖方案的增长趋势则十分显著.这也是引入消飘因子 γ 后对本文方案的精度影响低于传统方案的原因.
值得指出,MTF 在实际波动模拟中可以采用不同的插值方案[1,12,21,31,36]来实现.Wang 和Tang[36]研究了MTF 一种简洁直观的线性内插方案,提出利用Taylor 展开导出与之等效的微分方程形式,进而导出理论反射系数的分析方法.他们发现此时人工波速ca的最优取值与介质物理波速c有所不同,这表明插值方案对MTF 的反射系数有重要影响.廖振鹏[1,21]以及邢浩洁等[12,31]对这个问题亦做过一定探讨.显然,本文所提出的消飘因子修正MTF 可以结合不同的插值方案对其反射系数进行进一步理论分析,不过,具体插值方案并不影响本文方法的适用性,限于篇幅,本文对此不做展开论述.
4 数值算例
反射系数分析从解析解的角度客观地评估了各参数对计算精度的影响.然而,考虑到实际波场构成的复杂性以及有限元与人工边界相结合的特性,对相关数值模型进行时域分析是必要的.
下面分别以初始波场输入的二维波源模型和平面波输入的二维散射模型为例,检验本文方法的可靠性.为便于分析比较,输入波的类型皆为SH 波.将前述MTF 人工边界方案施加到对应场地的有限元离散模型中,并通过集中质量的显式时域有限元法[1]计算出各种方案的波场值.在本文数值算例中,MTF 时空外推节点的位移由有限元节点位移用三点内插方法得到[26],详见附录B.所有数值计算皆通过自编程序完成.
4.1 波源问题
图2 为二维均匀介质模型,分为半空间模型Ω2和全空间模型 Ω3.半空间模型 Ω2的左侧为前述各种方案对应的人工边界,其余三侧为自由边界.全空间模型 Ω3四边皆为自由边界.图中,Ω1为计算分析区域,五角星位置为初始波场的中心位置,圆点A(0,0)为测点位置.设定介质的物理波速为c=1,计算时间为2,这将确保在计算时间内自由边界的反射波不会返回到分析区域 Ω1.
图2 二维波源问题模型Fig.2 Two-dimensional model of wave source problem
以初始波场输入的波源问题作为研究对象,设定以(0.5,0)为圆心,半径为0.45 的圆形扩散波场作为初始波场.其表达式如下
式中,r2=(x-0.5)2+y2.
由文献[13]可知,圆形扩散波场的最短波长成分约为0.25.为满足网格尺寸选取要求和时域积分稳定性条件,x和y方向的有限单元尺寸取为0.025,时步长度取为0.01.为便于进行二维波场的误差分析,通过计算误差波场的弗罗贝尼乌斯(Frobenius)范数,引入最大误差波场比值Error(U) 的定义,计算公式如下
式中,U为各个时刻波动位移的矩阵形式,i和j表示计算域内所有节点的编号和位移分量.下标 Ω1表示计算节点的选取区域.上标 Ω2和 Ω3分别表示计算对应的半空间模型和全空间模型.t为计算对应的时刻或时间范围.误差波场为半空间模型 Ω2中计算域Ω1的数值解减去全空间模型 Ω3中计算域 Ω1的精确解(即不受边界影响的大区域数值解),可表示为 ΔΩ1.
经过大量的数值模拟发现,当MTF 为3 阶时,上述模型的边界节点发生了飘移现象.针对3 阶MTF 的飘移失稳,分别使用周-廖方法和本文方法对MTF 人工边界进行修正.图3 为不同方案的人工边界情况下区域 Ω1的位移全波场快照和误差波场快照.这里的人工波速取为物理波速(ca=c).其中,图3(a)为未被修正过的3 阶MTF 人工边界,图3(b)和图3(c)、图3(d) 和图3(e) 分别为消飘因子γ=0.01 和γ=0.1 时的周-廖方法与本文方法.全波场(Ω1)快照的颜色标尺范围较大,主要反应了波的传播过程.误差波场(ΔΩ1)快照的颜色标尺范围较小,便于比较不同方案的消飘效果和精度.图4 为上述不同方法情况下,人工边界处测点A的位移时程图(测点A位移用u表示).
从图3 和图4 中不难看出,3 阶MTF 情况下的波场位移从人工边界处测点A附近发生飘移;不同的MTF 修正方法都一定程度上消除了飘移失稳的趋势.比较图3(b)~图3(d)中的全波场快照,可以发现消飘因子 γ 越大,两种MTF 修正方法的消飘效果越好.而比较图3 中的误差波场和图4 中t=0.5~2.0 之间的位移时程,可以发现消飘因子 γ=0.1 时的本文方法在所有方案中最接近全空间模型的精确解.此外,当 γ=0.1 时,周-廖方法下的测点A 位移虽然在波峰处接近精确解,但在波谷处比其他方案都远离精确解.
图3 不同方法情况下的全波场快照和误差波场快照 (ca=c)Fig.3 Snapshots of full-field wave propagation and the error by using different methods (ca=c)
图4 不同方法情况下测点A 的位移Fig.4 Displacement at point A by using different methods
为了具体比较消飘因子 γ 对周-廖方法和本文方法精度的影响,用式(16)中定义的最大误差波场比值Error(U) 作为参考标准.图5 给出了不同人工波速情况下,消飘因子 γ 对一阶MTF、3 阶MTF、周-廖方法与本文方法波场精度的影响.
当ca=0.5c时,虽然3 阶MTF 在该情况下已经出现了飘移失稳的迹象,但飘移趋势相对比较缓慢,在计算时间内3 阶MTF 的最大误差波场比值小于一阶MTF,表明3 阶MTF 的精度要高于一阶MTF;当ca≥c时,3 阶MTF 受到飘移失稳的影响,其最大误差波场比值大于一阶MTF,即3 阶MTF 的精度反而低于一阶MTF.由于周-廖方法与本文方法建立在3 阶MTF 的基础上,当消飘因子 γ 极小时,两种方案的精度与3 阶MTF 接近,随着消飘因子的变大,周-廖方法和本文方法的精度都得到提升.当ca≤ 2c时,两种MTF 修正方法的测点位移值会随时间而逐步收敛为0,解决了3 阶MTF 本身飘移失稳的问题.当消飘因子 γ 增长到一定值时,两种MTF 修正方法的最大误差波场比值随 γ 的增长而变大.其中,周-廖方法的最大误差波场比值最终收敛至0.4 左右,而本文方法的最大误差波场比值则收敛为一阶MTF 对应的值.当ca=3c时,3 阶MTF 方案、周-廖方法和本文方法都发生了较大的失稳,只有当消飘因子 γ 接近1.0 时,两种MTF 修正方法才可能收敛.根据图5,在不同的消飘因子和人工波速情况下,本文方法的计算精度整体上要比周-廖方法高,这一点与反射系数的分析结果一致.
图5 人工波速对波场精度的影响Fig.5 The effect of artificial wave velocity on the accuracy of the wave field
4.2 散射问题
与波源问题不同,散射问题需要考虑波场的输入问题.同时,散射问题需要将边界节点的全波场反应分解为入射波和散射波,然后对散射波应用MTF人工边界,使其离开不再回到计算域内.
图6 为SH 平面波输入的散射问题模型.模型为长300 m、宽150 m 的矩形场地,介质密度为ρ=2500 kg·m-3,剪切波速为c=500 m/s.4 个边界均为MTF 人工边界,MTF 的阶次为N=4.各个边界上MTF 的人工波速取为对应边界的视波速.SH 波从模型的左侧边界和底部边界斜入射进入波场,入射角为θ=30°.入射波的波形为Ricker 波,中心频率取为f=10 Hz[15].有限单元网格的尺寸取为2 m,时间步长取为0.001 s.图中左侧底角的点A(0,0)和模型中间的点B(150,74)为观测点.
图6 二维散射问题模型Fig.6 Two-dimensional model of a scattering problem
图7 为采用不同MTF 边界方案计算得到的波场快照图.图中采用了两种不同尺度的颜色标尺.对0.2 s,0.4 s 和0.8 s 的波场快照采用尺度较大的颜色标尺,便于观察波动传播过程.由于波到达边界处的反射比较小,对1.6 s 和1.9 s 的波场快照采用尺度较小的颜色标尺,以便比较不同方案的效果.
图7(a)为未被修正过的4 阶MTF,从其1.6 s和1.9 s 的波场快照看,左侧人工边界和底部人工边界率先发生了比较明显的飘移失稳,并且该失稳现象随着时间的进行而向内域蔓延.图7(b)和图7(c)分别为消飘因子 γ=0.01 时的周-廖方法和本文方法,从两图 1.6 s 和1.9 s 的波场快照看,两种MTF 修正方法都比较好的消除了4 阶MTF 的飘移失稳现象.图7(d)为消飘因子 γ=1.0 时的周-廖方法,从波场快照看,残余波场的值较大,其计算精度不高.这是因为 γ 超过一定值后,其值越大,周-廖方法精度越低,入射波到达边界后产生了较大的反射.图7(e)为消飘因子 γ=1.0 时的本文方法,从其0.8 s,1.6 s 和1.9 s的波场快照看,该方案既消除了飘移失稳现象,又保持了较高的计算精度.这是因为本文方法的精度下限为一阶MTF,且人工波速为视波速,入射波到达边界后产生的反射较小.
图7 不同方法情况下的波场快照Fig.7 Snapshots of wave propagation by using different methods
图8 为测点A和测点B在不同方法情况下的位移时程图及局部放大图(测点位移用u表示).图8(b)和图8(d)分别为图8(a)和图8(c)中绿色矩形框处的局部放大图.从图8(a) 中可以明显看出,4 阶MTF 对应的位移时程发生了明显的飘移失稳现象.添加消飘因子的几种方案都较好的解决了飘移失稳,但都存在一定的残余波场,尤其是 γ=1.0 时的周-廖方法,精度较差,见图8(c).在这几种消飘因子添加方案中,γ=1.0 时的本文方法是残余波场幅值最小的,精度最高,见图8(b)和图8(d).
图8 测点A 和测点B 的位移时程Fig.8 Displacement time histories at point A and point B
与前面波源问题相似,这里以测点A和测点B在t=0.5 s~2.0 s 时间范围内的最大位移幅值|U|max为参考标准,来更具体的比较消飘因子 γ 对周-廖方法与本文方法计算精度的影响,如图9 所示.从图9可以看出,当消飘因子 γ < 0.1 时,周-廖方法与本文方法的计算精度十分接近且几乎不随 γ 取值而改变;当 γ > 0.1 时,本文方法的误差随着 γ 的增大而逐渐降低为0,而周-廖方法的误差整体上则随着 γ 的增大而迅速变大.因此,如果对计算精度有最低要求,本文方法的消飘因子取值范围将明显大于周-廖方法.这种情况下,有别于周-廖方法在应用过程中对消飘因子 γ 取值需要不断地进行试错,本文方法对消飘因子的选值更加方便与宽松.
图9 消飘因子 γ 对不同方法模拟波场精度的影响Fig.9 Influence of the drift-elimination factor γ on the accuracy of simulated wave field by using different boundary methods
结合数值算例的结果与反射系数的分析,可以发现,两种方式都能反应出本文方法相对于传统方法的精度优势,但精度的表现存在一定差异,这主要是因为:(1) 理论反射系数基于稳态谐波导出,而本文数值试验则是短持时的暂态波;(2) 反射系数是对每个特定频率ω(ω=2πf=2π/T)给出的,而数值试验中的波动则具有多种频率成分;(3) 反射系数使用的是理想平面波,具有特定的透射角度,而数值试验中的波动以多种不同的角度射向边界,且往往含有几何衰减、多波叠加等效应;(4) 离散网格具有数值频散效应,会导致其中传播的波形发生变化,对人工边界的反射特征造成一定影响.
依据应用本文方法的大量数值模拟经验,对MTF的阶次N和消飘因子 γ 的取值有以下归纳:(1) MTF常用的阶次一般不超过3 阶,本文算例中使用高阶MTF (N=4)是为了研究飘移失稳问题,探讨消飘方法的效果;此外,MTF 并非只在高阶情况下才发生飘移失稳,在有些情形下[2,6,26],低阶MTF 也可能出现飘移失稳;(2) 关于消飘因子 γ 的取值范围,周-廖方法一般为0.001~0.05[1,2,6,26,35],本文方法在同样精度情况下则为0.01~1.0,取值范围更大;对于飘移比较严重的问题,本文方法对 γ 的取值可以大一些,如0.5 或接近1,对于飘移比较轻微的问题,γ 的取值则可以小一些,如0.01 左右.
5 基于任意阶MTF 的消飘通用形式
前面讨论的MTF 飘移失稳控制方案是立足于一阶MTF 上而建立起来的,即保持一阶MTF 不变,而仅对二阶及其以上各阶MTF 透射误差进行修正,这样就在实现抑制飘移失稳的同时至少保留了一阶MTF 的精度.这种MTF 飘移失稳控制方案的思路很容易推广至任意阶MTF 情形.如果认为前m阶MTF 都能够保持稳定而不发生失稳,则只需针对m+1 阶及其以上的各阶MTF 透射误差添加消飘因子,即可达到抑制飘移失稳的目的.考虑到m阶MTF 可以表达为
则只需将N阶MTF (N>m)修正为
此即为任意阶MTF 飘移失稳控制的通用形式.显然,若取m=1,则式(18)与本文前面导出的MTF飘移失稳控制方案完全一致.
式(18)对应的边界反射系数可以统一地写为
不难发现,当取m=0 时,由式(19)给出的反射系数实际上就是周-廖方案的反射系数表达式.下面证明周-廖方案是本文方法的一个特例.
如果定义记号
则当m=0 时由式(17)立即得到
即边界点始终保持为0,这表明零阶MTF 实际上是固定边界条件.在该情形下,根据式(17)并利用式(18)容易导出各阶MTF 如下
将上述各阶MTF 写成通式,有
比较发现,式(22)与式(3)完全相同,即其实际上就是周-廖方案所给出的N阶MTF.故无论从MTF 表达式(式(22))还是边界反射系数(式(19))上看,周-廖方案本质上只是本文方法取m=0 时的一个特例.
6 结论
多次透射公式(MTF)建立起来的人工边界条件有时存在飘移失稳问题.本文将周正华和廖振鹏提出的抑制MTF 飘移失稳的方案推广到一般情形,发展了一种多次透射公式飘移问题的控制方法.通过边界反射系数分析和数值试验,对本文方法的精度和消飘效果进行了详细探讨,得到主要研究结论如下.
(1) 本文方法能够十分有效地消除高阶MTF 与有限元模型结合后出现的飘移失稳现象,仅通过添加消飘因子的方式实现控制MTF 飘移失稳的目标,这对于MTF 实施步骤及其编程基本不会产生额外负担.
(2) 本文的MTF 飘移控制方案是在m阶MTF的基础上构建出来的,仅针对(m+1)阶及其以上各阶MTF 的透射误差项进行修正,能够保证波动模拟结果至少保持m阶MTF 精度(当取m=1 时即至少保有一阶MTF 精度).传统的周-廖方案本质上是本文方法的一个特例,相当于取m=0 时的结果.
(3) 在本文方法中,消飘因子 γ 取值增大时主要对中等和大角度透射波动的模拟精度造成影响,而对波动能量比较集中的法向和小角度透射范围影响很小.它能够适应更大的消飘因子取值范围(如1.0 以内的正数),且较传统方案能够在更高精度水平下实现对MTF 飘移问题的有效控制.
(4) 当消飘因子取值趋向于无限大时,由传统方案推算的边界运动趋近于零,此情形相当于固定边界条件,而本文方法则趋近于m阶MTF(实际应用时可只取为一阶MTF).从原理上看,本文方法融合了零频零波数情形下GKS 准则所表述的消飘原理[26,27]和通常认为低阶MTF 不易发生飘移失稳的经验观察[24,33].
附录A
附录B
本文MTF 外推节点插值格式
MTF 外推节点位移通过有限元节点位移的3 点内插方式获得.
如图B1 所示,多次透射公式可以看成是基于时空节点信息的有限差分外推公式.其形式如下
图B1 透射边界(MTF)示意图Fig.B1 Schematic diagram of multi-transmitting formula (MTF)
以第一个时空外推节点为例(图中节点1a,一次透射项),令s=caΔt/Δx,Δx为相邻的有限元网格节点之间的空间间距,基于与同一时刻相邻3 个有限元网格节点位移的空间插值关系,有
同理,令sj=jcaΔt/Δx,可求第j个外推时空节点的位移,以矩阵形式表示如下
将式(B3)代入式(B1),可得用有限元网格离散节点的位移表示的MTF 形式,即