Abaqus运行Python脚本的方法实操
1 概述
Abaqus 软件二次开发环境提供的脚本结构就是基于Python语言进行的定制开发。在Abaqus/CAE中进行的所有操作,都有对应的命令,这些命令是用Python语言编写的。如果接触过ANSYS的APDL,很好理解这个过程。Abaqus脚本接口与Abaqus/CAE的通信关系如图1所示。
将所有的脚本命令存储在文件中,则形成一个脚本文件,扩展名为.py。这里介绍两种Python代买编辑器,分别是EditPlus和sublimetext。同ANSYS一样,Abaqus也能自动生成Python脚本文件,自动生成的文件扩展名是.rpy,这两个编辑器能直接打开这个文件,而且sublimetext还能够实时更新Python脚本命令,使用起来非常方便。
Abaqus运行外部编写的Python文件有几种方法,本次一一介绍。
图1
Abaqus脚本接口与Abaqus/CAE的通信关系
2 命令窗口输入
通过命令窗口输入的优势是能够快速实时的反应当前Python命令的操作,如图2所示,打开Abaqus/CAE窗口,在下面的>>>处即可输入Python命令,既可以一条一条输入,也可以大段输入。
当在窗口输入如下命令时,Abaqus/CAE窗口自动创建一个模型如图3所示。
from
abaqus import *
from
abaqusConstants import *
session.Viewport(name='Viewport: 1', origin=(0.0,
0.0), width=359.549987792969,
height=234.613327026367)
session.viewports['Viewport:
1'].makeCurrent()
session.viewports['Viewport:
1'].maximize()
from
caeModules import *
from
driverUtils import executeOnCaeStartup
executeOnCaeStartup()
session.viewports['Viewport:
1'].partDisplay.geometryOptions.setValues(
referenceRepresentation=ON)
Mdb()
#: A new
model database has been created.
#: The
model "Model-1" has been created.
session.viewports['Viewport:
1'].setValues(displayedObject=None)
s =
mdb.models['Model-1'].ConstrainedSketch(name='__profile__',
sheetSize=200.0)
g, v, d,
c = s.geometry, s.vertices, s.dimensions, s.constraints
s.setPrimaryObject(option=STANDALONE)
s.rectangle(point1=(-20.0, -10.0), point2=(20.0,
10.0))
s.CircleByCenterPerimeter(center=(0.0, 0.0),
point1=(5.0, 0.0))
p =
mdb.models['Model-1'].Part(name='Part-1',
dimensionality=TWO_D_PLANAR,
type=DEFORMABLE_BODY)
p =
mdb.models['Model-1'].parts['Part-1']
p.BaseShell(sketch=s)
s.unsetPrimaryObject()
p =
mdb.models['Model-1'].parts['Part-1']
session.viewports['Viewport:
1'].setValues(displayedObject=p)
del
mdb.models['Model-1'].sketches['__profile__']
图2
命令窗口
图3
输入之后
3从FILE菜单运行脚本
采用这种方式时,将Python编写好的Py文件存在在计算机上,从Abaqus/CAE的菜单栏File下选择运行脚本(Run
Script),弹出对话框,再选择脚本文件即可(如图4),同样可得到图3
的结果。
图4
File下拉菜单运行脚本文件
4从启动屏幕运行脚本
此种方式是在刚启动Abaqus/CAE界面时运行脚本文件,如图5所示。
图5从启动屏幕运行脚本
5 Abaqus command命令行窗口执行
此种方式不用先行打开Abaqus/CAE
界面,而直接打开Abaqus
Command即可。如图6所示,在Abaqus
Command 窗口输入命令:
abaqus cae script=
calcu_10.py
如图6所示,即可自行运行脚本文件calcu_10.py,同时还打开Abaqus/CAE界面,如果不打开Abaqus/CAE程序界面,则输入:
Abaqus cae nogui=
calcu_10.py
此时运行脚本文件时不打开Abaqus/CAE界面。
这里注意一个问题:脚本文件的位置应该和Abaqus
Command的指示位置一致,如果不一致需要指定脚本文件的位置,也即在前面用cd命令打开文件夹:如图7所示:
cd E:\CAE Tech\10
图6 Abaqus
command命令行窗口执行
图7
指定脚本文件位置
6从命令行接口运行脚本
这种方式和第一种类似,同样在Abaqus/CAE的下面命令行窗口输入,不过不同的是直接用函数execfile(‘myscript.py’),直接执行整个脚本文件,类似于将脚本文件当做一个宏文件的处理方式。