在 ANSYS APDL(ANSYS Parametric Design Language)中导出节点坐标,可通过 APDL 命令流实现。以下是几种常用且可靠的方法,适用于不同场景(如导出全部节点或特定节点组)。
方法一:导出所有节点的 XYZ 坐标(推荐基础方法)
适用于需要完整模型节点坐标的场景。
apdl
/POST1 ! 进入通用后处理器
ALLSEL, ALL ! 选择所有节点
*GET, NNUM, NODE, 0, COUNT ! 获取总节点数 NNUM
*DIM, COORD, ARRAY, NNUM, 3 ! 定义数组存储 [X,Y,Z]
! 提取各方向坐标
*VGET, COORD(1,1), NODE, , LOC, X
*VGET, COORD(1,2), NODE, , LOC, Y
*VGET, COORD(1,3), NODE, , LOC, Z
*CFOPEN, node_coords, csv ! 打开 CSV 文件
*VWRITE, COORD(1,1), COORD(1,2), COORD(1,3)
(F10.6, ',', F10.6, ',', F10.6) ! 格式:X,Y,Z(逗号分隔)
*CFCLOSE ! 关闭文件
✅ 输出文件 node_coords.csv 将保存在当前工作目录,可用 Excel 或文本编辑器打开。
方法二:仅导出特定节点组(如通过 Named Selection)
若已通过 Workbench 创建了命名选择(如 MyNodes),可在 APDL 中引用:apdl
/POST
NSEL, S, COMP, MyNodes ! 选择名为 MyNodes 的节点组
*GET, NNUM, NODE, 0, COUNT
*DIM, COORD, ARRAY, NNUM,
*VGET, COORD(1,1), NODE, , LOC, X
*VGET, COORD(1,2), NODE, , LOC, Y
*VGET, COORD(1,3), NODE, , LOC, Z
*CFOPEN, selected_nodes, csv
*VWRITE, COORD(1,1), COORD(1,2), COORD(1,3)
(F10.6, ',', F10.6, ',', F10.6)
*CFCLOSE
⚠️ 注意:NSEL, S, COMP, ... 仅在 APDL 环境中有效,需确保该命名选择已通过 Workbench 正确传递。
方法三:导出带节点编号的坐标(含 ID)
若需同时保留节点编号:apdl
/POST
ALLSEL, ALL
*GET, NNUM, NODE, 0, COUNT
*DIM, NODE_DATA, ARRAY, NNUM, 4 ! [NodeID, X, Y, Z]
*DO, I, 1, NNUM
NODE_ID = NDNEXT(0) ! 获取第 I 个节点号
*GET, X_VAL, NODE, NODE_ID, LOC, X
*GET, Y_VAL, NODE, NODE_ID, LOC, Y
*GET, Z_VAL, NODE, NODE_ID, LOC, Z
NODE_DATA(I,1) = NODE_ID
NODE_DATA(I,2) = X_VAL
NODE_DATA(I,3) = Y_VAL
NODE_DATA(I,4) = Z_VAL
*ENDDO
*CFOPEN, nodes_with_id, csv
*VWRITE, NODE_DATA(1,1), NODE_DATA(1,2), NODE_DATA(1,3), NODE_DATA(1,4)
(I8, ',', F10.6, ',', F10.6, ',', F10.6)
*CFCLOSE
补充说明
坐标系:上述命令默认使用全局笛卡尔坐标系。若需其他坐标系(如柱坐标),可先用 RSYS, 1 切换。
文件路径:默认输出到当前工作目录。如需指定路径,可写为:apdl
*CFOPEN, 'C:\Results\node_coords.csv', csv
在 Workbench 中使用:需在 Solution 或 Model 中插入 Command Object,粘贴上述 APDL 代码,并运行求解后才会执行
参考来源
ANSYS Workbench 中通过 APDL 命令导出节点坐标
APDL 提取节点坐标、位移、应变的完整命令流
导出节点坐标 + 位移的 CSV 方法
使用 APDL 提取指定节点编号与坐标
如需进一步自动化或批量处理,也可结合 Python 脚本(通过 WB API)直接读取网格数据,无需运行求解
武汉格发信息技术有限公司 | 许可分析,许可优化,许可管理,许可授权,软件授权