在你的研究過程中,你會發現自己常常重複使用同一套材料。當你每次開始新的模拟時,都需要使用材料編輯器來定義材料鋼及其屬性。為了避免每次定義材料屬性的操作繁瑣。可以使用Python腳本來編寫材料庫腳本,可以快速在abaqus界面定義材料屬性。下文将介紹如何使用python編寫Abaqus材料庫。
01材料介紹我們在這裡建立包含钛,AISI 1005 鋼和金這三種材料的材料庫。
钛
密度:4500kg/m3,彈性模量:116E9N/m2,泊松比0.34;
AISI 1005 鋼
密度:7852kg/m3,彈性模量:200E9N/m2,泊松比0.29;
金
密度:19320kg/m3,彈性模量:77.2E9N/m2,泊松比0.42。
02 使用宏指令錄制材料建立過程 (1)打開宏指令錄制file——>macro manager——>create,進入create macro對話框,建立一個宏錄制。
![](https://img.laitimes.com/img/__Qf2AjLwojIjJCLyojI0JCLicmbw5SM1kzY1kDNlNTO5I2NxEWYmV2M5cjNykTYxAzYkdjM38CX0JXZ252bj91Ztl2Lc52YucWbp5GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.png)
點選create material,進入edit material對話框
命名為Titanium,定義材料的密度,彈性模量和泊松比
使用同樣的指令建立其他兩種材料。
停止錄制。
03修改宏錄制代碼進入工作目錄,找到abaqusMacros.py文檔,打開abaqusMacros.py文檔
修改參數如下:
材料庫建立完成。
04運作腳本新打開一個abaqus界面,運作剛剛的腳本,将快速建立材料庫。
# -*- coding: mbcs -*-
# Do not delete the following import lines
from abaqus import *
from abaqusConstants import *
import __main__
import section
import regionToolset
import displayGroupMdbToolset as dgm
import part
import material
import assembly
import step
import interaction
import load
import mesh
import optimization
import job
import sketch
import visualization
import xyPlot
import displayGroupOdbToolset as dgo
import connectorBehavior
mdb.models['Model-1'].Material(name='Titanium')
mdb.models['Model-1'].materials['Titanium'].Density(table=((4500.0, ), ))
mdb.models['Model-1'].materials['Titanium'].Elastic(table=((116000000000.0,
0.34), ))
mdb.models['Model-1'].Material(name='AISI 1005 steel')
mdb.models['Model-1'].materials['AISI 1005 steel'].Density(table=((7872.0, ),
))
mdb.models['Model-1'].materials['AISI 1005 steel'].Elastic(table=((
200000000000.0, 0.29), ))
mdb.models['Model-1'].Material(name='Gold')
mdb.models['Model-1'].materials['Gold'].Density(table=((19320.0, ), ))
mdb.models['Model-1'].materials['Gold'].Elastic(table=((77200000000.0, 0.42),
))
更多内容敬請關注公衆号“snail 筆記”