1. 子模型技术总览
在有限元分析中,一个反复出现的矛盾是:整体结构尺寸大、关注区域却很小。若为了看清某个圆角、焊缝或接触区的应力集中,把整个模型都加密到局部所需的网格尺度,计算规模往往迅速膨胀到不可接受;若只按整体尺度划分网格,局部峰值应力又会被严重低估。子模型技术(Submodeling)正是为解决这一矛盾而生的方法:先用较粗网格求解整体模型,再把整体解作为边界条件“传递”到一个独立、精细的局部模型上,从而以可控的代价获得局部的高精度结果。
基本思想:把“整体响应”与“局部细节”解耦
子模型方法的核心是圣维南原理。它指出:如果作用在物体局部区域的一小部分边界上的载荷被另一组静力等效的载荷替代,则远离该区域的应力分布所受影响可以忽略。反过来理解就是——只要切割边界离应力集中区足够远,那么边界上的位移场主要由整体结构的宏观变形决定,而几乎不受局部细节(圆角、孔洞、裂纹)的影响。因此,我们可以把整体分析在切割边界上的位移结果提取出来,施加到精细子模型上,子模型内部的应力集中就能被准确捕捉。
这一思想带来两个关键结论:其一,子模型的精度取决于切割边界的位置,而非整体模型的网格密度;其二,子模型是一次“单向数据传递”,整体解影响子模型,子模型不反过来影响整体解。理解这两点,是正确使用子模型技术的前提。
适用场景:什么时候该用子模型
子模型并非万能,它最适合以下几类问题:
- 大尺寸结构中的局部应力集中:如压力容器接管区、管道三通、桥梁节点、焊接接头。整体模型用壳单元或粗实体网格,子模型用精细实体网格。
- 接触与非线性局部细节:整体分析可近似为线性,子模型再引入接触、塑性、摩擦等非线性,避免整体模型因非线性而难以收敛。
- 多尺度或多物理场耦合:整体做传热分析得到温度场,子模型做热-结构耦合,提取局部热应力。
- 计算资源受限的重复分析:整体模型只求解一次,之后反复调整局部几何或材料,只需重算子模型。
反之,若局部细节会显著改变整体刚度或载荷路径(例如整体结构本身就是一个薄壁柔性件,局部开孔直接改变整体传力),则子模型假设不再成立,此时应考虑整体-局部一体化建模或双向耦合方法。
与整体-局部建模的对比
整体-局部建模(Global-Local)通常指在同一模型中通过网格过渡、子结构或耦合约束实现局部加密。它与子模型的关键差异在于求解域是否分离。整体-局部建模中,整体与局部在同一求解域内,刚度矩阵统一组装,局部细节会反馈到整体;子模型则是两个独立求解域,通过边界条件传递数据,整体解不受局部影响。
| 对比维度 | 子模型方法 | 整体-局部一体化建模 |
|---|---|---|
| 求解域 | 整体与局部分离,两次求解 | 同一模型,一次求解 |
| 数据传递 | 单向:整体位移/温度 → 子模型 | 双向:刚度直接耦合 |
| 局部反馈 | 无 | 有,局部影响整体 |
| 网格过渡 | 无需过渡,边界独立 | 需过渡单元或绑定约束 |
| 计算成本 | 整体粗算 + 局部精算,可控 | 整体规模受局部网格牵制 |
| 适用条件 | 局部远离主要传力路径 | 局部显著影响整体响应 |
选择时的一个实用判据是:如果去掉局部细节后整体位移场变化很小,子模型是高效选择;如果局部细节直接决定整体刚度或稳定性,则应采用一体化建模。
在 Abaqus 中的实现路径
Abaqus 提供了完整的子模型工作流,核心操作分为三步:
- 整体分析:建立整体模型并求解,确保输出切割边界处的位移场。在 Step 模块中勾选边界节点的位移输出(U),必要时输出温度(NT)。建议整体模型在切割边界附近网格适当细化,以保证插值精度。
- 子模型建模:新建一个独立的 Model,建立局部精细几何与网格。在 Load 模块中使用
Boundary Condition → Submodel,选择整体分析的 ODB 文件,指定驱动变量为位移(或温度),并选择切割边界上的节点集。 - 求解与验证:提交子模型分析。验证时,将子模型边界附近的应力与整体模型对应位置对比,若差异在 5% 以内,说明切割边界合理;若差异较大,应将切割边界外移后重新计算。
*STEP, NAME=Submodel
*SUBMODEL, TYPE=DISPLACEMENT, ODB=global.odb, STEP=1
*BOUNDARY, SUBMODEL
NODE_SET_CUT, 1, 3
*END STEP
TYPE=TEMPERATURE 驱动,随后进行热应力分析。