天天看點

abaqus python二次開發攻略_使用Python建立Abaqus材料庫

在你的研究過程中,你會發現自己常常重複使用同一套材料。當你每次開始新的模拟時,都需要使用材料編輯器來定義材料鋼及其屬性。為了避免每次定義材料屬性的操作繁瑣。可以使用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對話框,建立一個宏錄制。

abaqus python二次開發攻略_使用Python建立Abaqus材料庫
abaqus python二次開發攻略_使用Python建立Abaqus材料庫
(2)建立材料

點選create material,進入edit material對話框

abaqus python二次開發攻略_使用Python建立Abaqus材料庫

命名為Titanium,定義材料的密度,彈性模量和泊松比

abaqus python二次開發攻略_使用Python建立Abaqus材料庫

使用同樣的指令建立其他兩種材料。

停止錄制。

03修改宏錄制代碼

進入工作目錄,找到abaqusMacros.py文檔,打開abaqusMacros.py文檔

abaqus python二次開發攻略_使用Python建立Abaqus材料庫

修改參數如下:

abaqus python二次開發攻略_使用Python建立Abaqus材料庫

材料庫建立完成。

04運作腳本

新打開一個abaqus界面,運作剛剛的腳本,将快速建立材料庫。

abaqus python二次開發攻略_使用Python建立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 筆記”

繼續閱讀