多物理场拓扑优化 — 使用SIMP法同时优化结构、热和流体
理论:用连续变量寻找材料放在哪里
概述
我想把支撑发热元件的支架做得既轻又散热好。拓扑优化能同时优化结构和热吗?
可以。拓扑优化把设计区域分成细小单元,决定每个单元是否放材料,寻找最佳形状。每个单元选0或1的组合数量巨大,所以SIMP法把密度设为0~1的连续值,材料性质用密度的幂次表示。把结构刚度和导热都放进目标,就能得到兼顾两者的形状。但连续化带来的“中间密度”需要注意处理。
SIMP法的材料模型
$\rho_e$ 为单元密度,$k_0$ 为材料导热系数(结构则为弹性模量),$k_{min}$ 为保证计算稳定的小值,$p$ 为惩罚系数。$p = 3$ 时,密度0.5的单元用了一半材料性能却只有1/8。正是这种“吃亏”使优化避开中间密度而趋向0或1。
目标与约束
对热问题,使发热 $\mathbf{f}$ 与温度 $\mathbf{T}$ 的乘积(热柔度)最小,得到平均温度低、导热好的布置。$V^*$ 为可用材料比例。结构问题对应载荷与位移的乘积(柔度),寻找刚度高的布置。
从1988年的论文到汽车零件
拓扑优化以1988年本德索与菊池关于均匀化法的论文为标志正式起步,该方法考虑材料内部有细小孔洞的状态,优化孔的大小。此后更简单的SIMP法普及开来,21世纪初被集成到商业软件中,用于汽车和飞机的轻量化。金属增材制造普及后,优化得到的复杂形状可以直接制造,结合热、结构、流体的优化也进入了实用阶段。
算例:散热路径优化
条件
把正方形板分成40×40个单元,整体均匀发热,只有左边中央一小段保持0 ℃(从那里散热)。导热材料只能占面积的40%,使热柔度最小。比较基准是同样多的材料均匀铺开的布置(导热系数0.4)。
结果
| 条件 | 优化值(与基准比) | 中间密度单元 | 取整为0/1的设计(与基准比) |
|---|---|---|---|
| p = 1,滤波半径1.5,150次 | 50% | 66% | 1,905%(约19倍) |
| p = 3,滤波半径1.5,150次 | 75% | 51% | 121% |
| p = 3,滤波半径1.2,300次 | 71% | 41% | 96% |
p = 1在优化中数值好得多,取整后却不能用了。
对。p = 1时中间密度不吃亏,材料被薄薄地铺开,形成灰色结果。热能通过,但“导热系数一半的材料”现实中造不出来。取整为0/1后细通路断开,比均匀布置差了19倍。p = 3时中间密度减少,取整后仍留下比均匀布置稍好的设计。即使如此,这个小例子中仍有约四成是灰色;实际中需要更细的网格、使密度清晰的处理(投影)以及逐步提高惩罚系数的做法。优化结果一定要按0/1取整后的形状重新分析确认。
组合结构与热
把单位和大小不同的目标直接相加,只有数值大的会被优化。用初始值归一化,改变权重 $w_1, w_2$ 生成多个设计。并列比较不同权重的结果,就能看到例如稍微牺牲刚度就能大幅改善散热的点(帕累托解)。像热膨胀引起应力这样两个物理场直接相连时,必须在优化中求解耦合分析。
实务步骤
步骤
- 区分可设计区域和固定区域(安装面、发热部)。
- 按实际使用中最严酷的组合给定载荷、发热和边界条件。
- 通过惩罚、滤波、投影的设置得到灰色少的结果。
- 取整为0/1,重建为光滑形状,按原条件重新分析。
- 加入制造约束(增材制造的悬垂、铸造的拔模方向等)重新优化。
“优化出来全是细枝”
在细网格上做散热优化,有时会出现像树枝一样细细分叉的形状。对集热来说这是合理的,但网格越细枝也越细,最终细到无法制造。按实际最小壁厚设定滤波半径,就能得到与网格无关的枝宽。滤波不仅是为了数值稳定,也是让形状可制造的设计条件。
常见错误
错误与对策
| 错误 | 后果 | 对策 |
|---|---|---|
| 直接评估灰色结果 | 高估性能 | 取整为0/1重新分析 |
| 惩罚系数太小 | 无法制造的中间材料 | p ≈ 3并逐步提高 |
| 随意确定滤波半径 | 枝过细、依赖网格 | 按最小壁厚确定 |
| 不归一化就相加 | 只优化了一个目标 | 用初始值归一化 |
| 只有一个载荷工况 | 在其他工况下薄弱 | 加入多个工况 |
我想自己试试拓扑优化。