
發布
注冊
/
登錄abaqus輸出結果白色的案例
abaqus二次開發:后處理批量提取場輸出和歷程輸出結果(源碼帶注釋) ¥198
abaqus二次開發:后處理批量提取場輸出和歷程輸出結果(購買后需要加V私聊獲取使用教程)
購買后,請加V:wzd_1021_
更多插件內容,請私聊
同時提供定制hypermesh/hyperview/abaqus前后處理插件開發。
ABAQUS 結果文件輸出
結果文件有output database(.odb)文件和result file(.fil)文件。區別是
a.odb文件默認生成,是二進制文件,abaqus才能訪問,python后處理也是通過abaqus訪問。
b.fil文件不是默認生成,需要在inp中添加關鍵字(*FILE FORMAT, ASCII),添加的位置可以是(*Restart)命令之后。是文本文件,文本編輯器可以訪問。
要輸出的量可以通過cae界面選擇,也可以通過inp添加。
輸出到fil文件屬于歷史輸出范圍,輸出的是所有增量步的值。fil文件的大小似乎是固定的,在cae界面中,歷史輸出可以設置只輸出最后一個increment的值,對應在inp文件中表示為(*Output, history, frequency=99999),輸出頻率非常大,故只輸出最后一幀。這個命令針對fil的輸出無用,這里姑且認為fil只能輸出的所有增量步的值。
*NODE FILE 輸出節點變量,位移(UCOORD-101),節點坐標(COORD-107)
*EL FILE 輸出單元變量,MISES應力(S),應力分量(SINV-12)
要使用URDFIL子程序,首先必須先創建.fil文件,子程序讀取.fil文件,Fortran代碼實現結果的格式化輸出。
展開 利用Python對Abaqus進行后處理結果輸出
利用Python對Abaqus進行后處理結果輸出
1 概述
在Abaqus的二次開發過程中,通常需要采用Python腳本語言將Abaqus的計算結果進行輸出,然后再進行處理。Python使Abaqus的內核語言,使用較為方便,Abaqus運行Python語言的方式有多種,可以直接命令窗口,也可以讀入腳本,還可以采用類似批處理的方式。
本次以一個例子細說Python語言在Abaqus后處理中的應用,模型的計算結果云圖如圖1所示。
圖1 計算結果
2 輸出所有節點的Mises應力
直接上Python代碼:
import os
myodb=openOdb(path='Job-1.odb')
cpFile=open('artlcF1.txt','w')
RF=myodb.steps['Step-1'].frames[1].fieldOutputs['S'].values
for i in range(len(RF)) :
cpFile.write('%10.3F\n' % (RF[i].mises))
else:
cpFile.close()
#引入模塊,因為需要打開結果文件
#打開結果文件,并復制給變量myodb
#打開一個txt文件
#將輸出場賦值給RF
#循環語句,向txt文件逐行寫入mises應力
Abaqus的結構層次分的很細,比如結果文件下分如下:
圖2 Model data
使用過Abaqus的都知道step表示載荷步,frame表示載荷子步,因而在讀取Mises應力時需要詳細地指定輸出哪一步的應力,而應力結果是輸出場數據(fieldOutput)的中一種,需要指定是何種應力,程序才知道怎么讀取并寫入。
展開 Abaqus諧響應分析結果的輸出
對于諧響應分析,分析結果需要查看結構在整個掃頻區間內的響應情況,例如:位移、應力、應變等。因此需要繪制整個頻率區間結構的響應曲線,方法如下。
進入后處理模塊,選擇Creat XY date 如下圖所示:
如上圖2-4所示在Creat XY Date可以指定曲線縱坐標的變量,可以是加位移、應力、加速度、速度等,還可以定義繪制指定的分析步或頻率的結果,最后選擇節點,點擊Polt即可繪制該點相應變量的曲線,如圖2-5所示。在利用Abaqus進行諧響應分析時,需要注意以下幾點:
①對于需要利用模態進行多次諧響應分析的問題,可以使用重啟動,只需進行一次模態分析,其它分析可在模態分析的基礎上進行,可大大的減少計算成本。
②在利用模態疊加法進行諧響應分析時,模態頻率一定要將諧載荷的頻率段包含在內,即,要包含掃頻區間。與此同時,模態三個方向的有效質量要達到90%。
③在利用模態疊加法進行諧響應分析時,若結構的模態頻率間隔較小,在諧響應分析步中,在滿足計算要求的情況下,盡可能較小的定義特征頻率間的頻率點數與偏置。
展開 
ABAQUS腳本將計算結果輸出到文本中 ¥1.99
ABAQUS的結果大多以字典存儲,之前的帖子講了怎么將結果輸出到Excel中,此處講述如何將多個數據輸出到文本文件中,方便用于其他目的。
附件中的結果文件是一個L型梁,輸出的數據包括單元ID,應變能、mises應力和應變等,如果不做額外處理輸出的結果很不整齊,看起來繁雜。為此在使用python腳本讀取結果數據時,在腳本中專門編寫了一個文本排列函數,如下所示:
def fb(character, identifier, length):
if identifier == 'f':
sentence = character + ' '*(length - len(character))
else:
sentence = ' '*(length - len(character)) + character
return sentence
輸出結果如下:
腳本在附件中,需要的朋友可以嘗試下載。
展開 python提取abaqus場輸出結果
最近寫了一個簡單的python讀取abaqus結果中的場輸出數據,就在這里簡單的講一下整個流程。后續采用abaqus讀取場輸出結果應用也挺廣泛。整個過程的流程圖可以用下圖來概括,因為不是計算機專業,考慮沒那么細致,很多python函數也是即查即用,當然程序后續根據要求也可以不斷更改。
Abaqus動態分析中,如何快速查看整個響應過程中場輸出結果的最值 ¥9.9
<p>需求:動態分析(基于模態的瞬態動態響應分析、顯示動態分析等)中結果的響應也是一個動態的過程,不確定哪個時刻的結果是最大值或者最小值,或者說想知道整個響應過程中的最大值、最小值是多少。結果輸出中是不會直接輸出的,只能看到每幀場輸出中的最值,又不可能自己逐幀場輸出結果里去看,然后找到所有幀中的最值,那么Abaqus軟件內如何實現呢?</p><p><br></p><p><span style="background-color: rgb(255, 255, 255); color: rgb(25, 27, 31);">原創聲明:未經本人同意,禁止抄襲、二次創作及轉載!</span></p>
展開 讀取ABAQUS結果文件中的單元應變能并輸出至excel文件的處理腳本 ¥1
腳本內容如題。