3. 几何建模与导入:CAD模型清理、简化与修复、参数化建模、不同CAD格式的导入导出

各位同学,咱们今天聊聊几何建模与导入。说实话,这是多物理场仿真里最容易被低估的一环。很多人觉得,模型嘛,从CAD软件导出来,再往仿真软件里一扔,完事。我刚开始做仿真那会儿也这么想,结果呢?网格剖分失败、求解不收敛、结果离谱……后来才明白,几何模型的质量,直接决定了仿真的成败。今天我就把这些年踩过的坑、攒下的经验,一股脑儿倒给你们。

3.1 为什么几何模型需要“大扫除”?

你想想看,CAD工程师画图的时候,考虑的是加工、装配、美观。他们会在模型上留下圆角、倒角、螺纹、小孔、甚至一些装饰性的曲面。这些细节在机械设计里是宝贝,但在仿真里,它们就是“捣蛋鬼”。

为什么?因为仿真软件要基于几何模型去画网格。一个微小的圆角,可能就需要成千上万个网格单元去描述。结果呢?计算量暴增,求解时间从几分钟变成几小时,甚至直接内存溢出。更气人的是,这些细节对物理场的影响微乎其微。说白了,就是白费力气。

所以,几何清理的核心思想就是:删繁就简,去伪存真。只保留对物理场有实质影响的几何特征。

核心原则: 在保证仿真精度的前提下,尽可能简化几何模型。这是一个权衡的艺术。

3.2 CAD模型清理:从“毛坯房”到“精装修”

拿到一个CAD模型,我一般会按以下步骤来“打扫卫生”:

  1. 去除小特征:比如小孔、小凸台、倒角、圆角。判断标准是什么?我个人的习惯是:如果特征尺寸小于网格尺寸的1/5,直接干掉。
  2. 修复几何缺陷:比如缝隙、重叠面、错位边。这些在CAD里可能看不出来,但仿真软件一读入,就会报错。
  3. 简化复杂曲面:把样条曲面、NURBS曲面,用平面或圆柱面去近似。只要不改变主要流道或传热路径,就没问题。
  4. 删除冗余实体:比如螺栓、垫片、密封圈。这些部件在结构分析里可能重要,但在流体或热分析里,往往是累赘。
我的小技巧: 在COMSOL或ANSYS里,都有“几何修复”向导。我建议你先用自动修复跑一遍,再手动检查。自动修复能解决80%的问题,剩下的20%才是考验功力的时候。

3.3 几何简化:该“砍”就“砍”,别手软

简化不是瞎砍。你得知道哪些能砍,哪些不能砍。我举个例子:

有一次,我仿真一个热交换器。CAD模型里密密麻麻全是翅片,每个翅片上还有小圆角。我一开始老老实实全保留,结果网格数量直接破千万,算了一个礼拜没出结果。后来我一狠心,把圆角全去掉,翅片用薄板代替。结果呢?计算时间缩短到2小时,温度场误差不到3%。

所以,简化的原则是:抓住主要矛盾,忽略次要矛盾

常见的简化操作包括:

  • 薄壳化:把薄壁结构(如管道、外壳)用壳单元代替。厚度方向用一层网格搞定。
  • 对称化:如果模型有对称面,只建1/2、1/4甚至1/8模型。计算量直接减半再减半。
  • 去圆角化:把圆角变成直角。除非你专门研究应力集中,否则放心砍。
  • 合并实体:把多个接触的零件合并成一个实体。省去定义接触对的麻烦。
注意: 简化不是万能的。如果你研究的是接触应力、疲劳寿命,那圆角、倒角一个都不能少。一定要根据物理问题的本质来决定。

3.4 参数化建模:让模型“活”起来

参数化建模,说白了就是给模型的尺寸起个名字。比如,把管道的直径叫 D,长度叫 L。这样,你改一个数字,整个模型就跟着变。这在做优化设计时,简直是神器。

我习惯在建模之初,就把所有关键尺寸都参数化。哪怕你暂时用不到,也先设好。为什么?因为项目后期,客户突然说“把直径改大10%”,你只需要改一个参数,模型、网格、求解全部自动更新。那种感觉,爽!

在COMSOL里,参数化建模的代码大概长这样:

// 定义参数
D = 0.1 [m]   // 管道直径
L = 1.0 [m]   // 管道长度
t = 0.005 [m] // 壁厚

// 创建圆柱
geom1 = cylinder(D/2, L)
// 创建空心管道
geom2 = cylinder(D/2 - t, L)
// 布尔运算得到管壁
geom = geom1 - geom2

你看,改 D 的值,管道就变粗;改 L,管道就变长。一切尽在掌握。

避坑指南: 我曾经犯过一个错误:参数化时用了不同的单位制。比如直径用毫米,长度用米。结果模型变形得一塌糊涂。记住,参数化一定要统一单位。我建议全部用国际单位制(m, kg, s)。

3.5 不同CAD格式的导入导出:格式的“江湖”

CAD格式五花八门,但仿真界常用的就三种:STEP、IGES、Parasolid。我简单说说它们的脾气:

格式 优点 缺点 我的推荐
STEP (.stp/.step) 标准通用,支持实体和装配体,信息丢失少 文件较大 首选。90%的情况用它都没问题。
IGES (.igs/.iges) 老牌格式,兼容性极广 只支持曲面,不支持实体;容易产生缝隙和重叠面 备选。只有STEP不行时才用。
Parasolid (.x_t/.x_b) 西门子系软件的“亲儿子”,读写速度快,精度高 其他软件支持度一般 特定场景。如果你用NX或Solid Edge,就用它。

导入导出时,有几个坑你一定要避开:

  • 单位问题:CAD里用毫米,仿真里用米。导入时一定要确认单位转换。我见过有人把1米的模型导成1毫米,结果网格小到爆炸。
  • 精度问题:导出时,把精度设到最高。别为了省那几KB文件大小,丢了精度。
  • 装配体问题:复杂的装配体,建议先导出成单个零件,再在仿真软件里组装。一次导出整个装配体,容易出错。
血的教训: 我曾经从CATIA导出一个IGES文件,到ANSYS里全是破面。修了整整两天。后来换成STEP格式,一次成功。所以,能用STEP,就别用IGES

3.6 知识体系总览

说了这么多,我画了一张图,帮你把这一章的知识点串起来。你可以把它当作一个“思维导图”,随时回来翻看。

几何建模与导入 模型清理 去除小特征 修复缺陷 简化曲面 几何简化 薄壳化 对称化 去圆角化 参数化建模 定义参数 关联尺寸 自动更新 CAD格式导入导出 STEP(首选) IGES(备选) Parasolid(特定) 核心:删繁就简,去伪存真

这张图把咱们这一章的核心内容都串起来了。从模型清理、简化,到参数化建模,再到格式选择,每一步都环环相扣。你可以在学习时把它当作一个“导航图”,随时回来对照。

好了,这一章的内容就到这里。记住,几何模型是仿真的基石。花在几何清理上的时间,会在后续的网格划分和求解计算中,十倍百倍地回报你。下次见!


专注资料整理