APP下载

基于Nitsche方法与拟牛顿求解的二维接触问题等几何分析

2021-11-02胡清元沈莞蔷蒋芳芳

计算力学学报 2021年5期
关键词:列式算例边界条件

胡清元, 沈莞蔷, 蒋芳芳

(江南大学 理学院,无锡 214122)

1 引 言

接触问题是工业工程中常见的一类力学问题[1]。在接触问题分析方法中,解析方法精度高但适用范围受限。有限元方法适用范围广,但采用的近似网格为接触边界带来严重离散误差,迭代产生的单元畸变可能导致迭代难以收敛。等几何分析[2]方法采用非均匀有理B样条(NURBS)为基函数建模,可精确地描述结构边界,适合分析接触问题。

然而,当前等几何接触分析常见方法存在一定不足。等几何罚函数法[3]采用类似弹簧刚度的罚系数支撑接触面,但问题求解受系数取值影响很大。等几何分析中广泛采用的Mortar方法[4]通过增加虚拟公共边界施加接触条件,该方法将接触面虚拟自由度增加到系统总自由度中,因此总自由度数随着接触面演化而不断变化。此外,等几何配点法[5]也用于接触问题分析。半解析方法[6]将基本解与快速数值求解相结合,具有速度快和计算精度高的特点,在等几何分析中的应用有待进一步发展。

近年来,基于Nitsche方法的等几何分析受到持续关注。Nitsche方法最早用于有限元位移边界条件的施加[7],之后应用到域分解问题[8]和接触问题[9],以及后续的摩擦大变形接触问题[10]。Apostolatos等[11]综合对比了多种域分解方法的数值性能,结果表明Nitsche方法的综合表现最为稳定。Hu等[12]首次采用Nitsche方法还原接触边界条件,该列式的优势是不增加系统自由度,且有完备的数学理论支撑[9]。然而,标准的Nitsche列式需指定罚系数,该系数通常通过求解界面上的广义特征值问题得到。但对于接触问题,接触面随着迭代不断变化,若需在每个迭代步前都求解广义特征值问题,将大幅度增加计算量。

在方程求解方面,由于接触问题的强非线性,一般采用的Newton-Raphson方法需要对列式进行线性化处理,推导切线刚度阵,并在每一步迭代中对大规模矩阵求逆。这不仅需要繁杂的推导,也加重了迭代计算量。实际上,拟牛顿方法也可用于非线性问题的求解,其核心在于采用了近似的切线刚度阵,并可采取BFGS逆更新格式以避免矩阵求逆。Matthies等[13]结合拟牛顿格式与步长搜索,计算了材料和几何非线性问题。Laursen等[14]进一步采用拟牛顿方法求解接触问题,为了保证收敛,当迭代不稳定时需计算切线刚度阵。Gabriel等[15]将第一次迭代求得的解作为第二次迭代的初始近似解。然而,Nitsche方法直接将所有可能产生接触的界面纳入其接触列式,接触面的更新会直接反映在Nitsche接触列式当中。因此,如何在接触面剧烈演化和拟牛顿迭代不稳定时进行简单有效地修正,是有待进一步研究的问题。

2 等几何接触问题

2.1 等几何分析简述

等几何分析本质上是采用NURBS为形函数的等参有限元方法,采用如下方式建模几何场,

(1)

(2)

式中uA为控制点位移自由度。

由虚位移原理,得有限元弱形式

a(u,v)=l(v)

(3)

式中a(u,v)为双线性项,l(v)为线性项。为了便于推导,式(3)忽略了位移边界条件。

2.2 接触问题与接触条件

不失一般性,考虑两弹性体Ω1与Ω2发生接触,定义接触面分别为Γ1和Γ2。假定Γ1上点x1与Γ2上点x2发生接触,定义接触面外法向单位矢量为

(4)

定义接触间隙函数

g(u)=(x2-x1)·n1-[[u]]n

(5)

式中(x2-x1)·n1表示当前接触间隙,在小变形问题中认为其保持不变,[[u]]n=(u1-u2)·n1表示两点间的相对位移。

将接触面记作Γ,接触条件可写为

(6)

式中σn为其在n1方向上的分量。接触条件1表示接触面不能相互穿透,接触条件2表示接触力方向为将接触面向外推,接触条件3为互补条件。由于考虑的是无摩擦接触,故令切向应力σt=0。

3 基于Nitsche方法的接触列式

3.1 Nitsche方法简述

Nitsche方法的核心思想是将边界条件以功的形式引入有限元弱形式,其列式为

a(u,v)-Nitsche =l(v)

(7)

式中Nitsche部分通常可表示为边界积分的形式

(8)

式中f(σ)和f(v)分别为关于面力和位移的函数,具体取法取决于施加的边界条件类型。

3.2 Nitsche接触列式

从Nitsche统一列式[12]出发,接触列式可写为

(9)

式中Γ为所有可能产生接触的界面,[b]R-为标量b在R-上的投影

(10)

此外,γ为罚系数,在文献[16,17]的基础上,本文采用经验公式(11),

(11)

式中E为杨氏模量,p为形函数阶次,d为问题维度,h1和h2表示接触面两侧的网格尺寸。

在可能的接触面Γ上,Nitsche列式通过投影算子判断积分点上的函数值来还原接触条件[9]。

(1) 当接触未发生即g>0时,接触条件3要求σn=0,此时[σn+γg]R-=0。

(2) 当接触发生即g=0时,接触条件2要求σn≤0,此时[σn+γg]R-=σn。

(3) 当g<0时,违背接触条件1,通过大数γ将接触反力放大,从而将接触面弹回。

Nitsche接触列式的物理意义是利用接触力在虚位移v上做的虚功修正有限元弱形式。其中,接触力主要为接触面Γ上面力σn,以及当接触面发生穿透时接触间隙g通过罚系数γ所得接触反力。

4 拟牛顿迭代求解格式

4.1 拟牛顿方法与BFGS逆更新公式

接触问题为强非线性问题,接触问题非线性列式的Newton-Raphson迭代求解格式为

KT(ui)·Δui + 1=R(ui)

(12)

式中KT为切线刚度阵,通常需要通过对列式进行线性化处理得到;余量计算方式为

R(ui)=l(v)-a(ui,v)+

(13)

Newton-Raphson迭代格式需要进行线性化推导,更重要的是,每次迭代都需要求解切线刚度阵的逆

(14)

这严重增加了计算量和分析时间。

(15)

并通过BFGS公式直接更新矩阵的逆,

(16)

4.2 迭代初始化与接触修正

(17)

(18)

其中

(19)

具体修正策略为,在一定迭代次数(本文设置为8次)后,当本次余量范数大于前一次时,认为接触面演化较为剧烈,BFGS的自修正特性不足以及时反映接触面变化,此时需将BFGS的迭代内核替换为式(18)所得割线刚度阵,从而保证加速收敛。

5 算 例

5.1 Taylor接触

Taylor接触算例[18]是接触问题的分片实验,该算例重点关注非协调网格能否均匀地传递接触压力,用于检验接触列式的正确性。如图1所示,两物体杨氏模量E=109Pa,泊松比υ=0.3,上方物体受均布压力f=108N/m2,两模型网格划分不同。算例解析解为

图1 Taylor接触算例

ux=0.03xm,uy=-0.1ym

σx x=0 Pa,σy y=-100 Pa,σx y=0 Pa

接触迭代记录列入表1,经过6次拟牛顿迭代后系统收敛。采用本文列式计算所得位移uy结果如图2所示,结果表明,列式可以得到正确的位移响应。应力σy y的相对误差如图3所示,最大误差为0.13%。需要说明的是,Nitsche方法采用积分的形式将边界条件弱施加在系统中,对接触问题,接触力通过高斯积分点传递,因此无法严格地通过Taylor接触实验。但随着网格加密,误差减小,本文列式可以弱通过Taylor接触实验。

图2 位移云图

图3 应力相对误差

表1 Taylor接触迭代记录

5.2 Hertz接触

Hertz接触算例是接触问题中的经典点接触算例,原问题要求两个杨氏模量不同和半径不同的三维圆柱体接触。本算例将原问题退化,考虑一个二维弹性圆面和刚性平台(即弹性模量和半径均为无穷大)的接触问题。如图4所示,上方圆面弹性模量E=0.02×109Pa,泊松比ν=0.1,半径r=0.2 m,承受体力gz=-1.3×106N/m3。本算例理论解为[19],接触力压力为2.2918×106Pa,半接触面宽度为0.0454 m。

图4 Hertz接触算例

采用8×8网格计算该算例,接触迭代记录列入表2,其中在第13次迭代时采用了割线刚度阵修正,修正后的余量范数大幅度降低,加速了收敛过程。计算所得竖向位移uy云图如图5所示,结果表明下方刚体可以有效地支撑上方弹性体,二者之间产生一段平直的接触面。在不同网格划分下计算所得接触面宽度与接触应力如图6所示,其中黑色实线为理论解,结果表明随着网格加密,本文列式可以得到较为精确的解答。

图5 位移云图

图6 不同网格下接触面宽度与接触应力

表2 Hertz接触迭代记录

仍采用8×8网格,使用单线程计算对比。等几何方法计算总耗时323 s,接触应力最大误差 9.91%;使用同样的网格划分,有限元计算总耗时213 s,接触应力最大误差28.7%。传统有限元基函数构造简单,而等几何分析中的基函数需递推计算,因此等几何分析耗时较长。但值得指出的是,有限元前处理时划分网格的时间并没有统计在内,而等几何分析直接采用几何模型计算。并且,在本算例中等几何方法仅用较为粗糙的网格即可精确描述接触边界,迭代过程稳定,最终得到较精确的结果,而这在传统有限元中是难以做到的。

本算例的接触表面是光滑的,对粗糙表面的接触问题,其接触表面为折线状。因为无法体现等几何方法描述曲线边界时的精度优势,此时的等几何方法作为一种高阶有限元方法,其计算精度应略优于传统有限元。

6 结 论

本文在等几何分析框架内,基于Nitsche方法推导了二维小变形无摩擦接触问题列式。非线性列式采用拟牛顿迭代格式求解,由BFGS公式直接更新近似切线刚度阵的逆。本文给出了一个Nitsche列式中罚系数经验公式,提出了基于Nitsche界面耦合列式的拟牛顿迭代初始化方法,并采用割线刚度阵解决由接触面变化导致的BFGS更新能力不足问题。

所提出的接触分析方法具有较强的适用性,在粗糙网格下依然可以精确描述接触边界,列式推导简单,计算量小。算例表明,基于Nitsche方法的接触列式以积分形式近似地施加接触条件,基于拟牛顿方法和割线刚度阵修正的迭代过程能够较好收敛,最终可以得到较精确的接触面宽度和接触面压力解答。

猜你喜欢

列式算例边界条件
一类带有Stieltjes积分边界条件的分数阶微分方程边值问题正解
带有积分边界条件的奇异摄动边值问题的渐近解
准确审题正确列式精确验证
每筐多装多少
基于振荡能量的低频振荡分析与振荡源定位(二)振荡源定位方法与算例
互补问题算例分析
基于CYMDIST的配电网运行优化技术及算例分析
带Robin边界条件的2维随机Ginzburg-Landau方程的吸引子
燃煤PM10湍流聚并GDE方程算法及算例分析
带非齐次边界条件的p—Laplacian方程正解的存在唯一性