
發布
注冊
/
登錄abaqus完全積分的案例
為什么完全積分線性單元在彎曲載荷下會剪切自鎖?
針對上面的線性矩形單元,其應變矩陣如下圖所示:
在完全積分模式下,例如針對第四個積分點(a/√3,b/√3),并將得到的節點位移代入,可以得到該積分點下的應變值為:
如圖中所見,該點的剪切應變不為0,這顯然不是純彎曲加載模式所要求的結果。然而需要注意,該現象是在純彎曲加載得到的節點位移和完全積分所對應的B矩陣的共同作用下得到的,如果不是純彎曲加載,那么節點位移不會有相關特征,完全積分線性單元得到的結果和相關加載模式也是符合的(莊茁P64倒數第二段);如果純彎曲加載下的線性單元實行減縮積分,也不會出現剪切自鎖問題,但是會帶來沙漏現象,我們將在下一篇筆記中對該現象一探究竟。
結語:本文算不得什么,只是從公式上加深了商業軟件使用者對剪切自鎖這一現象的了解,稍微知其所以然罷了。如果要進一步探究如何防止剪切自鎖,要構造怎樣的位移模式,需要更多功夫,可見如下博文:
易木木響叮當,公眾號:易木木響叮當
有限元編程中如何避免剪切自鎖?(非協調單元詳解)
參考資料:
《有限元分析基礎教程》曾攀,清華大學出版社,2008.
《有限元分析及應用》曾攀,清華大學出版社,2004.
《基于ABAQUS的有限元分析和應用》莊茁等,清華大學出版社2008.
《數值分析》歐陽潔等,高教社2009.
展開 ABAQUS直裂紋、斜裂紋圍道積分計算裂紋尖端J積分
之前算過一個關于裂紋擴展的問題,當時創建裂紋選擇的是contour intergral,后來又有人咨詢我裂紋尖端J積分的計算問題。我才恍然大悟,其實圍道積分方法還是適用于計算裂紋尖端在某時刻的J積分,至于動態擴展問題,還是交給XFEM吧(雖然也不太好)。
計算了幾種情況下的裂紋尖端J積分,包括直裂紋、斜裂紋以及裂紋尖端傾斜等三種情況。
部分試件的應力分布及J積分結果如圖所示:
abaqus熱力耦合---順序(間接)耦合和完全(直接)完全耦合的結果對比 ¥200
</p><p> 結論</p><p>順序耦合和完全耦合的結果對比分析證明了我們的設置是完全正確的,此帖子可以為初學者提供一定的學習知道,可以更快速地掌握abaqus中熱力耦合的設置方法,更早地進入科研課題;同時,對于已經學習了abaqus熱力耦合的科研人員也具有一定的學習價值,可驗證之前模型設置的正確性。</p><p>ABAQUS斷裂模擬收徒 ,保證快速學會各種ABAQUS斷裂模擬方法 1200/人(將享有各種插件以及程序,價值3000+、專門定制視頻、全程親自教學、各種模型調試及解答問題等等,傾囊相教)</p>
展開 ABAQUS輸出單元積分點坐標
方法
在ABAQUS CAE的場輸出中選擇的坐標點是節點的坐標,而節點是從積分點插值出來的,單元積分點的信息相對真實。所以最好是獲取積分點的信息,其中積分點的坐標無法在CAE中獲取,需要在關鍵字中添加。具體在每個分析步的單元輸出下面添加COORD,如果需要輸出節點的坐標也可以在節點場輸出下面添加COORD(這和CAE中場輸出選擇節點坐標的效果是一致的)。具體如下圖:
2.注意
在ODB結果中創建場輸出時會附帶著一份XYZ坐標,這個應該也可以當做單元的坐標,,但是我比較過這個附帶的坐標和單元的COORD輸出的坐標,有時候有點差別,可能是數據精度的問題。
展開 
ABAQUS 輸出節點坐標和積分點坐標
總結inp中添加關鍵字
輸出單元的積分點坐標:*EL FILE
COORD
輸出節點坐標:*NODE FILE
COORD
原貼出處:https://www.researchgate.net/post/How-to-find-integration-point-coordinates-in-Abaqus-CAE
這是帖子討論的,但是我的嘗試是兩個COORD生成的結果文件是一樣的,都是節點坐標
Abaqus中平面應力單元高斯積分點的順序
可以輸出umat接口中的變量coords進行查看
write(*,"(A,I4)") "npt = ", npt
write(*,"(A,3ES16.8)") "coords = ", coords
結果為:
npt = 1
coords = -5.77350269E-01 -5.77350269E-01 1.00000000E-02
npt = 2
coords = 5.77350269E-01 -5.77350269E-01 1.00000000E-02
npt = 3
coords = -5.77350269E-01 5.77350269E-01 1.00000000E-02
npt = 4
coords = 5.77350269E-01 5.77350269E-01 1.00000000E-02
因此Abaqus中平面應力單元高斯積分點的順序為:
展開 Abaqus中獲取積分點坐標的三種方法
經常有小伙伴問獲取積分點坐標的方法,今天給大家介紹三種獲取積分點坐標的方式,希望能給你們帶來幫助。
1 通過abaqus子程序獲取積分點坐標
Abaqus一些子程序中可以直接獲取積分點坐標,例如我們熟知的UMAT子程序中包含COORD參數,即為積分點坐標。順帶一提的是,當打開了幾何非線性時,該積分點是當前構形下的坐標,如果未打開幾何非線性則為初始坐標。
2通過history output輸出積分點坐標
Abaqus可以直接在歷程變量history output中輸出積分點坐標。直接在history output中勾選COORD選項,但是這里需要注意的是,Domain中的Set集合如果是node set,這里輸出來的是節點坐標,當這里是element set的時候,輸出來的才是積分點坐標。
3通過等參單元映射函數計算
等參元中,為了方便計算,把整體坐標映射到自然坐標,然后在自然坐標下進行高斯積分。如果知道了自然坐標下的高斯積分點,通過映射函數反算,便能得到整體坐標下的高斯積分點坐標。以四邊形等參單元為例,其以自然呢坐標為變量的插值形函數如下
坐標變換采取同樣的插值函數(叫做等參的原因),整體坐標和自然坐標的關系式如下,如果知道自然坐標下的高斯積分點,直接通過此公式計算其在整體坐標下的坐標。
展開 Abaqus降魔篇之圍道積分小探
1 分析目的
平面應變的一塊板,在扭矩的作用下,分析裂紋端的應力強度因子以及斷裂能
模擬采用CPE4R(使用CPE8R往往會得到更精確的結果)
2 模型建立
然后進行切分,主要是切出預制裂紋面以及圍道外邊
在這里注意切那個圓的時候一定要將半徑點選到裂紋上,以便劃分網格
這里的圓半徑為0.5mm
3 建立材料以及相關屬性
4 建立模型,預制裂紋
選擇之前的切分線
選擇裂紋端點
這里的0.25是根據劃分網格的種子點確定的(4個點)
而collapsed的選項是要求對重疊單元的裂紋控制只對單一點有效
5 設置邊界條件
a首先是施加扭矩端的耦合
b然后是扭矩施加
另一端同理可得
c 限制位移
6 計算吧!
然后你可以看到應力強度因子以及斷裂能
或者你比較喜歡看趨勢
在或者你對歷史輸出里面的5感到困惑
那就看下圖
展開 abaqus怎么獲取單元積分點上的坐標呢
如題 為什么我查詢的時候坐標都是0
abaqus C3D8 單元 計算中采用了多少個積分點?
按照正常的理解,毫無.疑問,abaqus 全積分一定是采用了2x2x2=8個積分點。
從后處理結果來看,似乎也是如此,每個單元存在8個積分點。
然而,如果自己動手跑一遍程序,就會發現事實遠非如此,采用全積分計算得到的結果與abaqus 存在差異,原因何在?
事實賞,abaqus C3D8 采用的選擇積分方式(selective intergation schema),即對于偏應變,采用8個積分,對于球應變,采用中心點積分。這樣計算得到的結果才能與abaqus 完全對標,亦可從abaqus 幫助文檔得到答案。
展開 完全基于VS的Abaqus UMAT等用戶子程序編譯、運行和調試 ¥1
Abaqus用戶子程序提供了很多接口幫助用戶實現自定義單元、材料等重要功能,但是功能強大,卻不友好,一般來說,存在以下四個問題:
1、 環境配置相對比較復雜,很多用戶在配置VS、Fortran和Abaqus的鏈接時就選擇了放棄;
2、 用戶子程序代碼的編譯問題不容易發現,用戶一般都需要在對應Job的日志里去查看,然后再去修改代碼,重新提交Job,如此反復,工作效率極低;
3、 調試不易,Abaqus自帶了調試Job的功能,但往往由于環境配置的問題,用戶不能正確地進入調試狀態,對用戶子程序代碼進行調試;
4、 由于Abaqus的用戶子程序編譯是每次提交任務后都會 重新執行的,即使用戶已經調試好用戶子程序代碼,也仍然需要重新編譯。同時給在共享用戶子程序時,就需要在多臺機器配置好用戶子程序的開發環境,實在是麻煩。
筆者通過一段時間的摸索和研究,找到了一種無需鏈接VS、Fortran和Abaqus,完全在VS中配置用戶子程序編譯環境的方法。編譯生成的文件可直接用于Abaqus,別的機器使用無需再配置開發環境。同時,筆者也根據調試代碼的需要,給出了一個實現單步調試的技巧,且無需再擔心由于環境配置問題無法進入調試狀態。詳細內容,見文檔。
方法指南.pdf
筆者也提供了配置好的vs工程。
展開 
有限元中單元積分點與節點應力相互轉換(CPE4為例)(ABAQUS)
在ABAQUS中,當需要獲取節點上的應力時,可以在后處理中建立路徑或者用查詢功能等獲取.
但是當需要大量的節點上應力數據時,很多人會用Python編程進行大批量的提取應力.但是提取出來的應力為單元積分點上的應力.無法獲取節點上的應力.同時在ABAQUS中的子程序中,也是對積分點上的數據進行操作.
本文基于個人興趣同時想要更加了解有限元背后原理和公式的想法.近日進行了一些初步的探索.希望大家批評指正. 本文基本不涉及原理公式,只在轉換積分點和節點的應力時列出公式。盡可能簡介易懂。
一: 單元類型及節點數目與位移,應變,應力階次的關系
本節內容基于有限元教材及一些網上資料.
(1)有限元求解的思路是:
一: 建立單元節點力與節點位移關系式.
二: 將彈性體上的外載荷等效移置到節點上.
三: 在節點上建立力的平衡方程,求得節點位移.
四: 通過彈性力學基本方程,可求得單元的應力和應變.
(2) 四節點矩形單元
以四節點矩形單元為例,在此只表達有限元教材中的結論,具體公式可參考有限元教材。
(3)ABAQUS中的CPE4單元
CPE4: A 4-node bilinear plane strain quadrilateral.
該單元有四個節點,同時有四個積分點。
對于每個應力分量(注意:在此只看一個應力分量),單元內任一點(x,y)的應力表達式為:
stress=a*x*y+b*x+c*y+d (1)
該表達式有四個未知量:a,b,c,d。
若知道四個積分點的應力分量。將每個積分點帶入上式,則會形成包含四個方程的線性方程組。
展開 ANSYS中的節點解與單元解是怎么回事?下次別說你還不懂
后來注意到,前一篇文章提過一個概念,縮減積分單元和完全積分單元,重新檢查了一下ANSYS默認的單元設置,如圖3所示,默認的單元設置是Reduced integr(縮減積分),為了查看完全積分單元輸出單元解是否也還是八個節點的值,修改設置并重新計算,同樣的單元的單元應力解如圖4所示。
圖3
圖4
結果發現依然還是輸出8個節點的值,這個和理論上的單元應力輸出解不一致,按道理應該是輸出27個積分點的值才對。為了證明這個結論,采用Abaqus軟件計算,采用20節點完全積分單元進行計算。計算后查詢某個單元的單元解,如圖5所示:
圖5
圖5中沒有顯示完全,但是輸出的單元的解確實是27個。
重新采用Abaqus計算8節點完全積分單元,某個單元的單元輸出解如圖6所示:
圖6
正好是八個單元輸出解。
再重新計算8節點縮減積分單元,輸出單元的單元輸出解如圖7所示:
圖7
圖7中只有一個單元輸出解,因為采用縮減積分單元后,8節點單元只有一個積分點。
而20節點單元縮減積分后,有7個積分點,應該輸出7個單元解,經過計算如圖8所示:
圖8
圖8正好是7個輸出解。
Abaqus的計算表明單元輸出解果然是輸出單元積分點的值,采用完全積分和縮減積分單元輸出解不一樣,求解精度不一樣。
那么為什么ANSYS則沒有這種規律呢?
其實后臺程序計算是肯定是按照理論上走的,也就是先得到節點的位移,再得到單元積分點的應力應變,再外推得到各個單元節點的應力應變,最后平均得到節點解。
ANSYS之所以顯示的單元解不是單元積分點的解,而是各個節點的解,是因為ANSYS已經在得到單元積分點的解之后經過外推得到了單元各個角節點的解,但是還沒有做平均。
也就是,ANSYS的單元解,其實不能完全看作單元解,筆者稱之為單元角節點解。
展開 ANSYS中的節點解與單元解是怎么回事?附solid186與solid185單元結果對比文檔下載
后來注意到,前一篇文章提過一個概念,縮減積分單元和完全積分單元,重新檢查了一下ANSYS默認的單元設置,如圖3所示,默認的單元設置是Reduced integr(縮減積分),為了查看完全積分單元輸出單元解是否也還是八個節點的值,修改設置并重新計算,同樣的單元的單元應力解如圖4所示。
圖3
圖4
結果發現依然還是輸出8個節點的值,這個和理論上的單元應力輸出解不一致,按道理應該是輸出27個積分點的值才對。為了證明這個結論,采用Abaqus軟件計算,采用20節點完全積分單元進行計算。計算后查詢某個單元的單元解,如圖5所示:
圖5
圖5中沒有顯示完全,但是輸出的單元的解確實是27個。
重新采用Abaqus計算8節點完全積分單元,某個單元的單元輸出解如圖6所示:
圖6
正好是八個單元輸出解。
再重新計算8節點縮減積分單元,輸出單元的單元輸出解如圖7所示:
圖7
圖7中只有一個單元輸出解,因為采用縮減積分單元后,8節點單元只有一個積分點。
而20節點單元縮減積分后,有7個積分點,應該輸出7個單元解,經過計算如圖8所示:
圖8
圖8正好是7個輸出解。
Abaqus的計算表明單元輸出解果然是輸出單元積分點的值,采用完全積分和縮減積分單元輸出解不一樣,求解精度不一樣。
那么為什么ANSYS則沒有這種規律呢?
其實后臺程序計算是肯定是按照理論上走的,也就是先得到節點的位移,再得到單元積分點的應力應變,再外推得到各個單元節點的應力應變,最后平均得到節點解。
ANSYS之所以顯示的單元解不是單元積分點的解,而是各個節點的解,是因為ANSYS已經在得到單元積分點的解之后經過外推得到了單元各個角節點的解,但是還沒有做平均。
展開 有限元計算的節點解與單元解
后來注意到,前一篇文章提過一個概念,縮減積分單元和完全積分單元,重新檢查了一下ANSYS默認的單元設置,如圖3所示,默認的單元設置是Reduced integr(縮減積分),為了查看完全積分單元輸出單元解是否也還是八個節點的值,修改設置并重新計算,同樣的單元的單元應力解如圖4所示。
圖3
圖4
結果發現依然還是輸出8個節點的值,這個和理論上的單元應力輸出解不一致,按道理應該是輸出27個積分點的值才對。為了證明這個結論,采用Abaqus軟件計算,采用20節點完全積分單元進行計算。計算后查詢某個單元的單元解,如圖5所示:
圖5
圖5中沒有顯示完全,但是輸出的單元的解確實是27個。
重新采用Abaqus計算8節點完全積分單元,某個單元的單元輸出解如圖6所示:
圖6
正好是八個單元輸出解。
再重新計算8節點縮減積分單元,輸出單元的單元輸出解如圖7所示:
圖7
圖7中只有一個單元輸出解,因為采用縮減積分單元后,8節點單元只有一個積分點。
而20節點單元縮減積分后,有7個積分點,應該輸出7個單元解,經過計算如圖8所示:
圖8
圖8正好是7個輸出解。
Abaqus的計算表明單元輸出解果然是輸出單元積分點的值,采用完全積分和縮減積分單元輸出解不一樣,求解精度不一樣。
那么為什么ANSYS則沒有這種規律呢?
其實后臺程序計算是肯定是按照理論上走的,也就是先得到節點的位移,再得到單元積分點的應力應變,再外推得到各個單元節點的應力應變,最后平均得到節點解。
ANSYS之所以顯示的單元解不是單元積分點的解,而是各個節點的解,是因為ANSYS已經在得到單元積分點的解之后經過外推得到了單元各個角節點的解,但是還沒有做平均。
也就是,ANSYS的單元解,其實不能完全看作單元解。
展開