混合C++语言与APDL编程的ANSYS二次开发

2016-08-15  by:CAE仿真在线  来源:互联网

有时候我们会用到ANSYS的批处理功能,它避免了GUI界面显示占用内存,因此数值计算速度是很快的。在工程应用中,尤其是设计产品,经常要重复一些操作来确定最优的产品设计,通过传统的手动GUI操作会显得很费力。因此,如果在外部开发程序界面,通过这个界面来定义产品的尺寸布置,点击运行,就可以执行ANSYS的核心计算功能,就再好不过了。
    这个功能是可以实现的。基于C++面向对象编程,外部程序的界面是通过C++生成ANSYS的APDL命令流文件,然后再编程将该文件传送给ANSYS去计算,就可以实现了。
    其中最关键的一步就是如何将输入文件传送给ANSYS呢?这就需要找到程序接口。在该文中,提供了两个接口:

1WinExec("D:\\Program Files\\ANSYS Inc\\v145\\ansys\\bin\\winx64\\ANSYS145.exe -p ane3flds -dir E:\\APDL\\exercise2 -j file14 -s read -l en-us -b -i E:\\APDL\\exercise2\\exercise2.txt -o E:\\APDL\\exercise2\\file.out",SW_HIDE);

用到WinExec函数,需要指定ANSYS.exe的文件目录,工作目录,输入文件的位置,输出文件的位置。

其中:
1:-p表示指定license  ane3flds表示指定的license为ANSYS Multiphisics
2:-j表示该任务的名称
3:-s表示模式为read
4:-l表示语言环境
5:-b表示ANSYS的batch模式,即批处理模式

2、混合C++语言与APDL编程的ANSYS二次开发
    第二种方法是用CreatProcess函数,同样需要设置ANSYS的执行文件目录,输入文件目录,输出文件目录。
 
关于WinExec与CreatProcess这两个函数的描述可以参考这个博客,讲得十分详细:
http://blog.sina.com.cn/s/blog_4950d6160100pz0f.html
 
    执行上述程序前,工作目录中只有exercise.txt命令流文件,执行完后,生成许多结果文件,进而可以对结果进行处理,避免了ANSYS的GUI界面操作。
混合C++语言与APDL编程的ANSYS二次开发
混合C++语言与APDL编程的ANSYS二次开发
 
总而言之,基于外部C++编程对ANSYS进行二次开发,核心是找到调用ANSYS的接口,这样才能将生成的APDL命令流文件传给ANSYS进行操作,这个功能在工业产品设计上十分重要。

开放分享:优质有限元技术文章,助你自学成才

相关标签搜索:混合C++语言与APDL编程的ANSYS二次开发 C++语言与APDL的ANSYS二次开发 apdl+c++ ansys Ansys有限元培训 Ansys workbench培训 ansys视频教程 ansys workbench教程 ansys APDL经典教程 ansys资料下载 ansys技术咨询 ansys基础知识 ansys代做 Fluent、CFX流体分析 

编辑
在线报名:
  • 客服在线请直接联系我们的客服,您也可以通过下面的方式进行在线报名,我们会及时给您回复电话,谢谢!
验证码

全国服务热线

1358-032-9919

广州公司:
广州市环市中路306号金鹰大厦3800
电话:13580329919
          135-8032-9919
培训QQ咨询:点击咨询 点击咨询
项目QQ咨询:点击咨询
email:kf@1cae.com