workbench ACT技术——ACT基础知识
2017-09-15 by:CAE仿真在线 来源:互联网
应用程序定制工具包是定制开发套件产品的一部分,定制开发套件产品还包括软件开发工具包(SDK)。一些企业通过定制仿真环境,使分析专家的经验和知识固化下来,同时为非专业用户提供了专业分析的方法。另外,通过客户化定制可以将复杂的自研程序进行公开和标准化,便于日常使用,从而提高了仿真工程师的工作效率。它的功能和价值主要体现在以下几个方面:
(1)APDL脚本的封装
能够和无缝结合,对于复杂功能,用户可以在中直接嵌入命令流来实现,还允许可以在仿真环境中创建菜单按钮来关联这些操作,这使得扩展应用程序拥有和原来程序界面一致的风格,也能避免用户都需要键入命令的麻烦,还能防止输入错误等,保证程序正确运行。
(2)添加新的载荷和边界条件
使用添加自定义边界条件也很简单,只需要使用格式文件定义界面中菜单项,然后使用脚本定义消息处理程序,可以在仿真分析的界面上看到自定义的边界条件,它和标准内置的边界条件是同等地位。
(3)创建客户化结果
许多企业需要根据特定的准则,例如规范,来评估分析结果。其他企业己经开发了他们自己的评估工具,例如疲劳评估工具。通过使用,用户可以进行复杂数学表达式或调用外部程序计算生产新的结果。
(4)集成第三方工具
在使用开发时,中各个功能模块之间的地位是平等的,用户可以使用提供的接口开发自己的处理例,处理自己的仿真方案,例如,用户可以编写和系统双向数据参数传递的应用程序,处理几何模型导入相关的问题,或者是网格划分策略及后处理服务程序等。
以下介绍ACT的一些基础知识。
1. 标准Mechnical怎么工作
当用户求解一个分析过程,会发生以下过程;
(1)所有的树状结构上的项目被转换成APDL命令,写入文件ds.dat;
(2)后台MAPDL关联,消化da.dat文件并输出file.rst文件;
(3)Mechnical读入结果(file.rst),显式云图。
2. ACT关联分析过程的方式
一共有三种方式:
(1)通过ACT创建的Custom load被转换成APDL,写入ds.dat文件(在这个过程中,利用Python API 可以获得所有的(几何,网格,其他数据,以及在custom load 中输入的数据)然后生成想要的APDL命令);ACT提供许多控制方式来获取数据,增加的命令需要写入ds.dat文件。
(3)一旦存在结果文件,通过ACT定义的custom result可以存取结果,利用Python API;ACT提供机制来生成scale\vector\tensor等结果,利用节点或单元的解;ACT可以使用外部代码;APDL代码可以不要求,因为效率不高。
(2)用户可以使用内部求解器或者第三方求解器来求解;用户可以创建自己的格式的输入文件(From the tree);ACT提供机制和控制方式来写这个输入文件,关联外部求解器然后读取结果;由于求解器不是MAPDL,不要求APDL命令。
ACT还能与其他地方进行关联:
比如 Mechanical Graphics . Mechanical Application
3. ACT 扩展程序的类型
ACT 有两种不同的类型。
Scripted 类型:
在开发阶段使用;
需要ANSYS Customization Suite license ;
由XML和Iron Python函数组成。
Binary类型:
由开发者提供给用户(当Extension完成);
不需要license;
是由“Build Binary Extension”对一个Scripted extension完成的,——WBEXfile;WBEX文件是从Extension Menu安装的。用户需要安装。
4. Scripted 类型
Script类型的ACT包括:
一个XML文件,定义UI的内容,定义Extension的属性,绑定应用到Iron Python 脚本函数中,定义custom load 和 results的响应。
一个Iron Python 脚本文件,执行extension,事件驱动,支持外部函数,和XML文件在一个文件夹。
5. ACT示例
以下是一个简单的ACT的例子,简述该extension所包含的文件及文件内容。图1表示该Extension的基本文件:一个xml文件和一个文件夹,文件夹里面的内容如图2所示。
图1
图2
mage文件夹里面是一个bmp后缀的图片,如图3所示。
图3
该extension的xml代码如下所示:
<extension version="1" name="ExtSample1">
<guid>e0e0f6c2-b50f-425e-a778-5b3e527f65c1</guid>
<script src="sample1.py" />
<interface context="Mechanical">
<images>images</images>
<callbacks>
<oninit>init</oninit>
</callbacks>
<toolbar name="ExtSample1" caption="ExtSample1">
<entry name="HighFive" icon="hand">
<callbacks>
<onclick>HighFiveOut</onclick>
</callbacks>
</entry>
</toolbar>
</interface>
</extension>
该extension的Python脚本代码如下所示:
clr.AddReference("Ans.UI.Toolkit")
clr.AddReference("Ans.UI.Toolkit.Base")
from Ansys.UI.Toolkit import *
def init(context):
ExtAPI.Log.WriteMessage("Init ExtSample1...")
def HighFiveOut(analysis_obj):
MessageBox.Show("High five! ExtSample1 is a success!")
最终该extension在Workbench的显示如图4所示。
图4
参考文献:
[1]钟兴志.基于ANSYS Workbench二次开发的陀螺仪动力学仿真系统开发研究与应用[D].北京邮电大学, 2014.
[2]岳勇.基于Ansys workbench的仿真模板二次开发[J].数字技术与应用, 2012(3):146-147.
[3]周桂生.阀门三维参数化设计与CAE分析集成系统的研究与开发[D].江苏大学, 2009.
[4]涂维青.基于ANSYS Workbench的注塑模具刚强度分析系统开发[D].河南工业大学, 2013.
[5]李龙锐.精冲压边与间隙的有限元模拟及相关研究[D].华中科技大学, 2011.
[6]ANSYS 17.0 Workbench Scripting Guide.
相关标签搜索:workbench ACT技术——ACT基础知识 Ansys有限元培训 Ansys workbench培训 ansys视频教程 ansys workbench教程 ansys APDL经典教程 ansys资料下载 ansys技术咨询 ansys基础知识 ansys代做 Fluent、CFX流体分析 HFSS电磁分析 Abaqus培训