基于聲發(fā)射和能量分析的PFC巖石分析
1、聲發(fā)射以及微裂紋
研究巖石內(nèi)部的細觀行為,常用的是CT斷面掃描,可以非常清楚的看到巖石某一個斷面上的裂紋分布以及破壞模式。而比較傳統(tǒng)的方式,則是通過聲發(fā)射技術監(jiān)測巖石中的事件數(shù)。事件數(shù)是一個比較陌生的名詞,我的理解是,巖石在破壞的時候,并不是一次性破壞完成的,往往是漸變破壞的過程。巖石在承受荷載的時候,內(nèi)部會出現(xiàn)破壞,而一破壞則會發(fā)出”咔嚓咔嚓”的聲音,這一個聲音就是一個事件數(shù),對應到巖石內(nèi)部也就是一次微裂紋的形成。
離散元中PFC中有專門的fracture文件可以生成微裂紋,具體的解析就不說了,原理是在膠結破壞的地方用橫線代表微裂紋,注意這個微裂紋是一個標記,是不參與力學計算的,并且之后會根據(jù)膠結兩端的位置去更新微裂紋的位置。這個文件中記錄的是微裂紋的總數(shù)目,而聲發(fā)射的定義是單位時間內(nèi)的事件數(shù),所以需要對其中的變量進行一點點的加工。加工的方式也很簡單,每隔一段時間的裂紋總數(shù)的數(shù)量就是聲發(fā)射的事件數(shù)。
[calpinlv=-3e-5]
[pinlv_record=weyy+1]
[liewen_record=0]
def cal_zhenling
jiance
if weyy-pinlv_record<=calpinlv then
zhenling=crack_num-liewen_record
pinlv_record=weyy
liewen_record=crack_num
endif
end
這里用一個單軸壓縮算例來顯示處理后的結果,首先看一下應力應變曲線和微裂紋的發(fā)展圖。
圖1:試樣漸變圖
通過origin繪制雙y圖,將聲發(fā)射的數(shù)據(jù)顯示改成柱狀圖就可以形成我們經(jīng)常在文獻里面看到的聲發(fā)射與應力應變曲線的關系圖了,可以從圖中分析出聲發(fā)射的事件數(shù)和應力應變曲線是有關系的,當出現(xiàn)聲發(fā)射時,曲線進入漸變破壞階段,但是事件數(shù)的峰值發(fā)生在曲線的峰后,也是說明微裂紋的發(fā)展促使巖石發(fā)生破壞,巖石發(fā)生破壞之后,而又產(chǎn)生更多的微裂紋,直到試樣完全失去強度,聲發(fā)射停止。
圖2:聲發(fā)射事件數(shù)
下面這張圖摸索了一個多小時才畫出來,為微裂紋總數(shù)(聲發(fā)射事件總數(shù))的熱點圖,算法為某一個點附近搜索半徑內(nèi)的裂紋數(shù)目,輸出x,y坐標和裂紋數(shù)目,在origin中繪制云圖,然后在PPT中將兩幅圖疊加得到的。從這幅圖可以看出裂紋發(fā)展的主要區(qū)域,基本上為一條斜直線。
計算代碼如下,原理比較簡單,看懂后可以進行修改。
def outqipao
tabpos_x=table.create("pos_x")
tabpos_y=table.create("pos_y")
tabmidu=table.create("midu")
n_split_x=20.0
n_split_y=40.0
x_inri=wlx/n_split_x
y_inri=wly/n_split_y
sousuo_rad=x_inri*2.0
weizhi_count=1
loop n(1,n_split_x-1)
loop m(1,n_split_y-1)
x_pos=-wlx*0.5+x_inri*n
y_pos=-wly*0.5+y_inri*m
table(tabpos_x,weizhi_count)=x_pos
table(tabpos_y,weizhi_count)=y_pos
n_count=0
loop foreach frac dfn.fracture.list
dist=math.sqrt((dfn.fracture.pos.x(frac)-x_pos)^2+(dfn.fracture.pos.y(frac)-y_pos)^2)
if dist<sousuo_rad then
n_count+=1
endif
endloop
table(tabmidu,weizhi_count)=n_count
weizhi_count+=1
endloop
endloop
end
@outqipao
圖3:裂紋熱點圖
離散元中能量分析一定要圍繞轉化來看,系統(tǒng)是能量守恒的,我們就需要研究哪些能量減少了,哪些能量增加了。就單元實驗來講,我們一般將墻體的邊界能作為系統(tǒng)總能量的來源,對巖石來說,應變能會分為兩部分,膠結應變能和顆粒應變能,這兩個能量隨著巖石的變形都會變大。動能我建議是不要記錄的,我們單元實驗一般需要滿足準靜態(tài)條件,也就是加載速度需要足夠小,這時候動能幾乎是沒有的,動能會發(fā)生在破壞的時候,墻體的邊界能會轉化為動能,因為巖石破壞無法受力了。但是我們系統(tǒng)的阻尼會將動能轉化為阻尼能和摩擦能,所以我建議是巖石的單元實驗分析,只需要記錄邊界能、膠結應變能、顆粒應變能、阻尼能、摩擦能就可以了,如果有需要的話還可以加上膠結破壞能,膠結破壞能在bond_break里面entry(4)就是。下面為記錄能量的代碼,摩擦能忘了記錄了,朋友們可以自己再完善一下。圖4為能量演化圖,算是比較經(jīng)典的文獻中可見的能量分析了。
def jiance
zongneng=wall.energy("eboundary")
dongneng=ball.energy("ekinetic")
yingbianneng=contact.energy.sum("estrain")
jiaojieneng=contact.energy.sum("epbstrain")
zunineng=ball.energy("edamp")
time=mech.age
end
圖4:能量轉化圖
工程師必備
- 項目客服
- 培訓客服
- 平臺客服
TOP




















