
發布
注冊
/
登錄abaqus中輸出數據的案例
abaqus 獲取odb場輸出中某一集合的數據
獲取odb中某一個集合的數據,有代碼實現和cae實現
代碼實現:主要的是一個getSubset的函數,可以參考abaqus手冊
https://help.3ds.com/2022/english/dssimulia_established/SIMACAECMDRefMap/simacmd-c-odbintroreadregpyc.htm?
Abaqus的歷史數據輸出的問題
Abaqus的歷史數據輸出的問題
Abaqus結果輸出時有場輸出(Field Output)和歷史輸出(History Output),場變量輸出用于描述某個量隨空間位置的變化,歷史變量用于描述某個量隨時間的變化,區別是場變量輸出大量的單元或節點上的計算結果,寫入odb文件的頻率低,用與生成后出的各個圖。歷史變量輸出少量單元或節點上的計算結果,寫入Odb的頻率高,用于生成X-Y圖。歷史變量允許單獨輸出某個獨立分量,經常用到的就是這個獨立分量的輸出,比如輸出結構最大點的位移變化曲線,或者盈利最大點的應力變化過程等。
在輸出歷史數據時,大多數的輸出結果比如位移和應力等,不能實現整個模型全部輸出,也就是需要指定set(參考集),需要設置相關的set后,結果輸出才會有這些數據。
定義Set的對話框如圖1所示,定義Set的類型時有三個,按照以往的理解,一般經常用到的應該是Node,也即節點集,想要輸出這個節點在求解過程中的Mises應力變化過程,選擇某個節點,通過Step模塊的History Output Requests,如圖2所示。
圖1
圖2
選擇剛才設置的Set,選擇需要輸出的結果項,此處為Mises。之后計算,計算后提取結果時,發現并沒有輸出該節點的Mises歷史數據。
筆者很快想到了,有可能是不能輸出節點的應力,因為涉及到節點解和單元積分點解的問題,這個之前已經討論過。基于此考慮,那么輸出該節點的位移場肯定沒問題,因為節點位移解是最先得到的節點解。
將Mises換成UT,如圖3所示。
同時,新建一個Element Set,因為Node Set無法輸出歷史數據,那么采用Element Set也肯定能夠輸出單元積分點的數據,如圖4所示。
展開 Abaqus Python 二次開發-歷程輸出數據提取的python實現 ¥3.49
在Abaqus中,歷程變量的輸出,尤其是反力及位移,經常是如下的格式。
此時,如果想提取數據,一些關于Abaqus 二次開發的書籍里提供的方式是:odb.step['Step-1'].historyRegions['Node PART-TRIMMED-MESH.288422']. historyOutputs['U1'].data 。這種方式,需要輸入 'Node PART-TRIMMED-MESH.288422' 這種很長的字符串,繁瑣且容易出錯。
在付費內容中,提供了一種便捷的方法,得到長字符串,提取相關的數據,并將數據保存為csv文件。
展開 ANSYS后處理將數據以輸出到txt文本中應用案例 ¥10
ANSYS后處理將數據以輸出到txt文本中,用到的主要命令為do循環、get命令;
循環命令*DO,Par,IVAL,FVAL,INC
Par循環變量的名稱,可以定義為i,j等
IVAL, Par循環變量的初始值
FVAL, Par循環變量的終止值
INC循環變量的增長步長,缺省值為1
例子1:*do,i,1,100
***********************************************************************************************************************
獲取命令*GET, Par, Entity, ENTNUM, Item1, IT1NUM, Item2, IT2NUM
Par變量的名稱,將獲取的值存到變量中去
Entity,獲取的對象類型可以為node、element、area等
ENTNUM為對象的ID號
Item1可以為單元表選項smic等
IT1NUM可以為單元表選項smic對應的輸出序號,對于梁單元可以用來輸出載荷或應力
例子1統計完單元數量賦值給變量number:*GET, number, ELEM,0,count
例子2提取單元最大的ID號賦值給變量number:*GET, number,ELEM,0,NUM,MAX
**********************************************************************************************************************
數組定義命令*DIM,Par,Type,IMAX,JMAX,KMAX,Var1,Var2,Var3,CSYSID
Par數組的名稱
Type
展開 
利用Python解析Abaqus的ODB數據并輸出為VTK格式 ¥199
在做結構分析的時候,做出來的結果在一些情況下可能需要提取稱為其他格式的數據,比如vtk格式,能夠提供更靈活的數據分析能力。
于是開發了一些代碼用于這些數據的提取,部分Abaqus展示效果圖和在Paraview中的效果圖展示如下:
需要PC安裝了Abaqus軟件并且支持Python Script接口;目前本人使用的版本是Abaqus/CAE 2021版本。
目前支持C3D4、C3D10、C3D8、C3D8R單元類型。
提取ODB文件中所有frame的數據,每一幀對應一個結果文件;提取方法為遍歷所有frame,獲取所有fieldOutput,獲取fieldOutput上的數據,SCALAR和VECTOR類型的數據是定義在節點上的,直接獲取POINT_DATA即可。
目前對于Tensor類型的數據,由于從場數據中提取得到的是積分點上的數據,目前的處理方式是計算所有積分點數據的平均值,作為CELL_DATA進行處理;其他數據作為POINT_DATA進行處理。
目前的腳本文件結果如下所示:
展開 Abaqus_Python 后處理結點數據提取、場變量云圖輸出 ¥1.99
今天體會了Python腳本操作ODB文件進行數據的輸出、處理等方面的快速高效。
首先介紹一下背景,同事的項目,計算case較多。每個case需要輸出幾個路徑上的部分節點值,而且需要針對不同的case、不同的幀、不同的視角截圖、保存云圖,如果人工出圖和提取節點數據,工作量會非常大,費時會遠遠超出計算所用時間;并且,同事還要求我根據case名稱、組件名稱(模型有多個組件組成,且網格是在part上畫的,所以同一個節點編號可能對應多個節點)等保存成不同的文件。
結點溫度數據沒有保存,因此沒有輸出。下圖是自動輸出的png格式云圖。
比較倉促,代碼也比價粗糙。回頭做一個詳細的介紹。
主要代碼見下。
展開 umat等子程序用open和write輸出數據,出現一直顯示運行中,增量步不計算的現象。 ¥10
abaqus子程序中用open和write,close這些命令輸出自己感興趣的數據。 但有時候會一直顯示運行中,abaqus沒有增量步計算。我發現大量論壇上很多人出現了這個問題,但一直未解決。如何解決這個問題,我嘗試了多種方法,調試了大量程序,最終發現可以通過以下方法解決。以下內容包括
產生此現象”一直顯示運行中,abaqus沒有增量步計算“的原因分析;
解決方案;
ABAQUS中輸出Cohesive單元的斷裂形式
數據提取
云圖有時候可以給論文或文章增光添彩,但是作為觀點的論據,有時候顯得就比較單薄,因此通常需要提取一些數據,從而增加分析結果的可信度,比如:
1)裂縫面積隨時間變化曲線:
2)裂縫體積隨時間變化曲線:
3)最大裂縫寬度隨時間變化曲線:
4)破裂單元數量隨時間變化曲線:
5)拉伸破壞面積占總面積比率曲線(根據MMIXDMI進行判斷):
目前,ABAQUS無法直接提取到這些數據,需要通過Python后處理二次開發獲得,有需求的同學可以嘗試自己編寫,畢竟以后編程將會和開車一樣,成為生活的工具。
來源:CAE技術資訊
作者:陳佳敏
展開 Abaqus中溫度輸出的規定 ¥10
Abaqus中溫度輸出的規定,詳細解釋了abaqus中實體單元,殼單元,梁單元溫度輸出的規定,并用實例進行了展示。
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
輸出結果如下:
腳本在附件中,需要的朋友可以嘗試下載。
展開 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如何輸出分析過程中每一時刻的最大溫度曲線
ABAQUS如何輸出分析過程中每一時刻的最大溫度曲線,或者輸出分析過程中每一時刻最大溫度值,如下圖所示
微信截圖_20180823102044.jpg
Abaqus二次開發讀取變形后的節點坐標并輸出到txt文件中。讀取模態頻率到txt 文件中。 ¥10
有時候在abaqus中,我們需要知道某一個集合中的節點變形后的坐標。以此為輸入來進行一些研究。這里我用一個自編函數,將節點集合變形后的坐標寫入到一個txt文件中。格式化的寫入文件,方便用此坐標來進行計算研究。
同樣有時候,需要將計算的模態頻率值提取出來。同樣用一個函數將模態頻率提取出來,放進txt文件中,方便后續研究。
讀取的節點結果如下圖所示:
Abaqus中利用橡膠實驗數據獲取本構函數曲線
ABAQUS軟件中有多種橡膠材料的本構模型,材料本構模型與試驗數據的關聯程度直接影響橡膠分析的精度。ABAQUS提供自動材料評估工具,該工具不僅能夠使用試驗數據擬合出所選本構函數(應變能函數)的參數,而且還能將本構函數曲線與試驗數據(名義應力-應變曲線)繪制在同一圖表中,便于對比擬合效果。
1、選擇超彈性材料,輸入源為:Test data。
2、分別輸入單軸、雙軸、平面或其中一種試驗數據,如下圖單軸拉伸試驗數據。根據試驗數據種類的多少選擇不同的本構模型。
3、返回模型樹,使用Evaluate 功能來評估多種應變能函數。
4、查看擬合出不同應變能函數的參數及其數據穩定范圍
5、查看擬合出的曲線結果,可對比不同應變能函數擬合出的曲線差異。
文章來源:有限元在線
展開 ABAQUS中隱式和顯式的節點和單元的輸出變量解析
FSLIP
Field: yes History: no .fil: no
Length of contact slip path at secondary nodes during contact (FSLIPEQ) and in some
cases (see About contact pairs in Abaqus/Explicit) components of net contact slip in local
tangent directions (FSLIP1 and FSLIP2). These variables remain constant while a
secondary node is not in contact.
FSLIPR
Field: yes History: no .fil: no
Magnitude of contact slip rate at secondary nodes during contact (FSLIPR) and in some
cases (see About contact pairs in Abaqus/Explicit) components of contact slip rate in local
tangent directions (FSLIPR1 and FSLIPR2). These variables are set to zero while a
secondary node is not in contact.
BONDSTAT
Field: no History: yes .fil: no
Spot weld bond status.
展開