
發布
注冊
/
登錄ansys的平均應力理論的案例
ABAQUS中求解某部分單元的平均應力或平均應變 ¥10
1、參考模型:單向纖維的RVE模型;
2、腳本功能:針對指定的單元集合,在后處理中求解平均應力和平均應變。
3、應用的公式:一階均勻化計算方法。對于 RVE 模型的平均真應力和平均真應變,可通過對 RVE 內每一個單元的真應力 (真應變)取均值獲得。使用一階均勻化計算方法輸出的應力和應變適用于各種邊界條件,但需要對每個單元進行應力(應變)的輸出和計算。
【abaqus】個人筆記—應力奇異&應力平均&應力集中
【abaqus】個人筆記—應力奇異&應力平均&應力集中
CFD理論|Reynolds平均法(RANS)-<2>
導讀:介紹直接建立Reynolds應力方程的方式。
前面介紹的Reynolds平均法都采用各向同性的湍動粘度來計算湍流應力,因此無法考慮旋轉流動及流動方向表面曲率變化的影響。因此有必要直接對Reynolds直接建立微分方程進行求解。
雷諾應力模型分為兩種:Reynolds應力方程模型,代數應力方程模型。
Reynolds應力方程模型
Reynolds應力方程模型簡稱RSM(Reynolds Stress equation Model),要使用該模型,要先得到Reynolds應力輸運方程:
式中為應力產生項,為壓力應變再分配項,為擴散項。
(1)RSM模型的方程組這里就不展開。RSM共需求解16個方程,有14個經驗常數,機時約是 模型(5個方程,2個經驗常數)的10倍。
(2)與標準模型一樣,RSM也屬于高Re數的湍流計算模型,在靠近壁面處,由于分子粘性作用,湍流脈動受到阻尼,上述方程不再適用,因此要么用壁面函數,要么用低Re數的RSM來處理近壁面區流動計算問題。
(3)與 模型相比,RSM應用范圍更廣、包括更多物理機理。RSM雖然可以考慮一些各向異性效應,但并不一定比其他效果好,在計算突擴流動分離區和計算湍流輸運各向異性較強的流動時,RSM由于雙方程模型;而對于一般回流流動,RSM就沒有優勢。
代數應力模型
RSM過于復雜,且計算量大。有學者從RSM出發,建立代數應力模型(Algebraic stress model,ASM)或稱為擴展模型,其包含以下幾點假設:
忽略分子擴散項和不考慮浮力流;
局部平衡:產生項=耗散項;
應力對流項與應力擴散項、湍動能對流項、湍動能擴散項差別不大。
在ASM中,雷諾應力是通過代數方程式而不是用微分方程來求解的,大大減少了計算工作量。
展開 CFD理論|Reynolds平均法(RANS)
導讀:簡單介紹Reynolds平均法(RANS)
雖然瞬時的Navier-Stokes方程可以描述湍流,但是方程的非線性使得求解精確解極端困難,在工程應用上應用很少。
而均化的Navier-Stokes方程(《CFD理論|湍流流動方程》)可以將瞬態的脈動量通過時均化方程體現。Reynolds平均法的核心是不直接求解瞬態的N-S方程,而是想辦法求解時均化的湍流方程。
方程組封閉
上篇文章《CFD理論|湍流流動方程》討論到湍流基本方程的封閉性問題,方程數量(4)少于未知量數量(10),因此需要找到足夠的補充方程,使方程組封閉。補充的方程自然是圍繞湍流方程中多出來的二重相關量
( ,雷諾應力項)。要使方程封閉,需要對雷諾應力作相應假設,建立應力的表達式或引入新的湍流模型方程,通過這些表達式/湍流模型,將時均量和脈動量聯系起來,由于沒有特定的物理定律可以建立湍流模型,所以目前湍流模型只能以大量的試驗觀察結果為基礎。
根據對雷諾應力的處理方式不同,目前湍流模型分為兩大類:雷諾應力模型、渦粘模型。
雷諾應力模型
在雷諾應力模型方法中,直接構建表示雷諾應力的方程,雷諾應力方程是微分形式的,稱為雷諾應力方程模型。
如果將雷諾應力方程的微分形式簡化為代數方程的形式,則稱這種模型為代數應力方程模型,這樣雷諾應力模型就包括:(1)雷諾應力方程模型;(2)代數應力方程模型.這兩種模型我們將在下一篇文章詳細介紹。
渦粘模型
渦粘模型方法中,一般不直接處理雷諾應力項,而是引入湍流粘度,或稱渦粘系數。
展開 
CFD理論|Reynolds平均法(RANS)-<1>
導讀:介紹Reynolds應力項的渦粘模型。渦粘模型包括:零方程模型;一方程模型;兩方程模型。
零方程模型
零方程模型指的是不用微分方程,而是用代數關系式。模型采用平均運動場的局部速度梯度來表示局部雷諾應力,把渦粘度與時均值聯系起來。因此又叫平均速度場模型。
零方程模型方案有很多種,最著名的是Prandtl提出的混合長度模型,
該模型假定湍動粘度正比于時均速度的梯度和混合長度的乘積:
湍流切應力則表示為:
其中,混合長度 由經驗公式或試驗確定。混合長度理論直觀簡單,可以成功預測射流、邊界層、管流的湍流運動,許多實際問題中的不是常數,所以在實際工程中很少使用。
一方程模型
零方程模型中,湍動粘度和混合長度 把Reynolds應力和平均速度梯度相聯系,忽略了對流和擴散的影響。為了彌補混合長度假定的局限性,在湍流的時均連續方程和Reynolds方程的基礎上,建立湍動能k的輸運方程,把表示為k的方程,使方程組封閉:
從左至右,方程中各項分別為瞬態項、對流項、擴散項、產生項、耗散項。可以證明,忽略對流擴散時,一方程模型可以化為混合長度理論。復雜問題用一方程仍很困難,所以只是過渡性理論。
兩方程模型
一方程模型考慮了湍動能對流項及擴散項對湍流輸運過程的影響,采用 來表示湍動粘度。但在一方程模型中特征長度仍需要當地流動狀態的函數(一般是代數式),沒有考慮對流及擴散對l的影響,因此對于復雜流動求解存在困難。
在一方程模型的基礎上,再增加一個以為因變量的控制方程,或用 ( 渦頻率= ), (脈動渦量),(耗散率)的控制方程來使方程封閉。目前工程上最常用的是 雙方程湍流模型。
展開 ANSYS workbench中的應力如何對應四種強度理論?(二)
第三強度理論(最大切應力理論 )
核心思想:材料破壞由最大切應力引起,當構件內某點的最大切應力達到單向拉伸屈服時的最大切應力(σ?/2)時,材料屈服。
ANSYS 中表達式:
等效應力 σ? = σ? - σ?
(σ?為最大主應力,σ?為最小主應力,取兩者差值)
適用場景:塑性材料(如鋼、鋁)的屈服判斷,計算簡單,偏于安全,工程中廣泛應用
ANSYS 中表達式1:(s1-s3)/2
ANSYS 中表達式2:sint
ANSYS 中表達式3:默認的intensity
4. 第四強度理論(形狀改變比能理論 /von Mises 準則)
核心思想:材料破壞由形狀改變比能(單位體積內因形狀變化儲存的能量)引起,當形狀改變比能達到單向拉伸屈服時的形狀改變比能時,材料屈服。
ANSYS 中表達式:
等效應力 σ? = √[(σ?-σ?)2 + (σ?-σ?)2 + (σ?-σ?)2]/√2
(綜合三個主應力的平方差,更接近塑性材料的實際屈服行為)
適用場景:塑性材料的屈服判斷,比第三強度理論更符合實驗結果,是 ANSYS 中默認且最常用的強度理論(如結構設計、有限元分析常規校核)。
ANSYS 中表達式1:(0.5*((sx-sy)^2+(sy-sz)^2+(sz-sx)^2)+3*(sxy^2+sxz^2+syz^2))^0.5
ANSYS 中表達式2:(0.5*((s1-s2)^2+(s2-s3)^2+(s3-s1)^2))^0.5
ANSYS 中表達式3:seqv
總結
在 Workbench 的后處理中,可直接查看對應理論的等效應力云圖,快速判斷結構是否滿足強度要求。
展開 abaqus單元平均應力的計算
abaqus計算結果可得到節點應力,那位大牛知道如何得到單元(或二維計算模型)的平均應力?
ABAQUS提取單元平均應力/應變 ¥10
利用python讀取odb文件(可一次讀取多個odb)生成csv(excel)文件。提供源文件,注釋詳細,可根據需要進行修改。
ANSYS分析VS理論解 | 簡單托架應力和變形分析(桿單元實例)
(4) 查看各單元應力:
①定義軸向應力單元表:Main
Menu >General Postproc >Element Table>Define
Table,→Lab:輸入Stress_I →Item:選擇By sequence num →Comb:選擇LS,在LS后面輸入“1”→OK
→Apply →Lab:輸入Stress_J →Item:選擇By sequence num →Comb:選擇LS,在LS后面輸入“2”→OK
→Close。
③軸力列表顯示:Main Menu >General Postproc >Element Table>List Element Table→選擇FN→OK→記錄各個單元的軸力→File →Close。
④畫軸力圖:Main Menu>General Postproc>Plot Results>Contour Plot>Line Elem Res(見圖1.5)→LabI選擇Stress_I,LabJ選擇Stress_J→OK。
5.退出ANSYS軟件
Utility Menu >File >Exit →Quit-No Save →OK
來源:ANSYS學習與應用公眾號,版權歸作者所有。
展開 Python提取場輸出結果計算平均應力應變
###########################################################################
寫在前面,最近回看了一些自己之前編寫的和這個py代碼,發現自己寫的可能和公式表達的有偏差,在我的測試過程中,提取的是單元積分點處的應力應變值,由于只有一個積分點(這個積分點在質心,與centroid提取得到的結果一樣),因此自然的把這個值當成了單元的平均應力或平均應變,然后進行計算,但是我現在覺得這并不是獲取單元平均應力的方式,也就是代碼并沒有實現所謂的提取平均應力應變的功能,希望有大神可以指點迷津。
如果是有多個積分點的話,是不是應該對每個積分點權重進行積分,加權平均這樣得到單元的平均應力,然后乘單元體積,將所有單元的值求和再除模型的總體積,就得到整個RVE模型的平均應力。
###########################################################################
最近寫了一個簡單的python讀取abaqus結果中的場輸出數據,想通過均勻化計算方法來計算所定義集合的平均應力應變曲線,之前是手動提取了各個數據導出,然后用excel、matlab處理,但是很慢,而且很費勁,于是就想著用Python來處理結果。
有需要的同學可以下載附件文件,打開abaqus,file→run script,選擇腳本文件即可運行。
average.zip
均勻化計算方法:
參考文獻:馬思鳴. 精沖用碳鋼微觀組織對宏觀力學性能及精沖性能影響研究[D]. 上海:上海交通大學,2017.
我在網上找了挺久挺多的關于Python提取場輸出結果的,
主要對以下幾篇帖子進行了參考:
http://forum.simwe.com/forum.php?
展開 代表性體積單元根據單元體積應力應變加權平均 ¥20
現如今,越來越多的人開始對復合材料性能進行研究,如何通過<a href="/major/abaqus">abaqus提取代表性體積單元是非常重要的,我提供了一種可以根據單元體積進行應力應變平均的代碼,希望對大家有用。

Abaqus平均應力和應變提取 ¥80
利用python腳本對ODB文件中單元集里所有積分點的應力及應變進行自動提取并計算平均值
能夠得到每一幀的應力和應變平均值,并保存到CSV文件中
所得到的應力包括S11,S22,S33,S12,S13,S23以及Mises七個應力平均值,以及E11,E22,E33,E12,E13,E23六個應變平均值
Abaqus插件——平均應力應變提取 ¥60
通過該插件可實現:
1)提取所有幀的任意單元集合的平均應力(事先定義單元集合,如圖中的SET-1)
2)提取所有幀的任意區域的x、y、z方向的平均應變(事先定義節點集合,如圖中的SET-2)
3)將以上數據保存至excel文件(excel文件名為odb文件名稱+_Stress_Strain.csv)
*************************注意事項******************************
1、插件使用過程中,如有任何問題請發郵件至shenz1hao@126.com
2、插件僅做學習交流使用,尊重原創者,切勿以營利目的傳播
*****************************************************************
********************插件安裝及使用*******************************
1、電腦路徑下輸入 %homepath%\abaqus_plugins并回車
2、將Stress-Strain文件夾解壓至當前目錄下
3、打開abaqus,菜單欄中點擊plug-ins,里面找出Stress-Strain
4、輸入相應參數(hx、hy、hz表示x、y、z方向模型長度,當以上三參數取1時輸出的為該方向位移)
*****************************************************************
展開 在abaqus中采用python提取結果-平均應力 ¥5
因對結果分析需求,需提取某單元集的每一分析步(包含每一子步)的平均應力,目前網上雖有很多代碼是關于單元集的平均應力的提取,但并未有針對每一子步都需要提取結果的代碼。故針對此需要編寫了python代碼。
py源代碼|平均應力應變位移輸出至Excel
/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
展開