第3章:有限元法入门:离散化思想、形函数与单元类型
各位工程师朋友,今天我们来聊聊有限元法的核心思想。说实话,我刚入行那会儿,觉得有限元就是个黑盒子——网格一画,边界一设,点个计算就出结果。直到有一次,我算一个悬臂梁的挠度,怎么算都对不上实验数据。折腾了两天,最后发现是单元类型选错了。嗯,从那以后,我才真正开始理解:有限元法不是魔法,它背后有一套非常清晰的逻辑。
3.1 离散化思想:把连续问题拆成小块
有限元法的本质,说白了就是「化整为零,积零为整」。你想想看,一个连续体有无限多个点,我们不可能把每个点的位移都算出来。那怎么办?我们把整个区域切成有限个小块——这就是「离散化」。
每个小块我们叫它「单元」,单元之间通过「节点」连接。我个人的习惯是,把单元想象成乐高积木。一块积木的形状很简单,但很多块拼在一起,就能搭出复杂的结构。
离散化有两个关键点:
- 网格密度:网格越密,结果越准,但计算量也越大。我在做汽车底盘分析时,应力集中区域网格加密到0.5mm,其他地方用5mm,这叫「局部细化」。
- 单元形状:三角形、四边形、四面体、六面体……形状越规整,计算精度越高。我曾经见过一个新手,把六面体拉得奇形怪状,结果算出来的应力值直接翻倍。
核心思想:有限元法不是求解连续体的精确解,而是用有限个离散单元的组合,去逼近真实解。你切的单元越多、越合理,逼近效果就越好。
3.2 形函数:单元内部的插值工具
有了单元和节点,我们只知道节点上的位移。那单元内部任意一点的位移怎么算?这就需要「形函数」了。
形函数,说白了就是一个插值函数。它告诉我们:单元内部某点的位移,等于该单元所有节点位移的加权平均。权重就是形函数的值。
举个例子,一个一维杆单元,有两个节点。假设节点1的位移是u₁,节点2的位移是u₂。那么单元内部任意一点x的位移u(x)可以写成:
u(x) = N₁(x)·u₁ + N₂(x)·u₂
其中N₁和N₂就是形函数。对于一维线性单元:
N₁(x) = 1 - x/L
N₂(x) = x/L
L是单元长度。你看,在节点1处(x=0),N₁=1,N₂=0,所以u(0)=u₁。在节点2处(x=L),N₁=0,N₂=1,所以u(L)=u₂。完美吻合。
我的经验:形函数有一个重要性质——所有形函数之和等于1。这保证了刚体位移的精确描述。我检查形函数对不对,第一件事就是看这个和是不是1。
3.3 单元类型:选对工具才能干好活
单元类型的选择,直接决定了分析的成败。我见过太多人,不管什么结构都用四面体,结果算出来的应力值偏差30%以上。下面我整理了一份常用单元类型表,供你参考。
| 单元类型 | 维度 | 节点数 | 典型应用 | 我的建议 |
|---|---|---|---|---|
| 杆单元 | 1D | 2 | 桁架、拉杆 | 只承受轴向力,别用在弯曲问题上 |
| 梁单元 | 1D | 2 | 框架、轴类 | 能承受弯矩,适合细长结构 |
| 三角形单元 | 2D | 3 | 不规则形状的平面问题 | 精度一般,适合过渡区域 |
| 四边形单元 | 2D | 4 | 规则形状的平面问题 | 精度高,我优先选它 |
| 四面体单元 | 3D | 4 | 复杂三维结构 | 自动网格生成方便,但精度偏低 |
| 六面体单元 | 3D | 8 | 规则三维结构 | 精度最高,但网格划分费时 |
避坑指南:我曾经用四面体单元算一个支架的应力集中区,结果最大应力比实验值高了40%。后来换成六面体单元,误差降到了5%以内。记住:应力分析尽量用六面体或四边形,四面体和三角形只适合做初步估算。
3.4 知识体系总览
下面这张图,是我自己总结的有限元法入门知识框架。你看一遍,应该能对本章内容有个整体把握。
3.5 实战中的选择逻辑
说了这么多理论,咱们来点实际的。你在做仿真时,到底该怎么选?我一般按这个顺序来:
- 先看几何形状:规则形状用六面体/四边形,不规则用四面体/三角形。
- 再看分析类型:线性静力分析用低阶单元就够,非线性或接触分析最好用高阶单元。
- 最后看关注区域:应力集中区用高阶单元+细网格,远离关注区用低阶单元+粗网格。
一个小技巧:我每次做新项目,都会先用粗网格跑一遍,看看整体趋势对不对。确认没问题了,再加密网格做精确分析。这样能省下大量试错时间。
好了,关于有限元法的入门知识,咱们就聊到这儿。离散化思想是根基,形函数是工具,单元类型是武器。这三样东西搞明白了,后面的刚度矩阵、载荷向量、求解器这些,学起来就顺风顺水了。
公众号:蓝海资料掘金营,微信deep3321