Abaqus運行Python腳本的方法實操
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’),直接執行整個腳本文件,類似于將腳本文件當做一個宏文件的處理方式。
工程師必備
- 項目客服
- 培訓客服
- 平臺客服
TOP




















