点击关注CAE仿真空间,
点亮“在看”,优质内容不错过
许久未更新公号,最近看到一个很不错的工具包,老传统必须和大家一起分享分享。尤其是对于像我等钟爱于接触python开发的同仁,我想还是很值得了解和学习的。
一个基于python脚本操作来实现ansys apdl 语言的项目,项目介绍中提到之前项目名称是叫做pyansys,大家在PyPI可以查到。目前项目整体比较完整,名称叫做PyMAPDL,有专门的的项目主页和文档、案例等,后文末链接直达主页地址。对于工具包的主要功能,原文介绍更直接:
小编提前给大家试用了一下,从安装到使用到配置需要注意的问题给提前踩踩坑,方便大家直接使用。
首先是安装,首先需要保证电脑安装了ansys,Windows系统下版本在17.0以后越高越好。我测试了采用pip从清华镜像直接安装可能会遇到一些小问题,需要添加对下载源的信任,否则可能报错,安装完成如图所示。
然后就是验证是否安装成功,能否正常启动的问题,如果ansys安装是按照默认路径,应该是可以直接连接启动的;但是如果自定义安装路径,可能需要做一些额外操作,这在项目的开发文档中提到,具体设置脚本如下:
1 from ansys.mapdl import core as pymapdl
2 new_path = 'C:\\Program Files\\ANSYS Inc\\v211\\ANSYS\\bin\\winx64\\ansys211.exe'
3 pymapdl.change_default_ansys_path(new_path)
把其中的new_path设置成你自己的路径即可,下面是小编执行测试连接成功的结果。
到此该工具包可以正常使用了,我们来看个例子吧。执行下面的脚本,可以分别实现类似ansys经典界面中的线显示、体显示以及单元网格显示效果。
1from ansys.mapdl.core import launch_mapdl
2import numpy as np
3
4mapdl = launch_mapdl()
5
6# create a rectangle with a few holes
7mapdl.prep7()
8rect_anum = mapdl.blc4(width=1, height=0.2)
9# create several circles in the middle in the rectangle
10for x in np.linspace(0.1, 0.9, 8):
11 mapdl.cyl4(x, 0.1, 0.025)
12# Generate a line plot
13mapdl.lplot(color_lines=True, cpos='xy')
14
15##-----------------------------------------------
16plate_holes = mapdl.asba(rect_anum, 'all')
17# extrude this area
18mapdl.vext(plate_holes, dz=0.1)
19mapdl.vplot()
20
21##-----------------------------------------------
22mapdl.et(1, 'SOLID186')
23mapdl.vsweep('ALL')
24mapdl.esize(0.1)
25mapdl.eplot()
上述代码执行结果如下:
其它一些脚本的使用和案例都可以参考项目主页,比如一些数据类的处理、传热、力学等方面脚本实现都可以一步步的基于文档熟悉,并且自己结合ansys的使用经验来练习,我觉得是一个非常不错的软件和仿真程序开发之路。
地址 : PyMAPDL
更多优质内容,敬请关注公号:CAE仿真空间
http://weixin.qq.com/r/dETx6RDEiU32rVSK9xFm (二维码自动识别)