
發布
注冊
/
登錄牛頓迭代法
關注創建者:引垂思汀 創建時間:2020-10-26
牛頓迭代法的視頻教程
ABAQUS VUMAT 一維彈塑性本構VUMAT
徑向返回法 :學習顯式積分中處理彈塑性問題的核心數值算法。 牛頓迭代法:掌握求解非線性方程組的數值方法。 第二部分:VUMAT編程實戰 VUMAT接口詳解:關鍵變量的含義與賦值邏輯。 代碼架構搭建: 彈性預測步(試應力構建)。 塑性修正步(徑向返回法實現)。 狀態變量(State Variables)的存儲與傳遞。 一維彈塑性VUMAT實現:從零開始編寫完整的子程序代碼。
¥99 2小時28分鐘 31播放
查看
ABAQUS高級接觸分析精講
課件大綱 第一講:接觸分析簡介:表面接觸及接觸實例 接觸模型的組成 第二講:接觸設置流程:定義接觸Set及接觸對 通用接觸 第三講:面接觸:接觸公式及離散化 接觸方法及相對滑移 接觸結果輸出 第四講:接觸邏輯和診斷工具:牛頓迭代法 接觸算法 接觸收斂調試 第五講:接觸屬性:壓力-過盈模型 摩擦模型及設置 第六講:過盈配合:初始過盈及高級調整 過盈配合技術詳解 間隙與過盈精確控制技術
¥149 7小時42分鐘 457播放
查看
ABAQUS低周疲勞分析
低周疲勞分析采用直接循環法直接得到結構的穩定循環響應 ,直接循環法將傅立葉級數近似與非線性材料行為的時間積分相結合,利用修正牛頓法迭代求得穩定的循環解 ,節省計算成本。可以通過控制傅里葉項的數量、迭代的數量和循環時間段內的增量提高精度。案例基于VCCT方法和Paris準則模擬了層壓復合材料界面上的漸進分層生長,適用于復合材料分層擴展模擬及求解彈塑性結構的塑性安定狀態。
¥50 59分鐘 685播放
查看
牛頓迭代法的實例教程
該迭代法每次迭代都需要對新的求逆,計算量較大,于是有了如下改進的的常系數矩陣方法
(2)牛頓-辛普森迭代法 Nwton-Paphson method
運用泰勒展開:
(切線剛度陣)
同理,也可以得到修正的Newton-Paphson 方法
牛頓迭代法一般具有較好的收斂性,但是對于一些從小被分在二班的非線性同學,他也有很大的局限性
比如對于這個問題,牛頓只好呵呵了
對于下面問題,牛頓直接哭暈在廁所,當然這種問題只有等我們的arc-length兄來解決了。
再來看看我們上面的問題:
藍色曲線為精確解,紅色點點為固定載荷增量下求得的位移,k=1000時,牛頓迭代法能夠很好地跟蹤載荷位移路徑,得到所有的位移響應。而當k=100時,曲線有下降段,此時牛頓迭代法就沒法得到這個區域的位移響應了。
下載地址:非線性有限元及程序
展開 非線性有限元一直是有限元中較為困難的一部分,在非線性有限元中我們經常碰到諸如牛頓-拉夫森迭代法,切線剛度陣等概念,今天貼主就簡單的介紹一下非線性吧。
1、簡單實例
首先看一個簡單的彈簧桿件結構,如圖所示,中間節點作用一個F的力,會產生一個位移v,
由靜力平衡關系可得到
該方程為典型的非線性方程,對于這個方程,如果給定一個位移v就能求得F,如下圖所示,從圖中曲線可以看到非線性的含義了。圖中不同k對應的曲線,可以看到k比較小時,桿內力起主要作用,呈現出幾何非線性,K較大時,彈簧起主要作用,呈現出彈簧的線彈性。
2、牛頓迭代法
但是在實際中,我們往往是不知道位移v的,而是知道F,那么給定一個F,怎么求v呢?這時候牛頓迭代法就要上場了。牛頓迭代法的思想是將非線性方程線性化,以線性方程的解逼近非線性方程的解,具體操作如下:
牛頓迭代法圖形解釋
對于非線性方程f(x)=的迭代解法有如下格式
4、非線性有限元迭代格式
雖然上文只是簡單的一維問題,但是我們可以把它當做位移法有限元的原型,對于一般有限元,離散平衡方程一般具有如下形式:
對于試探解、一般有
該方程的求解有如下形式
(1)直接迭代法
直接迭代法中要求K矩陣為u的顯式函數,只適用于和變形歷史無關的非線性問題。
展開 非線性有限元-弧長法簡介
————CAE仿真實驗室出品
在之前一篇帖子《非線性行為初識》中,我們通過簡單的彈簧桿件結構介紹了非線性問題,回顧一下該問題:如圖所示,中間節點作用一個F的力,會產生一個位移v
由靜力平衡關系可得到
該方程精確解如下,圖中不同k對應的曲線,可以看到k比較小時,桿內力起主要作用,呈現出幾何非線性,K較大時,彈簧起主要作用,呈現出彈簧的線彈性。
藍色曲線為精確解,紅色點點為固定載荷增量下求得的位移,k=1000時,牛頓迭代法能夠很好地跟蹤載荷位移路徑,得到所有的位移響應。而當k=100時,曲線有下降段,此時牛頓迭代法就沒法得到這個區域的位移響應了。
對于下圖這樣的問題,在拐點處切線剛度為0,在前面的牛頓迭代法中我們是通過給定載荷增量,它已經無法越過極值點得到完整地載荷位移曲線。而且還存在一個載荷對應多個位移,或者一個位移對應多個載荷的情況,很容易發生snap-through和snap-back現象。
今天就來介紹介紹弧長法,牛頓迭代法在翻過山頭延切線方向飛入云霄,直接不收斂。如果讓牛頓坐上過山車,那么就能和軌道綁在一起,沿著軌道平穩著陸了。弧長法也是這么做的,通過引入一組約束方程,把迭代求解的過山車,綁定在軌道上,讓求解過程能夠跟蹤載荷位移路徑。
展開 本質上,非線性屈曲實際上要求解的是一個非線性靜力問題,在有限元中最終轉化為非線性方程組的求解,目前常見的非線性方程組的求解方法有牛頓迭代法、擬牛頓迭代法、增量法、增量迭代法和弧長法等。在abaqus中,如果采用static,general類型的step,則軟件采用增量迭代法進行計算,具體是將荷載/位移分為多個增量步加載,而每一個增量步內又采用牛頓迭代法進行求解。
對于單層網殼結構來說,在abaqus中,其計算非線性屈曲主要采用兩種方法:增量迭代法和弧長法。增量迭代法又分荷載增量迭代和位移增量迭代。對于單層網殼,由于通常情況下其所受的外荷載已知而在外荷載的位移未知,因此實際工程中事實上很難采用位移增量迭代,而對于荷載增量迭代,其具體過程如圖一所示:
圖一 基于荷載增量的增量迭代法
基于荷載增量迭代的具體求解過程可知,如果荷載-位移曲線存在下降段,則荷載增量迭代實際上在曲線接近峰值時由于剛度接近0而不收斂,難以繼續求解,具體過程如圖二所示:
圖二 基于荷載增量的不收斂示意
目前應對此缺陷的方法是采用弧長法,其具體過程如圖三。由于弧長法以荷載和位移形成的弧長作為增量,因此即使是面對有下降段的非線性屈曲分析,其也能求解。然而實際上,即使是采用弧長法,對于復雜結構,即使是采用弧長法,在面對平衡路徑跳躍或者突變時,仍可能存在不收斂。
展開 對于這樣的非線性問題,一般的有限元程序都是通過增量迭代法求解。增量迭代法的核心思想是,將最終的狀態看成是一個加載過程,將載荷分成多個增量,逐級加載,然后在每個增量步內多次迭代,收斂后進行下一個增量步。
1、增量法
將{P}荷載分成為m個荷載增量(相等或不等)
,即總荷載為
每次施加一個荷載增量,在第i步加載后,荷載為
每一荷載增量產生一個位移增量
和應力增量
在第i步加載后,位移、應力分別為
第m步加載后,得到最終位移、應力。
增量法的關鍵在于:已知前一個增量步的相關信息,如何由荷載增量
計算位移增量
和應力增量
,進而求出位移
和應力
的問題,這個問題通常應用牛頓-拉普森迭代法求解,接下來介紹這種方法。
2、修正的牛頓-拉普森迭代法(mN-R)
在載荷
時,位移為
,下一個增量為
,下一個增量步結束后載荷為
,在已知以上條件后用mN-R方法計算下一個增量結束后的位移。
令
計算切線剛度
計算不平衡力
根據非平衡力計算位移修正量
位移修正量為
一次迭代后修正的位移為
判斷是否收斂,若不收斂繼續迭代,直到近似收斂于真實解
附件有個小算例,希望能幫助大家理解增量迭代法
同時也歡迎觀看本次的視頻教程
http://www.yqgqt.org.cn/college/video/c14014
展開 
牛頓迭代法的相關專題、標簽、搜索
牛頓迭代法的最新內容
平面應力脆性斷裂相場AT2模型10個月前
同理有:
代入到弱形式方程中可得殘值方程;
使用牛頓迭代法求解上述非線性系統。
如果得到的平面外應力不為0,則使用牛頓迭代法對平面外應變進行更新,持續此過程,直至滿足平面應力假設。
同理有:
代入到弱形式方程中可得殘值方程;
使用牛頓迭代法求解上述非線性系統。更新格式為:
剛度矩陣為:
為了保證損傷不能愈合,即:
需要做出一些修改,即取歷史上最大的彈性應變能,即:
4 代碼
《斷裂相場法》書中提供了傳統脆性斷裂相場模型的二維UEL代碼。本文將其拓展為三維情況。
UEL需要更新單元的剛度矩陣和右端項,公式在理論部分已詳細給出。
202402/418e7d7034f492e486a5c66cbf7e082f.png"></p><p>最后將該相對應力代入到方程組中最后一個一致性方程中可得:</p><p><img src="https://img.jishulink.com/msimage/202402/aae80d38f5c4d225211bc441b2a15597.png"></p><p>該非線性方程的未知量為塑性乘子增量,可以用牛頓迭代法進行求解
當發生塑性屈服時,根據應力更新的公式:
可以計算:
式中:
式中:
為硬化曲線的梯度,各向同性硬化曲線使用數據點擬合為分段線性函數:
因此最終可得到一致性切線剛度矩陣的表達式為:
2 算法描述
整個 return-mapping 算法框圖如下:
牛頓迭代法算法框圖如下:
3 UMAT代碼
umat使用
Simdroid“非線性屈曲”分析界面
“柱面弧長法”是牛頓迭代法的一種擴展,當結構臨近失穩極限時,其剛度矩陣一般是奇異或者接近奇異的狀態,此時無法采用牛頓迭代法求解,采用弧長法引入了荷載乘子作為求解自變量,可以避免剛度矩陣奇異的情況。
一個基于MATLAB進行牛頓迭代的簡單案例~
NewtonRaphson.zip
fclose all; close all; clear; clc; %% Define functions and parameters syms x; f = 0.1*(x^2 + 2*x + 1); diff_f = diff(f,x); n_max = 100; e_tol = 1e-5; x_0 = 5; f_0 = subs(f,x,x_0); error = 10*e_tol; t1
非線性靜力分析需要求解非線性平衡方程,程序采用全牛頓-拉弗森或修正全牛頓-拉弗森迭代法。許多問題涉及歷程相關的響應,因此通常通過一系列的增量步得到求解結果,在每個增量中通過迭代得到平衡。有時必須保持增量較小(意味著轉動和應變增量必須小),以確保對歷程相關影響的正確模擬,但最常見的是,增量步大小的選擇是計算效率的問題,如果增量步太大則需要更多迭代。
MSC Nastran的牛頓迭代法適用于熱分析中的非線性方程的求解。由于執行矩陣分解比較費時,在MSC Nastran傳統的熱分析求解序列中,每次迭代時計算殘差向量,只在認為收斂時或需要提高迭代效率時才重新計算切線矩陣;MSC Nastran將試圖通過平衡各種求解策略達到最佳的收斂解:載荷二分、殘余熱流的更新、切線矩陣更新、線性搜索、BFGS更新等。