4. 几何建模与网格划分:从CAD到可计算模型

做多物理场仿真这么多年,我有个深刻的体会:仿真80%的问题,其实都出在几何和网格上。你想想看,物理场设置再精确,边界条件再完美,如果几何有瑕疵、网格质量差,结果照样是废的。

这一章,我就把几何建模和网格划分的那些坑,一个一个给你讲清楚。

4.1 CAD模型导入:别让导入成为第一道坎

很多工程师拿到CAD模型,直接往COMSOL或ANSYS里一拖,就开始划分网格。结果呢?报错、死机、网格畸形……我刚开始做项目时也吃过这个亏。

CAD模型导入,说白了就是格式转换。不同软件之间的数据交换,总会有信息丢失。我个人习惯用这几种格式:

格式 适用场景 注意事项
STEP (.stp/.step) 通用格式,几乎所有CAD都支持 保留实体和装配关系,推荐首选
IGES (.igs) 老牌格式,曲面模型 容易产生碎面,慎用
Parasolid (.x_t) ANSYS原生格式 导入速度快,但兼容性一般
STL (.stl) 3D打印/逆向工程 只有三角面片,无法编辑几何
我的经验:做多物理场耦合时,尽量用STEP格式。它既能保留几何精度,又不会像IGES那样产生一堆碎面。有一次我处理一个汽车散热器的模型,IGES导进来有200多个碎面,清理了整整一天……后来改用STEP,10分钟搞定。

4.2 几何清理:仿真前的必修课

CAD模型是为制造设计的,不是为仿真设计的。你想想看,一个螺栓孔、一个倒角、一条装饰线,在制造中很重要,但在仿真中只会增加网格数量、降低计算效率。

几何清理的核心原则就四个字:化繁为简

我一般按这个顺序清理:

  1. 去除小特征:倒角、圆角、小孔(直径小于网格尺寸的1/5)
  2. 修复缝隙:面与面之间的微小间隙,用"缝合"功能处理
  3. 删除重复面:导入时经常产生重叠的面
  4. 简化装配体:把螺栓、垫片等小零件合并或删除
  5. 创建虚拟拓扑:把多个小面合并成一个面
警告:几何清理不是越干净越好。我曾经为了省网格,把一个散热片的翅片全部简化掉了,结果热仿真结果差了30%。关键特征一定要保留,比如散热翅片、流道、电极等。

4.3 网格类型选择:四面体 vs 六面体

这是每个仿真工程师都会纠结的问题。四面体网格自动生成方便,六面体网格精度高。到底选哪个?

我画了一张图,帮你理清思路:

网格类型选择决策流程 几何模型 几何复杂? 四面体网格 自动生成,适应性强 六面体网格 精度高,计算快 检查网格质量 检查网格质量 开始求解 开始求解

具体怎么选?我给你几个实战建议:

  • 四面体网格:适合复杂几何(人体、涡轮叶片、不规则腔体)。COMSOL默认就是四面体,生成速度快,但单元数量多,计算慢。
  • 六面体网格:适合规则几何(长方体、圆柱、管道)。ANSYS的六面体网格质量高,单元少,计算快。但手动划分很费时间。
  • 混合网格:我经常用的一种方式。关键区域用六面体,非关键区域用四面体。比如一个电机仿真,定子用六面体,端部绕组用四面体。

核心原则:不要为了六面体而六面体。如果一个几何需要花3天时间才能切成六面体,而四面体只需要1小时,那就用四面体。仿真效率比网格类型更重要。

4.4 网格质量评估:别让坏网格毁了你的仿真

网格画完了,不代表就能直接算。我见过太多人,网格画完看都不看,直接点求解。结果算到一半发散,或者结果明显不对。

网格质量评估,说白了就是检查网格有没有"病"。常见的指标有这几个:

指标 理想值 可接受值 说明
偏斜度 (Skewness) 0-0.25 0-0.85 越接近0越好,>0.95的单元必须处理
正交质量 (Orthogonal Quality) 0.95-1.0 0.15-1.0 越接近1越好,<0.01的单元会出问题
纵横比 (Aspect Ratio) 1-3 1-10 边界层网格可以到100,但内部网格要控制
雅可比 (Jacobian Ratio) 1.0 0.7-1.0 负雅可比意味着单元翻转,必须修复

嗯,这里要注意:不要只看平均值,要看最差值。一个坏单元就能让整个仿真发散。我有个习惯,每次画完网格,先看最差的10个单元在哪里,然后手动修复。

避坑指南:我曾经做一个流固耦合项目,网格质量平均值0.92,看起来很好。但有一个单元的偏斜度是0.97,结果那个位置的压力计算值直接爆表。后来花了半天时间,把那个单元周围的网格重新画了一遍,问题就解决了。所以记住:木桶效应在网格质量上同样适用

4.5 实战技巧:网格划分的"黄金法则"

做了这么多年仿真,我总结了几条网格划分的黄金法则,分享给你:

  1. 先粗后细:先用粗网格跑一遍,看趋势对不对。没问题了,再加密网格做精确计算。
  2. 局部加密:梯度大的地方(边界层、应力集中区、流道拐角)加密,其他地方可以粗一些。
  3. 网格过渡要平滑:相邻单元的尺寸比不要超过1.5倍。突然从粗网格跳到细网格,会产生数值误差。
  4. 边界层至少3层:对于流体和热仿真,边界层网格至少3层,最好5层以上。
  5. 网格无关性验证:加密网格后,如果结果变化小于5%,说明网格已经够用了。

最后说一句:网格划分不是一次性的工作。你可能会反复调整好几次,才能找到最优的网格方案。别急,慢慢来,网格质量上去了,仿真结果才有说服力。


公众号:蓝海资料掘金营,微信deep3321