杂交无单元Galerkin方法施加Dirichlet边界条件研究

刘燕 ,  程珩 ,  王韦博

中北大学学报(自然科学版) ›› 2025, Vol. 46 ›› Issue (01) : 91 -97.

PDF (1596KB)
中北大学学报(自然科学版) ›› 2025, Vol. 46 ›› Issue (01) : 91 -97. DOI: 10.62756/jnuc.issn.1673-3193.2023.09.0010
自动化与计算机

杂交无单元Galerkin方法施加Dirichlet边界条件研究

作者信息 +

Research on Application of the Dirichlet Boundary Condition Using Hybrid ElementFree Galerkin Method

Author information +
文章历史 +
PDF (1633K)

摘要

Lagrange乘子法和罚函数法是无网格方法施加边界条件常用的两种方法, 为了比较两种方法的优缺点, 本文研究了三维Helmholtz方程的杂交无单元Galerkin(Hybrid Element-Free Galerkin, HEFG)方法。引入维数分裂法将控制方程分裂为若干个二维问题, 对于每个二维问题, 分别采用Lagrange乘子法和罚函数法施加边界条件, 建立等价的泛函, 并推导相应的积分弱形式。引入改进的移动最小二乘法建立形函数, 进而推导二维问题的离散方程。在维数分裂方向采用有限差分法将这些二维离散方程进行耦合, 得到原三维Helmholtz方程的离散求解方程。数值算例中对数值解的精度和时间进行对比, 分析了两种方法施加Dirichlet边界条件的优缺点, 得出采用罚函数法施加边界条件较好的结论。

Abstract

The Lagrange multiplier method and the penalty method are the common methods when applying essential boundary conditions in meshless method. In order to compare the advantage and the disadvantage of two methods, the hybrid element-free Galerkin (HEFG) method was presented for analyzing 3D Helmholtz equation. By introducing the dimensional split method, the governing equation could be split into a few 2D forms, for every 2D problem, the Lagrange multiplier method and the penalty method were used to apply the boundary conditions, and the equivalent functional could be established, thus the corresponding integral weak forms could be derived. By introducing the improved moving least squares (IMLS) approximation to establish shape functions, the discrete equation of 2D forms could be obtained. In dimensional split direction, the finite difference method was selected to couple these 2D equations, thus the final discrete equation of 3D Helmholtz equation was obtained. In numerical examples, by comparing the computational accuracy and computational time of numerical results, the advantages and disadvantages of two methods for applying boundary conditions were analyzed, respectively. It is shown that the penalty method is better than the Lagrange multiplier method when applying essential boundary conditions.

Graphical abstract

关键词

Lagrange乘子法 / 罚函数法 / Helmholtz方程 / 杂交无单元Galerkin方法

Key words

Lagrange multiplier method / penalty method / Helmholtz equation / hybrid element-free Galerkin method

引用本文

引用格式 ▾
刘燕,程珩,王韦博. 杂交无单元Galerkin方法施加Dirichlet边界条件研究[J]. 中北大学学报(自然科学版), 2025, 46(01): 91-97 DOI:10.62756/jnuc.issn.1673-3193.2023.09.0010

登录浏览全文

4963

注册一个新账户 忘记密码

0 引 言

无网格方法1基于点的近似构造逼近函数, 是继有限元之后一种重要的数值方法, 在解决力学领域复杂的非线性大变形问题时不会出现有限元所伴随的网格畸变的麻烦。如今, 许多研究者对无网格方法产生了浓厚的兴趣。无单元Galerkin(简称EFG)方法2是目前无网格方法研究和应用中最常见的一种方法, 建立逼近函数时采用移动最小二乘法3(简称MLS), 此后学者们对该逼近函数进行了一系列改进, 研究了改进的移动最小二乘法4(简称IMLS)、 插值型以及复变量移动最小二乘法5-6等。另外, 采用这些方法构造逼近函数, 建立了改进的无单元Galerkin(简称IEFG)方法7-8、 插值型以及复变量EFG方法69

采用传统的EFG方法和IEFG方法对三维问题求解时计算速度较慢, 其主要原因是不同点的形函数及其导数不同, 对于三维问题来说, 每个点的影响域内的高斯点要比二维问题多得多, 因此每个高斯点都需要计算形函数和导数, 在形函数的计算过程中又涉及到矩阵求逆及多个矩阵的相乘, 远比有限元法复杂。因此, 如何提高三维问题无网格方法的计算效率是目前无网格方法需要解决的问题之一。为了解决该问题, 程珩等10-11将有限差分法和改进的复变量EFG方法相结合, 提出了维数分裂复变量EFG方法, 在计算精度近似的前提下, 新方法可以大幅度提高EFG和IEFG方法求解三维问题的计算速度。孟智娟等12-13提出了维数分裂EFG方法和插值型维数分裂EFG方法; 彭飘飘14建立了维数分裂重构核粒子法; 王诗涵15提出了维数分裂插值型EFG方法。这些方法的研究成果说明了维数分裂法是提高无网格方法求解三维问题计算效率的有效途径。

传统的EFG方法、 IEFG方法、 复变量EFG方法和重构核粒子法, 其形函数都不具有插值特性, 目前边界条件的施加最常用的是Lagrange乘子法和罚函数法。程珩等16将有限差分法和IEFG方法结合, 研究了三维Helmholtz方程的HEFG方法, 该研究选择了Lagrange乘子法而并未采用罚函数法施加边界条件。

通过对HEFG方法的研究发现, 边界条件的施加对公式推导和程序编写影响比较大。因此很有必要将两种方法进行对比研究, 本文以三维Helmholtz方程的杂交无单元Galerkin方法为例, 采用维数分裂法将三维Helmholtz方程分裂为若干个二维形式, 分别采用Lagrange乘子法和罚函数法对二维问题施加边界条件, 引入改进的移动最小二乘法建立形函数, 推导二维问题的离散方程, 第三个方向采用有限差分法对二维离散方程进行耦合, 得到三维Helmholtz方程的离散求解方程。通过数值算例分析了两种方法施加边界条件时数值解的精度和速度, 并分析各自的优势和不足, 从而为HEFG方法解决科学和工程领域中的三维问题提供参考。

1 改进的移动最小二乘法

对于任一点x, 其逼近函数可以表示为

uh(x)=I=1nΦ̑IuI=Φ̑u, (xΩ),

其中

uT=(u1,u2,,un)

形函数

Φ̑=pT(x)AB=(Φ̑1,Φ̑2,,Φ̑n),

式中: pT(x)为基函数向量。

A=1(p1,p1)0001(p2,p2)00001(pn,pn),
B(x)=PTW(x),
P=p1(x1)p2(x1)pm(x1)p1(x2)p2(x2)pm(x2)p1(xn)p2(xn)pm(xn),
W=
w(x-x1)000w(x-x2)000w(x-xn),

式中: w(x-xI)为权函数; xI为影响域内覆盖x的节点。

以上为改进的移动最小二乘法4

2 三维Helmholtz方程的HEFG方法

控制方程为

Δu+k˜2u=f(x)x=(x1,x2,x3)Ω

边界条件为

u=u¯(x)xΓu,
q(x)=u,1n1+u,2n2+u,3n3=q¯(x),
xΓq,

式中: u¯q¯是已知的; f(x)为给定的函数; k˜2为波数; nixi方向边界Γ上的外法线, Γ=ΓuΓqΓuΓq=

为了采用HEFG方法对该问题进行求解, 需要将式(8)转化为二维形式

2u(k)x12+2u(k)x22=f(k)-k˜2u(k)-2u(k)x32,(x1,x2)Ω(k)x3=x3(k)

将原三维问题求解域Ω分裂为若干个二维区域, Ω(k)表示Ωk层区域。

Ω=k=1LΩ(k-1)×[x3(k-1),x3(k))Ω(L),
u(k)=u(x1,x2,x3(k)),
f(k)=f(x1,x2,x3(k))

每个二维区域边界条件为

u(k)=u¯(k)=u¯(x1,x2,x3(k)),
(x1,x2)Γu(k),
q(k)=q¯(k)=q¯(x1,x2,x3(k)),
(x1,x2)Γq(k),

式中: Γq(k)Γu(k)分别为自然边界和本质边界; Γ(k)=Γu(k)Γq(k)Γu(k)Γq(k)=

采用Lagrange乘子法施加边界条件时所形成的HEFG方法的公式推导参见文献[16]。

采用罚函数法施加边界条件, 得到二维形式的等价泛函为

Π*=Ω(k)u2ux32+12k˜2u-fdΩ(k)-
Ω(k)12ux12+ux22dΩ(k)-
Γq(k)uq¯dΓ(k)+α2Γu(k)(u-u¯)(u-u¯)dΓ(k),

式中: α为罚因子。

δΠ*=0,

可以得到积分弱形式为

Ω(k)δuk˜2udΩ(k)+Ω(k)δu2ux32dΩ(k)-
Ω(k)δ(Lu)T(Lu)dΩ(k)-Γq(k)δuq¯dΓ(k)-Ω(k)δufdΩ(k)+αΓu(k)δuudΓ(k)-αΓu(k)δuu¯dΓ(k)=0,

其中

L()=x1x2()

Ω(k)内选取M个点xI(k), 则xI(k)的函数值为

uI=u(k)(xI(k))=u(xI(k),x3(k))

由改进的移动最小二乘法可以得知

u(x(k),x3(k))=u(k)=
I=1nΦ̑I(x(k))uI=Φ̑(x(k))u

其中, u式(2)一致, 从而可以得到

2u(x(k),x3(k))x32=2x32I=1nΦ̑Iu(k)=
I=1nΦ̑I2uIx32=Φ̑u",
Lu(k)=I=1nx1x2Φ̑IuI=I=1nBIuI=Bu,

其中

u=2u1x32,2u2x32,,2unx32T,
B=(B1,B2,,Bn),
BI=Φ̑I,1(x(k))Φ̑I,1(x(k))

式(22)式(23)式(24)代入式(19)可得

Cu+K˜u=F˜,

其中

K˜=Kα+k˜2C-K,
F˜=F1+F2+Fα,
Kα=αΓu(k)Φ̑TΦ̑dΓ(k),
K=Ω(k)BTBdΩ(k),
C=Ω(k)Φ̑TΦ̑dΩ(k),
F1=Ω(k)Φ̑TfdΩ(k),
F2=Γq(k)Φ̑Tq¯dΓ(k),
Fα=αΓu(k)Φ̑Tu¯dΓ(k)

对于式(28), 采用有限差分法对u进行离散, 可以得到三维Helmholtz方程的求解方程为

Eu^=W,

其中

E=1(Δx3)2HCCHCCHCCHCCH,
H=(Δx3)2K˜-2C,
W=F˜1-Cu(0)(Δx3)2T,F˜2T,,F˜(L-2)T,
F˜(L-1)-Cu(L)(Δx3)2TT,
u^=u(1)T,u(2)T,,u(L-1)TT

以上即为基于罚函数法施加边界条件下的三维Helmholtz方程的HEFG方法。

3 数值算例

本节采用HEFG方法对3个数值算例进行求解。基函数选择线性基函数, 每个积分网格内选择4×4个高斯积分点, 问题求解域内布置均匀分布的节点。相对误差公式为

u-uhL2(Ω)rel=Ω(u-uh)2dΩ12uL2(Ω)

第1个算例的控制方程为

Δu+u=sinx2cosx3(12x12-x14)

问题求解域Ω=[0,π]3, 该算例的解析解为

u=x14sinx2cosx3

该算例的本质边界条件通过解析解可以得到。采用HEFG方法求解, 权函数选择三次样条函数, 在x1方向进行分裂, 每个二维区域内节点数为15×15, 分裂层数为15。当采用Lagrange乘子法施加边界条件时, dmax取1.2, 可以得到较高的精度, 误差为0.225 3%, 计算时间为4.66 s。当采用罚函数法施加边界条件时, dmax取1.21, α取1.0×105, 可以得到较高的精度, 误差为0.224 2%, 计算时间为4.85 s。数值解和解析解的对比如图 1~图 3 所示。

图 1~图 3 可以看出, 两种方法的数值解和解析解吻合得都很好, 但Lagrange乘子法的计算时间略短。

第2个算例的控制方程为

Δu+100u=
(k2-3π2)sin(πx2)sin(πx3)cos(πx1)

问题求解域Ω=[0,1]×[0,1]×[0,1], 边界条件为

u(0,x2,x3)x1=u(1,x2,x3)x1=
u(x1,0,x3)=u(x1,1,x3)=
u(x1,x2,0)=u(x1,x2,1)=0

解析解为

u=cos(πx1)sin(πx2)sin(πx3)

采用HEFG方法求解, 权函数选择三次样条函数, 在x2x3方向进行分裂, 每个二维区域内节点数为19×19, 分裂层数为19。当采用Lagrange乘子法施加边界条件时, dmax取1.3, 可以得到较高的精度, 误差为0.495 2%, 计算时间为8.75 s。当采用罚函数法施加边界条件时, dmax取1.24, α取1.5×105, 可以得到较高的精度, 误差为0.519 2%, 计算时间为10.52 s。数值解和解析解的对比如图 4~图 6 所示。由图 4~图 6 可以看出, 两种数值解与解析解吻合得都比较好, 但采用Lagrange乘子法施加边界条件时的计算时间比罚函数法略短。

第3个算例的控制方程为

Δu-k2u=0

问题求解域和算例2相同, 解析解为

u=e(c1x1+c2x2+c3x3).

该算例的本质边界条件通过解析解可以得到。选择k=5, c1=3, c2=2.7。采用HEFG方法求解, 权函数选择三次样条函数, 在x1方向进行分裂, 每个二维区域内节点数为15×15, 分裂层数为15。当采用Lagrange乘子法施加边界条件时, dmax取1.15, 可以得到较高的精度, 误差为0.279 3%, 计算时间为0.95 s。当采用罚函数法施加边界条件时, dmax取1.21, α取8.5×102, 可以得到较高的精度, 误差为0.051 4%, 计算时间为1.13 s。

数值解和解析解的对比如图 7~图 9 所示。由图 7~图 9 可以看出, 两种数值解与解析解吻合得都很好。从本算例分析可以得知, 采用罚函数法施加边界条件时精度略高, 时间稍慢一些。

4 结 论

从本文公式推导和编程的角度来看, 采用Lagrange乘子法施加边界条件, 公式推导较为复杂, 同时也增加了MATLAB程序编写的复杂性。

从调参数的角度考虑, 节点和积分网格选定后, Lagrange乘子法仅需要通过调dmax的大小来获得较小的相对误差。若采用罚函数法, 需要通过经验不断尝试调节dmaxα两个参数的大小, 花费时间较多。

从最终数值解的精度和计算效率的角度来看, 两种方法都可以得到精度较高的数值解, 而且精度相差不大, 都可以满足精度要求。Lagrange乘子法的计算效率略占优势, 但两种方法的计算时间相差并不大。

综上所述, 在杂交无单元Galerkin方法的研究中, 采用罚函数法施加边界条件比较好。主要原因是公式推导简单, 程序编写容易, 可以满足精度和效率的使用要求。相比其优势带来的便利, 通过经验调节dmaxα两个参数所花费的时间是次要矛盾。这也是目前采用罚函数法施加边界条件被广泛应用的重要原因。

由于改进的无单元Galerkin方法的形函数不具有插值性质, 必须借助于其它方法施加边界条件, 而文献[9]研究的插值型无单元Galerkin方法可以直接施加边界条件, 在今后的研究中, 将考虑采用该方法替代改进的无单元Galerkin方法对三维Helmholtz方程进行求解。

参考文献

[1]

程玉民 .无网格方法[M].北京: 科学出版社, 2015.

[2]

BELYTSCHKO TLU Y YGU L. Element-free Galerkin methods[J]. International Journal for Numerical Methods in Engineering199437: 229-256.

[3]

LANCASTER PSALKAUSKAS K. Surfaces generated by moving least squares methods[J]. Mathematics of Computation198137(155): 141-158.

[4]

陈美娟, 程玉民 .改进的移动最小二乘法[J].力学季刊200324(2): 266-272.

[5]

CHEN MeijuanCHENG Yumin. The improved moving least-squares approximation[J]. Chinese Quarterly of Mechanics200324(2): 266-272. (in Chinese)

[6]

任红萍, 程玉民, 张武 .改进的移动最小二乘插值法研究[J].工程数学学报201027(6): 1021-1029.

[7]

REN HongpingCHENG YuminZHANG Wu. Researches on the improved interpolating moving least-squares method[J]. Chinese Journal of Engineering Mathematics201027(6): 1021-1029. (in Chinese)

[8]

CHENG YuminWANG JianfeiBAI Funong. A new complex variable element-free Galerkin method for two-dimensional potential problems[J]. Chinese Physics B201221(9): 090203.

[9]

蔡小杰, 彭妙娟, 程玉民 .弹塑性大变形问题的改进的无单元Galerkin方法[J].中国科学: 物理学 力学 天文学201848(2): 024701.

[10]

CAI XiaojiePENG MiaojuanCHENG Yumin. The improved element-free Galerkin method for elastoplasticity large deformation problems[J]. Scientia Sinica Physics, Mechanics & Astronomy, 201848(2): 024701. (in Chinese)

[11]

程珩, 彭妙娟, 程玉民 .三维Schrödinger方程的改进的无单元Galerkin方法[J].力学季刊202142(1): 14-26.

[12]

CHENG HengPENG MiaojuanCHENG Yumin. The improved element-free Galerkin method for 3D Schrödinger equations[J]. Chinese Quarterly of Mechanics202142(1): 14-26. (in Chinese)

[13]

REN HongpingCHENG Yumin. The interpolating element-free Galerkin (IEFG) method for two-dimensional elasticity problems[J]. International Journal of Applied Mechanics20113(4): 735-758.

[14]

程珩 .杂交复变量无单元Galerkin方法研究[D].上海: 上海大学, 2019.

[15]

CHENG HengLIU YanLIANG Dongqiong. Analyzing 3D Helmholtz equations by using the hybrid complex variable element-free Galerkin method[J]. International Journal of Computational Materials Science and Engineering202312(3): 2350005.

[16]

孟智娟 .三维问题的维数分裂无单元Galerkin方法研究[D].上海: 上海大学, 2019.

[17]

MENG ZhijuanCHI Xiaofei. An improved interpolation dimension split element-free Galerkin method for 3D wave equations[J]. Engineering Analysis with Boundary Elements2022134: 96-106.

[18]

彭飘飘 .三维问题的杂交重构核粒子法[D].上海: 上海大学, 2021.

[19]

王诗涵 .三维波动方程和三维弹性力学问题的插值型维数分裂无单元Galerkin方法[D].上海: 上海大学, 2022.

[20]

CHENG HengZHANG JiaoXING Zebin. The hybrid element-free Galerkin method for 3D Helmholtz equations[J]. International Journal of Applied Mechanics202214(9): 2250084.

基金资助

山西省青年基金资助项目(20210302124388)

山西省创新训练项目(20230712)

AI Summary AI Mindmap
PDF (1596KB)

261

访问

0

被引

详细

导航
相关文章

AI思维导图

/