3. 单元类型与选择:一维、二维、三维及阶次原则
单元选不对,算得再热闹也是白搭。我见过太多人把时间花在调网格上,结果一查,单元类型压根不适合这个问题。今天咱们就把这事掰扯清楚。
3.1 单元维度:从一维到三维
有限元里的单元,说白了就是数学上的“形状函数”加“节点”。维度不同,能模拟的物理行为也不同。
核心原则:能用低维就别用高维。一维能解决的事,别拉成二维;二维能搞定的,别堆三维。省下的计算时间,够你喝好几杯咖啡。
3.1.1 一维单元(梁、杆、弹簧)
一维单元只有两个节点,沿着一条线变形。我习惯叫它“线单元”。
- 杆单元(Truss / Rod):只承受轴向拉压,不能弯曲。适合桁架、拉索、支撑结构。
- 梁单元(Beam):能承受弯矩、剪力、扭矩。适合框架、轴类、长细结构。
- 弹簧单元(Spring):只模拟刚度或阻尼,常用于边界条件或连接模拟。
我的经验:做桥梁或塔架分析时,我习惯先用一维梁单元做全局快速评估。等找到危险区域,再切出局部做二维或三维细化。这样效率高得多。
3.1.2 二维单元(平面应力、平面应变、壳)
二维单元有三个或四个节点,在平面内变形。注意,二维单元不是“平的模型”,而是假设某个方向上的行为可以忽略或简化。
| 类型 | 适用场景 | 典型例子 |
|---|---|---|
| 平面应力 | 厚度远小于其他尺寸,且面外应力可忽略 | 薄板、冲压件、膜结构 |
| 平面应变 | 厚度远大于其他尺寸,且面外应变为零 | 长坝体、隧道截面、厚壁管 |
| 壳单元 | 薄壁结构,能承受弯曲和膜力 | 车身蒙皮、压力容器、飞机蒙皮 |
嗯,这里要注意:壳单元虽然也是二维拓扑,但它有转动自由度,能模拟弯曲。平面应力/应变单元只有平动自由度,不能算弯曲。
3.1.3 三维单元(实体单元)
三维单元有四个(四面体)或八个(六面体)节点,能模拟任意方向的变形和应力。但代价是计算量爆炸。
- 四面体(Tet):自动网格划分方便,适合复杂几何。但精度一般,容易偏刚。
- 六面体(Hex):精度高,抗畸变能力强。但手动划分费时,复杂几何很难全六面体。
- 楔形(Wedge):过渡用,不常用做主单元。
避坑指南:我曾经接手一个项目,同事用一阶四面体算一个悬臂梁的应力集中,结果应力值比理论解高了40%。后来换成二阶六面体,结果就对了。记住:一阶四面体是“常应变单元”,应力梯度大的地方千万别用。
3.2 单元阶次:线性 vs 二次
阶次,就是单元内部位移函数的最高次数。线性单元(一阶)只有角节点,二次单元(二阶)在边中点还有节点。
3.2.1 线性单元的特点
- 优点:计算快,内存占用小,适合大变形和接触问题(不易穿透)。
- 缺点:应力精度差,弯曲问题容易“剪切闭锁”(算出来偏刚)。
- 典型场景:碰撞分析、显式动力学、粗网格全局评估。
3.2.2 二次单元的特点
- 优点:应力精度高,能准确捕捉应力集中和弯曲变形。
- 缺点:计算慢,接触穿透风险大,大变形时容易畸变。
- 典型场景:静力强度分析、疲劳评估、模态分析。
选择口诀:算应力用二次,算位移用一次;静力用二次,动力用一次;精度优先用二次,效率优先用一次。
3.3 单元选择决策流程
你想想看,拿到一个模型,怎么快速决定用哪种单元?我一般按这个流程走:
- 看几何特征:细长结构(长径比 > 10)→ 一维梁/杆;薄壁结构(厚度/跨度 < 1/10)→ 壳单元;实体块 → 三维实体。
- 看关注区域:全局变形和频率 → 低阶粗网格;局部应力集中 → 高阶细网格。
- 看计算资源:时间紧 → 线性单元 + 粗网格;精度要求高 → 二次单元 + 细网格。
- 看非线性程度:大变形、接触 → 线性单元(减缩积分更好);小变形、线弹性 → 二次单元。
我的习惯:做新项目时,我会先用线性单元跑一遍,看看整体趋势对不对。如果趋势合理,再在关键区域加密或换二次单元。这样既不会浪费时间,也不会漏掉问题。
3.4 常见误区与避坑
| 误区 | 后果 | 正确做法 |
|---|---|---|
| 所有地方都用一阶四面体 | 应力结果严重偏大或偏小 | 应力集中区用二阶六面体或二阶四面体 |
| 薄壁结构用实体单元 | 厚度方向网格层数不够,弯曲刚度失真 | 用壳单元,厚度方向只需一层 |
| 梁单元忽略剪切变形 | 短粗梁算出来偏柔 | 使用Timoshenko梁单元(考虑剪切) |
| 二次单元用于接触 | 接触穿透、收敛困难 | 接触区用线性单元,或使用专门接触算法 |
我曾经踩过的坑:有一次做压力容器的疲劳分析,我用了一阶四面体单元,结果应力集中区的应力值比实测低了30%。后来换成二阶六面体,结果就对上了。从那以后,凡是涉及疲劳寿命评估的,我坚决不用一阶四面体。
3.5 小结:选单元就是选“假设”
选单元类型,本质上是在选择你对物理问题的假设。一维假设“只有轴向或弯曲”,二维假设“厚度方向可忽略”,三维假设“全自由度”。假设越少,计算越贵,但不一定更准——如果假设本身就不合理,再细的网格也救不了。
所以我的建议是:先想清楚问题本质,再选单元。别一上来就拉三维实体,也别为了省事全用一阶四面体。合适的单元,比加密网格更重要。