[英]Python scripting in ABAQUS
我有一個Python腳本來創建ABAQUS模型並運行作業。
我想在變量上創建一個循環
索引= 1:1:4,
創建四個不同的模型,並為每個模型運行四個作業。
例如,以下行中的模型名為“ Model-1”:
##-----------------------------------------------------------------------
mdb.models['Model-1'].ConstrainedSketch(name='__profile__', sheetSize=sqrlen)
##-----------------------------------------------------------------------
在創建循環時,我將創建一個字符串,如下所示:
##-----------------------------------------------------------------------
index='1'
modelname='\''+'Model' + index+ '\''
# Square Part is created
mdb.models[modelname].ConstrainedSketch(name='__profile__', sheetSize=sqrlen)
##-------------------------------------------------------------------------
當我在ABAQUS中運行腳本時,出現如下錯誤:“ Model1”:
##-------------------------------------------------------------------------
File "d:/abaqus_working_directory/scripting_example/simulation/scripting_loop.py", line 22, in <module>
mdb.models[modelname].ConstrainedSketch(name='__profile__', sheetSize=sqrlen) #### sqrlen
KeyError: 'Model1'
Exit from main file [Kernel]: d:/abaqus_working_directory/scripting_example/simulation/scripting_loop.py
##-------------------------------------------------------------------------
我想使用字符串modelname(值='Model-1')而不是在python腳本中編寫'Model-1'
mdb.models['Model-1'].ConstrainedSketch(name=....)
mdb.models[modelname].ConstrainedSketch(name=...)
當它被調用時。
任何幫助深表感謝。
真誠的,我。
您正在混合使用兩個不同的名稱, Model-1
和Model1
在循環創建中,在modelname
包含-
。 您可以執行以下操作:
##-----------------------------------------------------------------------
index='1'
modelname='\''+'Model-' + index+ '\''
# Square Part is created
mdb.models[modelname].ConstrainedSketch(name='__profile__', sheetSize=sqrlen)
##-------------------------------------------------------------------------
另外,您應該使用
modelname='Model-' + index
因為那樣會給你一個沒有多余引號的字符串。
根本不使用字符串名稱。 在腳本的早期定義:
model=mdb.models['Model-1']
然后例如:
model.ConstrainedSketch..
如果使用多個模型,則類似地創建模型對象列表。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.