间隙元素
理论与物理
什么是间隙单元
老师,什么是“间隙单元”?
间隙单元是两点之间存在间隙(Gap),仅在接触时才传递力的单元。用作接触问题的简化模型。
物理图像
间隙单元是“一维的接触单元”:
- 间隙张开时($\delta < g$) → 力为零
- 间隙闭合时($\delta \geq g$) → 作为压缩弹簧(刚度 $k$)传递力
其中 $\delta$ 是两节点间的相对位移,$g$ 是初始间隙。
“间隙闭合就变成弹簧”,真是简单的非线性啊。
是的。力-位移关系:
用途
| 用途 | 说明 |
|---|---|
| 螺栓孔的间隙 | 螺栓与孔接触时的载荷传递 |
| 支座的挡块 | 超过一定位移后接触 |
| 管道的支撑 | 仅单向支撑(抬升) |
| 热膨胀引起的接触 | 温度升高导致间隙闭合 |
管道支撑仅单向是什么意思?
管道向下挠曲时会落在支撑台上,但向上挠曲时会离开支撑台(抬升)。仅向下方向传递力,向上方向自由。这是间隙单元的典型应用。
各求解器对应的单元名称
| 求解器 | 单元名称 | 备注 |
|---|---|---|
| Nastran | CGAP | 指定方向、间隙量、闭合刚度 |
| Abaqus | *GAP / GAPUNI | 一维间隙。ITT单元 |
| Ansys | CONTA178 | 节点间接触单元 |
Abaqus除了GAP单元,还有ITT(界面)单元吗?
在Abaqus中,相比间隙单元(*GAP),通用的接触定义(*CONTACT PAIR / *GENERAL CONTACT)更灵活且被推荐使用。间隙单元仅用于简易的一维接触。
间隙单元 vs. 接触定义
| 比较 | 间隙单元 | 面接触定义 |
|---|---|---|
| 自由度 | 仅一个方向 | 整个面 |
| 设置工作量 | 少 | 多 |
| 精度 | 一维近似 | 精确的接触压力分布 |
| 非线性 | 弱 | 强 |
| 摩擦 | 仅Nastran CGAP支持 | 完全支持 |
简易情况用间隙单元,精密情况用完整接触定义,是这样区分使用吗?
没错。间隙单元用于仅需判断“接触/不接触”这种二值状态就足够的情况。如果接触面的压力分布或滑动很重要,则需要使用通用的接触定义。
总结
我来整理一下间隙单元的理论。
要点:
- 仅在间隙闭合时传递力 — 一维的接触单元
- 力 = 0(开)或 $k(\delta - g)$(闭) — 简单的非线性
- 管道支撑、挡块、间隙的建模 — 实际工作中常用
- Nastran CGAP 使用最广泛 — 简易接触的经典
- 精密接触需使用完整接触定义 — 间隙单元是简化模型
间隙单元的理论起源
在FEM中处理接触问题的最初尝试是1963年将赫兹接触理论用矩阵法扩展的研究。将间隙单元公式化的是Wilson & Parkes在1972年的论文,他们率先确立了将两点间的开闭作为“ON/OFF开关”处理的二元接触法。此方法是现在ANSYS CONTA171单元的原型。
各项的物理意义
- 惯性项(质量项):$\rho \ddot{u}$,即“质量×加速度”。您有过急刹车时身体被向前甩出去的经历吗?那种“被带走的感觉”正是惯性力。物体越重越难启动,一旦启动也越难停止。地震时建筑物摇晃,也是因为地面突然移动,而建筑物的质量“被落下”。静力分析中此项设为零,这是基于“缓慢施力所以加速度可以忽略”的假设。对于冲击载荷或振动问题,此项绝对不能省略。
- 刚度项(弹性恢复力):$Ku$ 或 $\nabla \cdot \sigma$。拉伸弹簧时能感觉到“想要恢复的力”吧?那就是胡克定律 $F=kx$,也是刚度项的本质。那么提问——铁棒和橡皮筋,用相同的力拉伸,哪个伸得更长?当然是橡皮筋。这种“不易伸长”的性质就是杨氏模量 $E$,它决定了刚度。常见的误解是:“刚度高=强度高”。不对,刚度是“不易变形”,强度是“不易破坏”,这是不同的概念。
- 外力项(载荷项):体积力 $f_b$(重力等)和表面力 $f_s$(压力、接触力等)。可以这样想——桥上卡车的重量是“作用在整个内部上的力”(体积力),轮胎压路面的力是“仅作用在表面上的力”(表面力)。风压、水压、螺栓的紧固力…全都是外力。这里容易犯的错误是:弄错载荷的方向。本想“拉伸”却变成了“压缩”——听起来像笑话,但在3D空间中坐标系发生旋转时,确实会发生。
- 阻尼项:瑞利阻尼 $C\dot{u} = (\alpha M + \beta K)\dot{u}$。试着弹一下吉他的弦。声音会一直持续吗?不,会逐渐变小。这是因为振动能量通过空气阻力或弦的内部摩擦转化成了热能。汽车的减震器也是同样原理——特意吸收振动能量来改善乘坐舒适性。如果阻尼为零会怎样?建筑物在地震后会一直摇晃下去。实际上不会这样,所以设置适当的阻尼很重要。
假设条件与适用范围
量纲分析与单位制
| 变量 | SI单位 | 注意点·换算备忘 |
|---|---|---|
| 位移 $u$ | m(米) | 输入mm时,载荷·弹性模量也需统一为MPa/N系 |
| 应力 $\sigma$ | Pa(帕斯卡)= N/m² | MPa = 10⁶ Pa。与屈服应力比较时注意单位制不一致 |
| 应变 $\varepsilon$ | 无量纲(m/m) | 注意工程应变与对数应变的区别(大变形时) |
| 弹性模量 $E$ | Pa | 钢:约210 GPa,铝:约70 GPa。注意温度依赖性 |
| 密度 $\rho$ | kg/m³ | mm系时为tonne/mm³(钢 = 10⁻⁹ tonne/mm³) |
| 力 $F$ | N(牛顿) | mm系用N,m系也用N统一 |
数值解法与实现
间隙单元的非线性解法
间隙单元是非线性的吧?线性分析中不能用吗?
间隙的开闭是状态变化,所以本质上是非线性的。但许多求解器会通过迭代法进行伪线性处理。
步骤:
1. 假设所有间隙单元为“开”进行线性分析
2. 检查各间隙的相对位移。将应闭合的间隙单元改为“闭”
3. 用更新后的刚度再次分析
4. 迭代直至所有间隙状态稳定
Nastran的SOL 101(线性静力分析)也能使用CGAP,就是靠这个迭代吗?
Nastran中正式使用CGAP的是SOL 106(非线性静力分析),但SOL 101也有进行CGAP开闭迭代的“线性接触”功能。比完全的非线性分析更快,但无法应对复杂的接触。
闭合刚度的设置
间隙闭合时的刚度 $k$ 怎么设置?
理想情况是“无限大”(完全刚性接触),但数值上使用罚函数法,采用有限的大刚度。
参考标准:
- $k \approx 10 \sim 100$ × 接触面的刚度(相当于 $EA/L$)
- 过大则条件数恶化,收敛困难
- 过小则穿透(penetration)过大
要找到“恰到好处的 $k$”似乎很难啊。
Abaqus的*CONTACT定义会自动计算罚刚度,但间隙单元需要手动设置。可以先用 $k$ = 结构刚度的10倍开始,调整至穿透量小于板厚的1%。
总结
我来整理一下间隙单元的数值方法。
要点:
- 通过迭代法收敛间隙的开闭 — 作为线性分析的迭代处理
- 闭合刚度取结构刚度的10〜100倍 — 过大或过小都不行
- Nastran的SOL 101也可实现简易接触 — 但SOL 106是正式方法
- 精密接触推荐使用完整接触定义 — 间隙单元是简化模型
罚函数法与拉格朗日法
间隙单元的数值实现有罚函数法和拉格朗日乘子法两种体系。罚函数法无需改变刚度矩阵维度,实现容易,但罚系数的选择直接影响精度。1974年Bathe和Wilson证明了拉格朗日法条件数更稳定,这成为此后高精度接触求解器开发的指导方针。
线性单元(一阶单元)
节点间线性插值。计算成本低,但应力精度低。注意剪切自锁(可通过减缩积分或B-bar法缓解)。
二阶单元(带中间节点)
可表现曲线变形。应力精度大幅提高,但自由度约增加2〜3倍。推荐:应力评估很重要时。
完全积分 vs 减缩积分
完全积分:有过约束(自锁)风险。减缩积分:沙漏模式(零能量模式)风险。根据情况选择。
自适应网格
基于误差指标(ZZ估计量等)的自动细化。有效提高应力集中部位的精度。有h法(单元细分)和p法(增加阶次)。
牛顿·拉弗森法
非线性分析的标准方法。每次迭代更新切线刚度矩阵。在收敛半径内具有二阶收敛性,但计算成本高。
修正牛
なった
詳しく
報告