原創#基于python二次開發的圍線積分+網格重劃分+結果映射聯合使用的裂紋隨機擴展
基于python二次開發的圍線積分(contour integral)+網格重劃分(remeshing)+結果映射(map solution)聯合使用的裂紋隨機擴展
前面帖子已經詳細介紹了如何使用圍線積分(contour integral)+網格重劃分(remeshing)來模擬裂紋的任意路徑擴展,并提取裂紋擴展路徑上的應力強度因子。那么在這個帖子上我們進一步升級原理算法,使得模擬與實際實驗過程更加符合,具體內容如下:
首先,我們對之前的裂紋擴展原理進行大體的回顧,程序設計的總體原理圖如下,

舊裂紋:

裂紋擴展一個增量步:

這個裂紋擴展分析過程與看到的幾乎所有文獻是一樣的,是一個常規的裂紋擴展分析過程:提取分析步末(或者取第一次應力強度因子大于臨界值的那個時刻)的應力強度因子,根據最大周向拉應力開裂準則計算復合I型應力強度因子,如果裂紋擴展,進行新裂紋的計算,在原來模型的基礎之上,根據新的裂紋角度及裂尖坐標,sketch出新的裂紋,然后重新進行網格劃分,但是,分析步、載荷都并進行任何改變,而是將整個載荷又重新加載一遍,再次得到載荷分析步末(或者取第一次應力強度因子大于臨界值的那個時刻)的應力強度因子,再進行裂紋是否擴展的判斷,這相當于把離散的不同裂紋長度單獨計算模型整合成了考慮裂紋擴展角度的連續性裂紋擴展。這樣的裂紋擴展過程只能得到裂紋擴展路徑與實驗大體一致,在考慮時間的分析中,不能得到裂紋隨時間的擴展過程,反而,(例如薄板中心裂紋)因為裂紋長度越大,應力強度因子越大,所以得到更長的裂紋對應更短的開裂時間,這與實驗過程是相悖的。
那么,問題來了:實際實驗中裂紋是在加載過程中連續擴展的,而并不是裂紋擴展后載荷歸零又重新從零加載了,而是裂紋在某時刻開裂后,在剩余載荷的進一步的加載過程中裂紋進一步擴展。
通過前面的分析我們知道,利用前面的裂紋擴展原理,通常對于一些靜力結構分析來說,可以得到相對合理的裂紋擴展路徑,但是,每次裂紋擴展分析都是全部載荷重新施加一遍,并不能取到裂紋長度隨時間的變化曲線,而且對于與時間相關的分析而言,裂紋長度隨時間的變化就尤為重要了,那么,我們的優化就是解決這一個問題,解決辦法:在前面的理論基礎上,利用ABAQUS的inp文件中的關鍵詞*map solution來將舊網格的結果映射到新網格,施加剩余載荷,進行下一次的裂紋擴展。這個裂紋分析過程似乎看起來很容易,但是實際實施起來困難重重,我們經過長時間的探索終于克服了重重困難,實現了整個裂紋動態擴展過程。下面介紹裂紋擴展分析的整體原理,

初始模型建立分析步后要設置重啟動輸出(*map solution的計算需要重啟動文件),如果裂紋擴展,計算新的裂紋尖端,提取odb開裂時刻的幾何變形模型,裂紋擴展一個增量,再次重新分配材料屬性,建立獨立實體,創建新的分析步,時間長度為上次開裂后的剩余時間段,重新建立接觸,重新施加約束,重新網格劃分,重新施加載荷(載荷是對應上次開裂后的剩余載荷段),輸出inp文件,在inp文件中添加*map solution命令,然后使用命令行提交新的inp文件。
需要注意的是:
1 從odb提取幾何變形模型后,原來完整的模型邊緣會變成由很多小的線段組成(小線段的多少與提取特征角度featureangle和網格密度有關),小線段的多少也影響了后續的載荷及約束的施加;
2 由于1中小線段的生成,所以載荷和約束的施加變的尤為困難,主要是因為邊的選取通過findat命令也很難選擇到,對于不同的模型,我們要視情況而定;
3 每次裂紋擴展的增量不要太大,因為,如果增量太大,新的裂紋尖端生成后,舊的網格結果映射到新的網格上,會導致裂紋尖端應力出現較大偏差,導致不合理的結果。
介紹了整個分析原理后,我們通過編制的二次開發程序分析一個例子來驗證程序的正確性,采用薄板邊緣裂紋,施加了位移載荷。
初始幾何模型,約束,載荷,網格:
第一次裂紋擴展后,提取的裂紋擴展時刻的幾何變形圖及舊裂紋尖端與新生成的seam裂紋圖示如下:
分析步的重新建立(第一次開裂后的剩余時間段)
載荷及約束的施加(剩余載荷段,總體載荷位移為0.05mm)
重新劃分后的網格模型:
修改的inp文件:
命令提交job:
裂紋擴展過程:
裂紋經過40次擴展后即將擴展到模型邊界,從圖中可以看出,在裂紋擴展過程中,已經張開的裂紋面附近可能出現個別mises應力較大的區域,這是由于map solution映射結果導致的,這并不影響裂紋的擴展,因此可以忽略。
每次裂紋擴展時的K1與裂紋擴展對應的總時間的關系:
從圖中可以看出,裂紋擴展過程中只要裂紋尖端應力強度因子達到臨界值,裂紋便發生擴展,值得注意的是裂紋擴展過程中裂紋尖端的K1并不會逐漸遞增,這是因為裂紋尖端的k1值并不是提取的每次裂紋擴展加載末的K1,下面我們給出裂紋擴展過程中每次夾雜末時刻的裂紋尖端應力強度因子值與裂紋長度的關系,
每次裂紋擴展后加載末的K1與裂紋長度之間的關系:
從圖中可以看出,每次裂紋擴展過程中完全加載末時刻的應力強度因子是隨著裂紋長度的增加不斷增加的,這與大部分的文獻中沒有使用map solution的結果是一致的。
對于傾斜裂紋,也附上一個例子圖:
傾斜角度更大一點的:
最后附上裂紋第一次擴展后的新提取的幾何模型及inp文件,后續的模型不再附上:
對于兩個水平裂紋的擴展如下圖:

對于兩個斜裂紋而言:


非對稱的任意裂紋:
再上一個雙孔邊裂紋的隨機擴展結果:
圍線積分+網格重劃分+結果映射技術與圍線積分+網格重劃分的結果對比:

****************************************************************************************************
****************************************************************************************************
圍線積分+網格重劃分+結果映射技術相比于圍線積分+網格重劃分技術而言它的一個優點是可以提取裂紋隨時間的變化,知道裂紋在哪個時刻擴展到什么地方,對于施加熱循環載荷而言,可以確定在當前循環次數下裂紋擴展到了哪里,另一個很重要的優點是對于復合結構材料而言,如果其余非裂紋擴展層不是純彈性的,它依然可以很準確地評估裂紋擴展路徑(前面的例子都是單一純彈性材料),這在下面詳細講述:
模型介紹(包含有三層材料)

1 如果各層考慮為純彈性,裂紋尖端的K1和K2隨時間的變化如下:
K1和K2明顯隨著時間是線性變化的
2 如果考慮BC和TGO層的塑性,TC層純彈性,裂紋尖端的K1和K2隨時間的變化如下:
K1和K2明顯隨著時間是非線性變化的
下面給出兩種情形下裂紋擴展角隨時間的變化曲線:

從圖中明顯可以看出,對于純彈性而言,cpd是隨時間恒定不變的,這是因為K1和K2都是隨著時間線性變化的,根據最大周向拉應力準則下的裂紋擴展角度的計算公式:

對于純彈性模型而言,因為K1和K2隨時間都是線性變化的,所以,如果施加增加a倍,則K1也增加a倍,K2也增加a倍,帶入計算公式,裂紋擴展角度是不變的。
對于考慮了BC-TGO塑性的模型而言,裂紋擴展方向不再隨時間呈現出線性變化,而這個時刻出現非線性變化的時刻正是模型開始進入塑性階段的時刻,從TGO的PEEQ隨時間變化圖可以看出:
因此,當模型進入塑性階段,裂紋的擴展方向隨時間不再是線性的,對于圍線積分+網格重劃分技術是每次裂紋擴展的方向是采用的整個加載階段最后時刻的裂紋擴展方向,那么對于考慮了某層塑性的復合結構中的裂紋擴展而言,這個技術顯然對于裂紋擴展路徑的評估是不準確的,那么,反觀圍線積分+網格重劃分+結果映射技術,它的裂紋擴展方向提取的是剛達到開裂準則時刻的裂紋擴展方向,因此這種技術對于復合結構考慮某層塑性的情況下的裂紋擴展更為準確。
ABAQUS斷裂模擬收徒 ,保證快速學會各種ABAQUS斷裂模擬方法 1200/人(將享有各種插件以及程序,價值3000+、專門定制視頻、全程親自教學、各種模型調試及解答問題等等,傾囊相教)
如果有需要或者需要討論的可以站內聯系
工程師必備
- 項目客服
- 培訓客服
- 平臺客服
TOP




















