4、网格划分基础:网格密度、网格质量指标(长宽比、雅可比、翘曲度)
网格划分这件事,说白了就是给模型“切肉丁”。肉丁切得太大,炖不烂(算不准);切得太小,费柴火(算不动)。我见过不少新手,一上来就追求“全加密”,结果算了一个礼拜还没出结果。其实,网格划分的核心就两件事:密度怎么定,质量怎么判。
这一章,咱们就聊聊这两个核心问题。我会结合自己这些年踩过的坑,把网格密度和几个关键质量指标讲透。
4.1 网格密度:不是越密越好
网格密度,就是单元的大小。你想想看,一个弯曲的曲面,你用大块平板去拼,肯定有缝隙;用小块去拼,就贴合得好。但代价是单元数量暴增,计算时间成倍上涨。
我个人习惯,先问自己三个问题:
- 关注什么结果? 应力?位移?还是模态频率?
- 哪里是重点区域? 圆角、孔边、接触区?
- 允许的误差是多少? 5%?10%?
回答完这三个问题,密度策略就出来了。我一般遵循“梯度过渡”原则:
- 关键区域加密:应力集中区、几何突变区,单元尺寸取全局的 1/3 到 1/5。
- 非关键区域粗化:远离载荷和约束的均匀区域,用大单元。
- 过渡区平滑:相邻单元尺寸比不超过 1.5 倍,否则会引入额外误差。
4.2 网格质量指标:四个关键参数
网格画好了,不等于就能算。你得检查质量。就像盖房子,砖头形状不规整,墙就容易塌。有限元也一样,畸形的单元会导致刚度矩阵病态,结果失真甚至不收敛。
我重点讲四个指标:长宽比、雅可比、翘曲度、偏斜度。前三个是“硬指标”,第四个是“软指标”。
| 指标名称 | 含义 | 理想值 | 可接受值 | 警告值 |
|---|---|---|---|---|
| 长宽比 (Aspect Ratio) | 单元最长边与最短边之比 | 1.0 | < 5.0 | > 10.0 |
| 雅可比 (Jacobian) | 单元映射变形程度的度量 | 1.0 | > 0.7 | < 0.4 |
| 翘曲度 (Warpage) | 单元节点偏离平面的程度 | 0° | < 5° | > 15° |
| 偏斜度 (Skewness) | 单元偏离理想形状的角度 | 0° | < 30° | > 60° |
4.2.1 长宽比 (Aspect Ratio)
这个指标最直观。一个正方形,长宽比是 1。一个细长条,长宽比就很大。为什么不能太大?因为细长单元在短边方向刚度被高估,长边方向被低估,导致应力结果失真。
我在项目中遇到过一件事:一个薄壁件,用细长单元划分,算出来的最大应力比实验值高了 30%。后来一查,长宽比到了 15。重新划分后,结果就正常了。
4.2.2 雅可比 (Jacobian)
雅可比是个数学概念,衡量的是单元从“理想形状”映射到“实际形状”时的变形程度。说白了,就是单元扭曲得有多厉害。
雅可比为 1,说明单元是完美的正方形或正四面体。雅可比接近 0,说明单元几乎被压扁了。雅可比为负值,说明单元发生了“内翻”,这是绝对不允许的——计算会直接报错。
我检查网格时,会重点关注雅可比小于 0.5 的单元。这些单元通常出现在:
- 小圆角过渡区
- 复杂曲面交汇处
- 四面体网格的退化区域
嗯,这里要注意:二阶单元对雅可比更敏感。同样形状的一阶单元可能还能算,换成二阶单元就可能报错。因为二阶单元的中间节点会加剧扭曲效应。
4.2.3 翘曲度 (Warpage)
翘曲度只针对壳单元和四边形单元。一个理想的四边形,四个节点共面。如果有一个节点翘起来了,就产生了翘曲。
翘曲度用角度来度量。0° 表示完全共面。我一般要求:
- 主要承载区:翘曲度 < 5°
- 一般区域:翘曲度 < 10°
- 超过 15°:必须重新划分
为什么翘曲度这么重要?因为翘曲的四边形单元,在计算弯曲刚度时会产生虚假的“膜-弯耦合”,导致结果偏硬或偏软。我曾经用翘曲度 20° 的壳单元算一个钣金件的弯曲,结果刚度比实验值高了 40%。后来把网格重画,翘曲度降到 3°,结果就对上了。
4.2.4 偏斜度 (Skewness)
偏斜度衡量的是单元内角偏离理想角度的程度。对于四边形,理想内角是 90°;对于三角形,理想内角是 60°。
偏斜度越大,单元越“歪”。偏斜度大的单元,计算精度会下降,但通常不会导致不收敛。所以我说它是“软指标”。
我个人习惯,偏斜度超过 60° 的单元,我会手动调整。但如果是四面体网格,偏斜度 70° 以内也可以接受——因为四面体本身对偏斜的容忍度比六面体高。
4.3 网格质量检查流程
每次划分完网格,我都会按这个流程走一遍:
- 整体预览:看有没有明显的畸形单元、负体积、重复节点。
- 运行质量检查:用软件自带的检查工具,生成质量报告。
- 定位坏单元:用颜色云图显示质量最差的单元位置。
- 局部修复:调整节点位置、重新划分局部区域、或改变单元类型。
- 重新检查:修复后再次运行质量检查,确保没有引入新问题。
这个流程,我建议你养成习惯。别等到算完才发现网格有问题,那时间就白花了。
4.4 知识结构图:网格划分核心逻辑
下面这张图,我把网格划分的核心逻辑梳理了一下。你可以把它当作一个检查清单。
4.5 常见网格问题与修复方法
最后,我列几个我经常遇到的网格问题,以及对应的修复方法。你可以对照着检查自己的模型。
| 问题现象 | 可能原因 | 修复方法 |
|---|---|---|
| 雅可比为负值 | 单元内翻,节点顺序错误 | 重新生成该区域网格,或手动调整节点位置 |
| 长宽比过大 | 局部单元拉伸过度 | 增加该方向网格密度,或改变单元形状 |
| 翘曲度过大 | 四边形节点不共面 | 将四边形拆分为两个三角形,或调整节点 |
| 偏斜度过大 | 单元内角偏差大 | 重新划分该区域,或使用更规则的网格 |
| 网格不连续 | 相邻单元节点不匹配 | 使用“合并节点”功能,或重新划分交界区 |