mergeMeshes 与 stitchMesh 的区别和选择
mergeMeshes vs stitchMesh
这两个命令虽然都是“合并”,但它们的作用层级和物理意义完全不同。
一句话总结:mergeMeshes 是把两个网格文件放在一起(物理上还是断开的),而 stitchMesh 是把两个断开的面缝合起来(物理上连通)。
通常的操作流程是:先用 mergeMeshes 把两个部件合到一个算例里,再用 stitchMesh 把它们连通。
1. mergeMeshes(拼积木)
- 作用对象:两个独立的网格算例(Case)。
- 功能:将“网格B”的数据直接追加写入到“网格A”的文件中。
- 结果:
- 你会得到一个包含 A 和 B 所有网格的大网格。
- 关键点:此时 A 和 B 虽然在一个文件里,但它们是互不相连的。流体流不过去。它们接触的地方依然是两个独立的边界(Patch),各管各的。
- 类比:你把两块乐高积木放在桌子上靠在一起。虽然它们都在桌子上(同一个算例),但它们并没有卡扣在一起(拓扑未连接)。
命令示例:
1 | # 把 rotor 网格合并到 stator 网格里 |
2. stitchMesh(缝合/焊接)
- 作用对象:同一个网格算例里的两个边界(Patch)。
- 功能:找到这两个位置重合的 Patch,把它们的面上的节点合并,消除这两个 Patch,将其转化为内部面(Internal Faces)。
- 结果:
- 网格拓扑被打通了。
- 流体可以从 A 区域流到 B 区域。
- 类比:你用胶水把刚才那两块靠在一起的乐高积木粘死,让它们变成一个整体。
命令示例:
1 | # 把刚才合并进来的 rotor 接口和 stator 接口缝死 |
总结对比表
| 特征 | mergeMeshes | stitchMesh |
|---|---|---|
| 输入 | 两个不同的算例路径 (Case A + Case B) | 两个 Patch 名称 (同一个 mesh 内) |
| 物理动作 | 叠加/追加 (Add) | 连接/修补 (Connect) |
| 拓扑连通性 | 不连通 (界面处仍是两堵墙) | 连通 (墙消失,变成内部流场) |
| 点/面数量 | 简单的 A + B | 会减少 (因为重合的点被合并了) |
| 典型场景 | 把旋转区网格加到背景网格里 | 把旋转区和背景网格的交界面打通 |
| 比喻 | 把两张纸放在同一个文件夹里 | 用胶带把两张纸粘成一张大纸 |
常见组合拳流程
如果你有两个分开画的网格(比如 pipe1 和 pipe2),想把它们接起来算一个流场:
mergeMeshes . pipe1 . pipe2
(现在你有了一个包含两段管子的网格,但中间被堵住了)topoSet/createPatch(可选)
(如果名字没对上,可能需要整理一下接口的名字)stitchMesh -perfect outlet1 inlet2
(打通中间的堵头,现在变成了一根长管子)
All articles on this blog are licensed under CC BY-NC-SA 4.0 unless otherwise stated.
