有限元理論基礎及Abaqus內部實現方式研究系列34: 非線性瞬態分析
(原創,轉載請注明出處)
1 概述
本系列文章研究成熟的有限元理論基礎及在商用有限元軟件的實現方式,通過
(1) 基礎理論
(2) 商軟操作
(3) 自編程序
三者結合的方式將復雜繁瑣的結構有限元理論通過簡單直觀的方式展現出來,同時深層次的學習有限元理論和商業軟件的內部實現原理。
有限元的理論發展了幾十年已經相當成熟,商用有限元軟件同樣也是采用這些成熟的有限元理論,只是在實際應用過程中,商用CAE軟件在傳統的理論基礎上會做相應的修正以解決工程中遇到的不同問題,且各家軟件的修正方法都不一樣,每個主流商用軟件手冊中都會注明各個單元的理論采用了哪種理論公式,但都只是提一下用什么方法修正,很多沒有具體的實現公式。商用軟件對外就是一個黑盒子,除了開發人員,使用人員只能在黑盒子外猜測內部實現方式。

一方面我們查閱各個主流商用軟件的理論手冊并通過進行大量的資料查閱猜測內部修正方法,另一方面我們自己編程實現結構有限元求解器,通過自研求解器和商軟的結果比較來驗證我們的猜測,如同管中窺豹一般來研究的修正方法,從而猜測商用有限元軟件的內部計算方法。我們關注CAE中的結構有限元,所以主要選擇了商用結構有限元軟件中文檔相對較完備的Abaqus來研究內部實現方式,同時對某些問題也會涉及其它的Nastran/Ansys等商軟。為了理解方便有很多問題在數學上其實并不嚴謹,同時由于水平有限可能有許多的理論錯誤,歡迎交流討論,也期待有更多的合作機會。
通用結構有限元軟件iSolver介紹視頻:

http://www.yqgqt.org.cn/college/video/c12884
==第34篇:非線性瞬態動力學==
在系列文章第三十三篇時,我們講了線性瞬態動力學的原理,瞬態分析有線性和非線性之分,如果系統有材料、大變形、邊界等非線性效應,那么就是非線性瞬態分析,而瞬態分析往往都有物體的大轉動大變形問題,也會涉及材料的損傷破壞、物體的撞擊接觸等,譬如沖擊爆炸就是典型的強非線性瞬態動力學的過程,所以在實際工程中的瞬態分析都是以非線性為主。本章我們介紹一下非線性瞬態動力學的求解公式,并以上次線性瞬態動力學中的單擺例子來說明非線性瞬態動力學在有限元軟件中的內部實現原理。

1.1 非線性瞬態動力學理論
1.1.1 非線性瞬態動力學方程
瞬態動力學的運動方程包括了質量陣M相關的慣性力項和阻尼陣C相關的阻尼力項,如下:
一般質量矩陣與時間和位移無關,而K和C如果和位移和時間相關,那么就是非線性瞬態問題。為簡單起見,我們不考慮阻尼項。得到如下表達式:

和線性瞬態動力學類似,在理論上當前時刻的加速度就應該只和當前時刻的位移相關了,但計算的數值解把時刻分成了多個,方程如下:

其中
可以取當前時間步的初始時刻的剛度,那么就是修正的牛頓迭代方法,如果取結束時刻的剛度,就是完全牛頓迭代方法。
而加速度一定是要通過起碼兩個時刻才能計算出來的,取前時刻還是后時刻的位移來決定加速度就有隱式和顯式之分,任何一種分析理論上都可以得到正確解,只不過顯式不用求剛度,隱式需要求解剛度陣,而通過剛度的解釋可以更容易理解Abaqus內部的實現原理,在本章中,我們選用隱式非線性瞬態分析。在隱式方法中,將時間離散,加速度表示為位移的表達式后,得到下方的公式

這個就是標準的newton增量迭代法的公式,其中K和F在靜力學的增量迭代法中表示切線剛度陣和內力,只不過這邊需要加上M項:

其中A依然是只與時間增量步相關的量,對不同的隱式算法A的值不同,譬如對最簡單的Newmark方法中的梯形隱式算法,加速度在增量步內線性變化,譬如下方紅線是在輸入的載荷轉換為加速度的值,但計算中沒法處理連續的曲線,所以Abaqus或者iSolver中實際上只會認為增量步
內加速度時線性變化的:

此時得到的修正剛度為:

而F與上一迭代的位移、速度、加速度相關,可以表示為:

顯然當時間增量步固定時,此時的K也是隨增量步和迭代步變化的值,顯然該方程在每個時間步長內都只能通過迭代。因為有迭代,所以F也無法約去右側純的應力導致的內力項
。
1.1.2 穩定時間步
最后我們再討論一下穩定時間步的問題,在系列文章13:顯式和隱式的區別和25:顯式分析的穩定時間增量中,我們都討論過,CAE求解方法一般有兩種,分別為顯式(Explicit)和隱式(Implicit)。顯式分析時間步長不穩定的,就是增量步長也不能過大,一般不超過模型最小自由振蕩周期的1/10,否則容易導致計算結果發散。

那么隱式就一定是時間步長穩定的嗎?如果是穩定的,那為何大家用Abaqus的Standard隱式求解器的時候處理后屈曲、材料軟化或者沖擊爆炸這種問題經常會碰到很難收斂的問題呢?
大家使用軟件的經驗只能說明隱式算法也不一定穩定的。Abaqus的Standard求解器都是把有限元的問題最終轉化為增量迭代法求解數值問題的,時間步長是否穩定就看增量迭代法求解的過程。
(1)對于線性瞬態動力學,無需迭代,一次迭代就能求出問題解,且是正確解,自然是穩定的。
(2)對于非線性瞬態動力學,需要多次迭代完成,只要迭代求解曲線問題的算法,就可能存在無法收斂的問題,譬如坍塌問題,也就是力一開始隨著位移上升,在某個極值點時力隨著位移下降,曲線有下面類似的馬鞍點。譬如下面的A點,在接近接近極值點A時,此時斜率非常小設為,如果第一個t=0時刻的K是K0的話,此時斜率可以認為a*K0,a非常小。

1.2 非線性瞬態動力學的單擺模型
1.2.1 模型介紹
本章我們依然采用線性瞬態動力學中的單擺例子

這次我們在Abaqus中將幾何非線性打開,此時軟件將按非線性瞬態動力學進行分析:

1.2.2 計算結果
0.5s時刻的位移(左側是Abaqus,右側是iSolver)

1s時刻的位移(左側是Abaqus,右側是iSolver)

1.5s時刻的位移(左側是Abaqus,右側是iSolver)

4.12s時刻的位移(左側是Abaqus,右側是iSolver)

整個運動過程動畫如下(左側是Abaqus,右側是iSolver)
查看右端節點位移曲線如下:

顯然,單擺隨著時間在紙面內左右擺動,和真實情況一致,且可以發現一個周期和理論值4.12s吻合。
1.2.3 結果解析
1.2.4 迭代步次數
在系列文章32章線性瞬態動力學中,我們可以發現如果幾何非線性沒打開,單擺的迭代iter在Monitor中都是1,也就是沒有迭代:

本章中,將幾何非線性打開后,可以發現Monitor中,iter已經不再是1了,說明了非線性瞬態動力學需要迭代才能執行。

1.2.4.1 第一個增量步第一次迭代
K在第一個增量步第一個迭代步時,是水平方向初始長度的剛度:

在第一個增量步,方程就變為:

初始條件下:
(1)R只有Y方向恒值
(2)初始位置時位移、速度都是0,但Y方向存在加速度
(3)
顯然,上述三個方程變為:

U1、U2、U3沒有耦合項,可以直接解耦,分別得到三個方程。
由第一個和第三個方程可得位移U1和U3在第一個增量步結束時=0。在程序中強制設置迭代步=1,在0.1s時刻可得U1=0,和上述理論一致:

第二個方程可得在第一個增量步結束時的位移是R/(A*M),將Newmark的梯形算法的A帶入后得到:

這個公式顯然和我們熟知的位移和加速度的關系式完全一致。
在0.1s,得到位移U2=-4.9,在程序中強制設置迭代步=1,在0.1s時刻可得U1=0,和上述理論一致:

1.2.4.2 第一次迭代步收斂判斷
在第一次迭代后,程序將判斷三個方向的不平衡力情況

此時的F要用此刻的位移、速度、加速度等構型計算,在這個時刻,由于單擺已經擺動了一個角度,因此,F計算出的內力必然和KU已經不一致了,導致也和外力R不一致,只能進入下一次迭代。

1.2.4.3 穩定時間檢驗
在前面理論中,我們也提到了,只要是迭代,就有不收斂的可能性,在該例中,我們將步長設為0.2s,此時得到的位移曲線如下:

位移看起來很正常,但我們要是查看桿中的應變曲線時,可以發現應變在半個周期內還是正常的,但在半個周期后面明顯發散了。

1.3 視頻講解和操作驗證演示
如果覺得上面的文字太復雜,也可以看一下視頻的簡要講解和軟件演示,地址如下:
http://www.yqgqt.org.cn/college/video/c12884 20理論系列文章34-非線性瞬態動力學理論.mp4

以往的系列文章:
1.6.1 ========第一階段========
第一篇:S4殼單元剛度矩陣研究。
http://www.yqgqt.org.cn/content/post/338859
第二篇:S4殼單元質量矩陣研究。
http://www.yqgqt.org.cn/content/post/343905
第三篇:S4殼單元的剪切自鎖和沙漏控制。
http://www.yqgqt.org.cn/content/post/350865
第四篇:非線性問題的求解。
http://www.yqgqt.org.cn/content/post/360565
第五篇:單元正確性驗證。
http://www.yqgqt.org.cn/content/post/373743
第六篇:General梁單元的剛度矩陣。
http://www.yqgqt.org.cn/content/post/403932
第七篇:C3D8六面體單元的剛度矩陣。
http://www.yqgqt.org.cn/content/post/430177
第八篇:UMAT用戶子程序開發步驟。
http://www.yqgqt.org.cn/content/post/432848
第九篇:編寫線性UMAT Step By Step。
http://www.yqgqt.org.cn/content/post/440874
第十篇:耦合約束(Coupling constraints)的研究。
http://www.yqgqt.org.cn/content/post/531029
![有限元理論基礎及Abaqus內部實現方式研究系列34: 非線性瞬態分析的圖80]()
1.6.2 ========第二階段========
第十一篇:自主CAE開發實戰經驗第一階段總結。
http://www.yqgqt.org.cn/content/post/532475
第十二篇:幾何梁單元的剛度矩陣。
http://www.yqgqt.org.cn/content/post/534362
第十三篇:顯式和隱式的區別。
http://www.yqgqt.org.cn/content/post/537154
第十四篇:殼的應力方向。
http://www.yqgqt.org.cn/content/post/1189260
第十五篇:殼的剪切應力。
http://www.yqgqt.org.cn/content/post/1191641
第十六篇:Part、Instance與Assembly。
http://www.yqgqt.org.cn/content/post/1195061
第十七篇:幾何非線性的物理含義。
http://www.yqgqt.org.cn/content/post/1198459
第十八篇:幾何非線性的應變。
http://www.yqgqt.org.cn/content/post/1201375
第十九篇:Abaqus幾何非線性的設置和后臺。
http://www.yqgqt.org.cn/content/post/1203064
第二十篇:UEL用戶子程序開發步驟。
http://www.yqgqt.org.cn/content/post/1204261
![有限元理論基礎及Abaqus內部實現方式研究系列34: 非線性瞬態分析的圖82]()
1.6.3 ========第三階段========
第二十一篇:自主CAE開發實戰經驗第二階段總結。
http://www.yqgqt.org.cn/content/post/1204970
第二十二篇:幾何非線性的剛度矩陣求解。
http://www.yqgqt.org.cn/content/post/1254435
第二十三篇:編寫簡單面內拉伸問題UEL Step By Step
http://www.yqgqt.org.cn/content/post/1256835
第二十四篇:顯式求解Step By Step。
http://www.yqgqt.org.cn/content/post/1261165
第二十五篇:顯式分析的穩定時間增量。
http://www.yqgqt.org.cn/content/post/1263601
第二十六篇:編寫線性VUMAT Step By Step。
http://www.yqgqt.org.cn/content/post/1266640
第二十七篇:Abaqus內部計算和顯示的應變。
http://www.yqgqt.org.cn/content/post/1273788
第二十八篇:幾何非線性的T.L.和U.L.描述方法
http://www.yqgqt.org.cn/content/post/1282956
第二十九篇:幾何非線性的T.L.和U.L.轉換關系
http://www.yqgqt.org.cn/content/post/1286065
第三十篇:諧響應分析原理
http://www.yqgqt.org.cn/content/post/1290151
第三十一篇:自主CAE開發實戰經驗第三階段總結
http://www.yqgqt.org.cn/content/post/1294824
第三十二篇:諧響應分析算法
http://www.yqgqt.org.cn/content/post/1299983
第三十三篇:線性瞬態動力學
http://www.yqgqt.org.cn/content/post/1302074
工程師必備
- 項目客服
- 培訓客服
- 平臺客服
TOP




















