Abaqus用Python进行二次开发及其感想

  • Posted on
  • by

主流的有限元软件基本上都提供了二次开发的选项----对于求解器的二次开发(一般是材料模型、边界条件的二次开发)基本上是使用Fortran。前后处理的二次开发不同软件就各不相同,Hyperworks使用的是tcl脚本,MSC Marc用的是自带的流程语言或Python,Abaqus用的是Python。

今天想说的就是使用Python对Abaqus进行前后处理的二次开发。

基于Abaqus进行Python的二次开发非常方便,主要体现在三点上:

首先是容易上手。Abaqus提供了类似于宏录制的功能,这对于新手很容易入门,只需要修改工作目录下的abaqus.rpy就可以开始。

其次是方便执行,Abaqus至少有四种执行Python代码的方式:1.用命令行提交运算的时候执行;2.从CAE界面下拉菜单的Run stript运行;3.通过Abaqus PDE执行;4.在内核命令行接口输入。特别是对于第四种方式,在脚本调试的时候非常方便。

最后,Python有很多强大又成熟的库,使用起来很方便。

在感叹Abaqus功能强大的同时,我也很感慨自己当时自学了Python,以至现在才有机会能发掘软件的更多功能。学习Python只是因为当初有一个点子需要编程实现,可是自己又不是计算机专业的,因此只能挑选最容易入门的Python学习。

刚开始也是很困难,但是陆陆续续看了google提供的视频教程,以及Codecademy的Python教程之后,也用Python也编过一些小的工具之后,现在我已经能感受到Python的强大,而不是学习的困难。

当初看乔布斯"Stay hungray, stay foolish"的演讲,只觉得振奋。但是当自己经历了他类似的经历后,我对他更加佩服了。简单的说,乔老爷子就是告诉大家,趁年轻的时候多学点什么,也许不一定是和你专业有多相关,但说不定哪天就用上了。