021-39519288qing.xie@weseetech.com
达索系统授权代理商 申请试用

Abaqus的二次开发为何用python语言?

2021/03/17

说到ABAQUS的二次开发,首先要分清楚到底是哪方面的二次开发,学过有限元课程的童鞋都很清楚,有限元方法的流程为前处理、求解、后处理,在ABAQUS有限元软件中,前处理生成cae文件,提交任务后软件会根据你的分析部类型选择求解器比如standard or explicit,求解完成生成一个output database(也就是odb文件),用户即可进行后处理。ABAQUS利用Python作为脚本语言,主要是对前处理和后处理进行二次开发,以方便使用者建模和处理数据(c++也能做一些后处理),之所以选择Python,个人觉得是出于Python的强大功能;而ABAQUS的求解器应该是用Fortran编写的,因此用户子程序的开发主要是用Fortran语言(当然c/c++也是可以的,需要比较扎实的程序编译基础),这是因为Fortran语言比较古老,并在数值计算和数组应用方面优点突出。
 

Python的话,由于下图,


因此做前处理(如参数化建模等)、后处理(如数据提取等)都很方便。
Fortran是以前很多科学工作者的工作语言,很多算法都是用Fortran编写的,应该算是延续下来的吧,用来做一些子程序(如混凝土材料本构关系等)。
C++一般用来做后处理。

© 2021 - Copyright WESEE - All Rights Reserved Designed by GreatMo 沪ICP备14034845号-1