年初开始系统用 COMSOL 做传质和流场的耦合,前三个月大部分返工都不是网格太粗或者求解器没调好,而是边界条件从一开始就设错了。这里记三个最常见的,以及各自会以什么方式暴露出来。
一、对称边界不是“什么都不要动”
二维轴对称模型里,很多人只记得几何画成一半,却忘了轴对称意味着法向通量为零。在传质问题里,这对应的是零通量而不是“浓度不变”。如果错误地给了固定浓度,表面看起来收敛得很好,但总通量会凭空多出来一块,和解析解对不上。
自查办法:做完之后对边界做积分,看物质是否守恒。守恒了基本没问题。
二、绝热 / 无滑移混用
换热和流动耦合的时候,固体壁面同时需要两个条件:热学上的绝热(或给定热流),力学上的无滑移。新手常只设了热学那一边,忘了无滑移,结果速度场在壁面处滑移,整个自然对流就变成了另一个问题——它依然会收敛,只是算的是别的东西。
记忆方法:物理量是标量还是矢量,边界条件要分别交代。
三、入口条件的“充分发展”假设
入口给抛物线速度分布,是假设流动已经充分发展。但我的几何入口离扰动区太近,这个假设并不成立,导致入口附近结果偏了大约 8%。改造办法是把入口向上游平移几个特征长度,或者用“充分发展”边界条件让软件自己解。
小结
- 每设一个边界,先问是“约束值”还是“约束通量”
- 标量和矢量边界条件别混着设
- 算完做守恒检查,比看彩色云图有用
后面想把这三个错误整理成一张检查表,每次建模前过一遍。