首页/文章/ 详情

ANSYS中使用Python实现高效结构仿真

7月前浏览26770

本文摘要(由AI生成):

本文介绍了在ANSYS中实现结构仿真自动化的方法,通过使用Python脚本,可以完成从创建分析流程、定义材料属性、SCDM脚本建模、Mechanical前处理、Mechanical后处理等全流程的自动化。在开始之前,需要了解Workbench、SCDM和Mechanical脚本开发的相关知识。通过Workbench的脚本录制功能,可以记录包括分析系统创建、材料属性定义、各模块打开退出操作和DX优化设置过程。几何建模需要在SCDM中完成,网格划分、载荷加载及求解后处理在Mechanical中完成,这两个模块中的操作,Workbench是无法录制操作的,需要我们在对应模块中开发脚本。最后,按照以上几个步骤操作,将上述代码整合到一起,我们就完成了结构仿真全流程自动化脚本开发。


说到ANSYS中结构仿真自动化,大家首先想到就是APDL参数化语言,但是由于难入门、复杂难懂,相比ABAQUS中的Python开发,对于新手来说学习成本高、周期长。


那么能否ANSYS中使用Python实现结构仿真全流程的自动化吗?当然是可以的!!!并且相比APDL更容易上手。
今天的文章中,我们就以ABAQUS的脚本文档中悬臂梁模型(如图1所示)为例,演示在ANSYS中如何通过使用Python脚本实现高效的结构仿真。
悬臂梁模型
15.0以后版本中,ANSYS 提供了ACT二次开发平台,在Mechanical中提供了Python脚本的支持,并且随着版本的迭代更新,接口越来越开放功能也越来越强大,从材料属性定义、网格划分、接触设置、载荷加载、自定义载荷、自定义后处理等,都可以通过ACT Python脚本去实现自动化和定制开发。
全流程的结构仿真分析需要在Workbench中搭建:便于创建、整合及管理仿真流程和处理各流程间的数据传递。通过Workbench的脚本录制功能,也便于记录包括分析系统创建、材料属性定义、各模块打开退出操作和DX优化设置过程。
几何建模需在SCDM中完成,网格划分、载荷加载及求解后处理在Mechanical中完成,这两个模块中的操作,Workbench是无法录制操作的,需要我们在对应模块中开发脚本。


分析流程及框架

在开始之前,我们需要了解WorkbenchSCDMMechanical脚本开发相关的知识,如下:


了解ANSYS脚本开发的基础知识后,接下来就可以按照以下几个步骤来开发全流程自动化脚本:

1、创建分析流程


  • 打开Workbench界面,通过点击File-->Scripting-->Record Journal,开始录制脚本;

  • 创建Static Structural分析系统,系统中包含结构分析中的所有流程,简化后代码如下:


2、定义材料属性


  • 点击Engineering Data创建Steel材料,密度:7500kg/m3,杨氏模:209.0E3,泊松比:0.3。

  • 上述操作的脚本可以被记录下来,通过对原始脚本代码修改,可以得到如下代码:


材料创建代码


3、SCDM脚本建模

  • Workbench中双击Geometry,打开SCDM软件,按照图1中尺寸参数进行脚本建模,并对相应的压力和约束加载面创建边界命名,后续用于Mechanical中载荷加载。



几何建模代码

  • 建模完成后,关闭SCDM软件,Workbench只会记录打开和关闭的操作,需要通过SendCommand命令传递脚本建模代码,如下:



4、Mechanical前处理

  • 指定材料属性、设置网格尺寸,通过Named Selections的名称来指定固定约束和压力载荷加载的位置,对应的代码和注释如下:

5 Mechanical设置代码

5、Mechanical后处理

  • 添加Mises等效应力后处理,然后调整视角,输出后处理云图,代码如下:


6 Mechanical后处理代码


  • 后处理完成后,关闭Mechanical软件,然后保存项目;Workbench只会记录打开和关闭的操作,需要通过SendCommand命令传递执行代码,如下:

按照以上几个步骤操作,最后将上述代码整合到一起,我们就完成了结构仿真全流程自动化脚本开发。基于自动化脚本,后续我们更改脚本中相应参数,就能快速重复仿真流程,实现高效的结构仿真自动化。

案例源代码下载方式:见附件

后记:基于开发自动化脚本,能很方便通过ACT插件或者仿真模板方式,对整个仿真流程进行封装固化,形成专业定制化的仿真工具,提升仿真工作的效率。

附件

免费ANSYS中使用Python实现高效结构仿真.rar
SpaceClaimACTMechanicalWorkbench结构基础二次开发代码&命令通用
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2022-09-22
最近编辑:7月前
小田老师
硕士 | 仿真工程师 欢迎关注ANSYS仿真与开发!
获赞 648粉丝 3768文章 62课程 4
点赞
收藏
作者推荐
未登录
11条评论
仿真秀0929134130
签名征集中
1月前
小田老师,建模必须是使用SCDM吗?使用犀牛建模进行网格划分后导入ANSYS workbench静力学分析模块是否也能记录下相应的代码?
回复
#L
签名征集中
1年前
Python结构仿真
回复
易星辰
签名征集中
2年前
小田老师那个源代码GetTemplate报错是什么原因啊
回复
虎王
签名征集中
2年前
Python结构仿真
回复
仿真秀0625112504
签名征集中
2年前
Python结构仿真
回复
当
签名征集中
2年前
Python结构仿真
回复
淡
签名征集中
2年前
Python结构仿真
回复
冬
签名征集中
2年前
Python结构仿真
回复
仿真秀6518786048
签名征集中
2年前
Python结构仿真
回复
仿真秀6518786048
签名征集中
2年前
Python结构仿真
回复 1条回复
课程
培训
服务
行家
VIP会员 学习 福利任务 兑换礼品
下载APP
联系我们
帮助与反馈