在 ANSYS 后处理中提取数据,主要分为 图形界面操作 和 命令流/脚本自动化 两种方式。根据当前主流版本(如 ANSYS Mechanical / APDL / Workbench),以下是常用方法:一、图形界面提取(适合单次或少量数据)
导出云图数据(如位移、应力)为 CSV/TXT 文件
在 Solution 模块中右键点击要导出的结果项(如 Equivalent Stress 或 Total Deformation)。
选择 Export。
设置格式(推荐 CSV 或 TXT),勾选 Include Headers。
保存路径并确认导出。
提取特定点的时程数据(如温度、位移随时间变化)
在 Solution 下插入 Probe(如 Temperature Probe)。
设置定位方式(坐标系、几何选择或节点编号)。
运行求解后,右键探针结果 → Export 可导出为 Excel 或 CSV。
二、命令流提取(APDL,适合批量或自动化)
使用 APDL 命令 提取节点解(如位移、温度)或单元解(如应力、应变):核心命令:*GET:提取节点解或全局量(如最大应力)。
ETABLE:创建单元表,用于提取单元应力/应变。
*CFOPEN + *VWRITE:将数据写入文本文件。
典型流程:/POST1 → 进入通用后处理器。
SET, 加载所需结果步(如 SET,LAST)。
*DIM 定义数组存储数据。
*DO 循环 + *GET 提取各节点数据。
*CFOPEN 打开文件,*VWRITE 写入数据。
三、Python 脚本提取(Workbench 环境,适合复杂批量处理)
在 ANSYS Workbench 中可通过 Mechanical APDL Scripting 或 ExtAPI 使用 Python 自动化:按坐标批量提取节点
python
def create_node_group(coordinates, tolerance=0.001):
ns = ExtAPI.DataModel.Tree.FirstActiveObject.AddNamedSelection()
ns.Name = "AutoNodes"
for (x,y,z) in coordinates:
nodes = ExtAPI.DataModel.GetNodesByCoordinate(x,y,z,tolerance)
for node in nodes: ns.AddNode(node)
return ns
提取时程数据并导出为 CSV
python
def extract_time_history(result_obj, node_ids):
time_steps = [step.Time for step in result_obj.AvailableSteps]
node_data = {nid: np.zeros(len(time_steps)) for nid in node_ids}
for i, step in enumerate(result_obj.AvailableSteps):
result_obj.CurrentStep = step
values = result_obj.GetNodeValues(node_ids)
for j, nid in enumerate(node_ids):
node_data[nid][i] = values[j]
return np.array(time_steps), node_data
支持直接导出为 Excel、CSV,并可集成 Matplotlib/Pandas 进行分析。
四、注意事项
结果文件格式:结构分析结果通常为 .rst 文件,需确保加载完整(使用 INRES,ALL)。
坐标系影响:应力/力等结果依赖坐标系,提取前确认使用的是全局还是局部坐标。
网格敏感性:关键点数据建议在不同网格密度下验证收敛性。
如需具体操作示例(如提取螺栓预紧力或梁单元内力),可进一步说明应用场景。
武汉格发信息技术有限公司 | 许可分析,许可优化,许可管理,许可授权,软件授权