py源代碼|平均應力應變位移輸出至Excel

當提取模型文件計算結果數據量較大時,依次設置歷程輸出任務繁重。實際上結合公眾號(有限元與力學)提供的腳本文件(output_constants.pyoutput_main.py),只需幾行代碼即可高效提取有用數據。

話不多說實現方式如下:(不需要下載任何軟件)

(1)以記事本形式打開output_constants.py文件,修改odbName和stepName

odbName='RS1'        #odb文件名
stepName='Step-1'    #step名

(2)在odb文件同目錄下新建一個txt文件,將以下內容作為表頭固定輸入

#!/usr/bin/python
#-*-coding:utf-8-*-
import csv
import output_main

(3)以提取模型的分析時間、S11應力和E11應變數據為例,輸入下列代碼

time=[]     #儲存時間數據
time=output_main.output_time(time)

stress=[]          #儲存應力數據,其中'CONCRETE-1'部件名,'SET-1'單元集合名
stress=output_main.output_S11('CONCRETE-1','SET-1',stress)

strain=[]          #儲存應力數據,其中'CONCRETE'部件名,'SET-1'單元集合名
stress=output_main.output_E11('CONCRETE-1','SET-1',strain)

(4)輸出數據至Excel

New=open('Output.csv','wb')   #新建一個Excel文件儲存數據
New.write('time,stress,strain\n')  #輸入Excel表頭分別為time,stress,strain
for i in range(len(stress)):   #循環輸出數據
    New.write('%s,%s,%s\n'%(time[i],stress[i],strain[i]))
    New.close()

(5)保存新建txt文件,將.txt后綴修改為.py,在Abaqus中以腳本形式運行該文件

output_main.output_S11中的S11用于控制輸出結果

結果控制參數如下

S11—x方向應力;S22—y方向應力;S33—z方向應力;mises—mises應力;Smax—最大主應力;Smin—最小主應力;E11—x方向應變;E22—y方向應變;E33—z方向應變;Emax—最大主應變;U11—x方向位移;U22—y方向位移;U33—z方向位移;RF1—x方向支反力;RF2—y方向支反力;RF3—z方向支反力

output_constants.py、output_main.py獲取方式如下

公眾號(有限元與力學)任意兩篇文章轉發朋友圈12h后截圖加客服(QQ:416140933)索取

登錄后免費查看全文
立即登錄
App下載
技術鄰APP
工程師必備
  • 項目客服
  • 培訓客服
  • 平臺客服

TOP

1
9