在 ANSYS 中导出网格模型,可根据目标格式和使用模块(Workbench 或 Mechanical APDL)选择不同方法。以下是主流操作方式:一、导出为常见格式(如 STL、DAT、MESH 等)
导出为 STL 格式(适用于表面网格)
在 ANSYS Workbench 中完成网格划分。
将 .msh 文件拖入 ParaView。
在 ParaView 中执行:Filters → Extract Surface
按下 Ctrl + S 保存,选择 STL 格式
导出为 .dat 文件(包含节点、单元信息)
方法 1:使用 APDL 命令流(适用于 Mechanical APDL 或 Workbench 中插入命令)
apdl
*CFOPEN,node_info,dat
*VWRITE, 'Node X Y Z'
*VWRITE, (F8.0, 8X, F12.6, 8X, F12.6, 8X, F12.6)
*GET, maxnode, NODE, 0, COUNT
*DO, i, 1, maxnode
*GET, node_x, NODE, i, LOC, X
*GET, node_y, NODE, i, LOC, Y
*GET, node_z, NODE, i, LOC, Z
*VWRITE, i, node_x, node_y, node_z
(F8.0, 8X, F12.6, 8X, F12.6, 8X, F12.6)
*ENDDO
*CFCLOSE
执行后可在求解目录下找到 node_info.dat
方法 2:使用 Python 脚本(适用于 Workbench)
在 Mechanical 界面中打开 Automation → Scripting,运行以下代码提取节点和单元信息并写入文件
python
from ansys.mechanical.core import launch_mechanical
model = ExtAPI.DataModel.Project.Model
mesh = model.MeshData
遍历节点和单元,写入 .dat 或 .txt 文件
导出为 .msh 或 .cdb 格式
.msh:Fluent 或 Meshing 模块中可直接导出为非二进制 .msh 文件,用于 OpenFOAM 等工具
.cdb:适用于从 HyperMesh 等第三方工具导入网格,通过 File → Read Input from 加载后导出
二、关键注意事项
Workbench vs APDL 差异:Workbench:依赖图形界面或 Python API,导出灵活性较低,需借助命令插入或脚本
Mechanical APDL:支持完整 APDL 命令流,可自定义输出字段,适合自动化
是否包含位移/约束?
默认导出的网格文件(如 .dat)不包含位移或边界条件,除非已求解并额外提取结果
实体模型 vs 网格模型:若需从拓扑优化结果恢复实体模型,仅导出面网格可能不足,建议结合 Ossmooth 或手动修复后重建 CAD 实体
三、推荐流程(快速导出节点+单元信息)
在 Workbench 中完成网格划分并求解。
右键 Solution → Insert → Command,粘贴
提供的 APDL 命令。
点击 Solve,计算完成后打开求解文件夹。
找到生成的 node_info.txt 和 elem_info.txt,即为所需网格数据。
如需自动化或批量处理,建议使用 Python API
或 APDL 宏
武汉格发信息技术有限公司 | 许可分析,许可优化,许可管理,许可授权,软件授权