張敏思, 楊 勇, 梁海安
(東華理工大學 建筑工程學院, 江西 南昌 330013)
巖體結構仿真教學系統的開發
張敏思, 楊 勇, 梁海安
(東華理工大學 建筑工程學院, 江西 南昌 330013)
以提高教學效果為目的,開發了巖體結構仿真教學系統。該系統通過AutoCAD建立復雜巖體模型,經過模型的單元離散、單元切割及合并搜索出所有結構體,完成復雜巖體結構的數字化表征,并以三維彩色圖像進行全方位顯示。仿真系統簡化了教學過程,節省教學經費,具有生動形象、易于理解的教學效果。
巖體結構; 仿真教學系統; 數值模擬
巖石力學是巖土工程、水利工程、采礦工程及地質工程等專業的重要課程,該課程主要講述巖體地質結構與特征、巖石物理力學性質、巖石材料的本構關系及以上內容在不同工程中的應用。其中巖體結構是由地質結構面間相互切割作用而形成的,結構面的尺寸及產狀各異導致巖體結構的復雜多樣,往往表現出非均質、非連續、各向異性和多相性的特征,且在很大程度上決定了巖體的力學性質。因此,對巖體結構特征的研究是巖石力學研究中一項極其重要且具有前沿性的研究。在教學實踐中,巖體結構是巖體力學教學中的重點與難點。
利用現代計算機可視化技術開發了一套巖體結構的仿真系統,并將其應用于巖石力學的本科教學實踐中,既可以突破巖體結構隱蔽性的限制,縮短教學時間,又可以使教學更加直觀、形象,提高學生對巖石力學的學習興趣。
由于實驗及實踐教學需要投入較多的時間與經費,因此巖體結構實驗教學受到了很大的限制。為了解決這一問題,很多高校教師結合自己的科研工作將數值仿真技術應用于巖石力學教學中,解決或部分解決了實驗和實踐教學的困難和高成本問題。文獻[1]利用商業軟件ANSYS和FLAC建立了復雜地質模型;文獻[2-3]采用顆粒流程序PFC構建了包含巖石三軸壓縮強度、劈裂強度及直剪等常規實驗的數字教學平臺;文獻[4-5]采用FLAC、RFPA、UDEC、PFC、Maya和Virtoo1s等軟件對巖石特性進行仿真,并將其應用于采礦工程的教學中。然而,上述數值仿真方法采用的主要是針對科研計算而開發的商業軟件,無法準確地模擬具有復雜非連續性的巖體結構。
目前,對于具有非連續性巖體結構的模擬尚處于探索階段。文獻[6-7]采用3DEC軟件模擬了地下工程中具有斷層或錯動帶的圍巖變形及破壞特征。3DEC軟件是將結構面假設為無限大平面,因此該軟件具有很大的局限性。文獻[8-12]根據科研需要開發了巖體結構分析軟件,并實現了結構面的有限性,但對于較復雜的幾何邊界及后處理內容并未過多關注。
筆者結合科研工作,開發了一套應用于本科教學的巖體結構仿真軟件,利用可視化技術完成軟件的后處理,可方便地獲取巖體任意結構體信息,模擬關鍵塊體滑動,將巖體結構形象、生動的展示給學生。
2.1 總體思路
目前,三維結構體搜索主要有2種方法:一是基于拓撲學原理的交線回路分析,二是面向結構體對象的空間切割算法。本文在第二種方法基礎上進行改進,采用網格劃分的塊體識別方法進行結構體搜索。
首先,將所要建立的巖體模型簡化為復雜多面體。巖體建模實際上是初始化結構體系統,切割計算后出現的所有結構體均由巖體模型這個母體得到,它的性質也會被繼承。本研究根據結構體中不同面在程序中的作用,將其分為4種:(1)臨空面,是與自由空間相接觸的邊界面,具有臨空面是結構體可移動的必要非充分條件;(2)固定面,所建的巖體模型是實際工程中的一部分,除臨空面外,模型的其他邊界均應被設置為固定面,模型通過固定面與研究范圍外的巖體相連,具有固定面的結構體是不可移動的;(3)虛擬面,在將凹體模型劃分為凸體時所產生的輔助面,它在實際工程中并不真實存在,當切割結束后虛擬面即消失,導致結構體間合并;(4)切割面,由結構面對結構體進行切割產生的新面,與臨空面共同組成了獨立結構體的邊界。
其次,設置3組正交的虛擬結構面,利用每個結構面所在平面對巖體模型進行切割,實現單元的離散。
第三,將實際工程中的結構面進行統一編號,每添加一個結構面,就對現存的所有單元進行判斷,結構面所在平面將與其相互接觸的單元塊體切割為2個新的單元塊體,與結構面不接觸的單元則保持不變。
最后,去除虛擬結構面,導致虛擬結構面兩側共面的單元合并,實現復雜結構體的單元聚合,從而完成復雜巖體結構的數字表征。
2.2 結構體幾何數據結構
無論巖體環境多么復雜,塊體的識別只是空間幾何拓撲問題,是塊體幾何數據間的運算,不涉及其他參數。本文設計的塊體識別算法要求塊體之間、面之間保持數據的獨立性,所以采用圖1所示的幾何數據存儲格式。兩點組成的邊被存儲在多邊形類的動態數組中,多邊形被存儲在塊體類的動態數組中。這樣,所有數據的存儲均是動態的,塊體可以不受數量限制地添加面,面可以不受數量限制地添加邊。這種數據格式存儲下的塊體,其邊與面的方向很容易判斷。

圖1 塊體的數據結構
2.3 平面對多面體的切割
無論是虛擬結構面還是真實的結構面,在切割的算法中是不區別對待的,結構面把與其接觸的塊體一分為二,而與其不接觸的塊體保持原來的狀態。程序之初未對其進行網格劃分時,塊體數為1;依次加入結構面(虛擬結構面或真實結構面),每添加一個結構面,遍歷一次現存的塊體,判斷塊體是否與結構面相交。如果塊體與結構面相交就進行切割,把新形成的塊體放入塊體數據鏈的尾端,刪除母體(見圖2),繼續判斷下一塊體。不相交則直接進入下一塊體的判斷。添加結構面切割塊體的流程如圖3所示。

圖2 塊體切割過程中的數據組織

圖3 結構體切割流程圖
2.4 網格去除形成復雜塊體
添加虛擬結構面是為了劃分網格,限制結構面的計算尺寸,但實際并不存在這些結構面,所以最后要去除結構面。這樣就導致了塊體合并,形成一些復雜的大的塊體,也就是由真實結構面切割而形成的塊體。
算法的實現,是按照虛擬結構面的順序,依次尋找出由每個虛擬結構面形成的塊體,然后在其中尋找可以合并的塊體進行合并。兩個塊體位于虛擬結構面的兩側,并且有面的交集,這樣的兩個塊體要進行合并。圖4是去除所有虛擬結構面合并塊體的流程圖。

圖4 塊體合并流程圖
3.1 面向對象的語言C++
基于VC++提供的MFC(microsoft foundation classes)設計軟件框架及實現算法。
面向對象的方法比較自然地模擬了人們認識客觀世界的方式,能夠建立比較完整的、易于理解的軟件系統概念和機制,并且成為軟件系統設計和實現的軟件工程方法。其主要有封裝性、繼承性及多態性3個特點。結構體是由多邊形組成,因此多邊形被作為結構體切割計算的基本單元,其數據及基本操作被封裝在CPolygon類中。塊體作為程序的主要研究對象,被封裝在一個CBlock類中,這個類中包含CPolygon類,正符合實際的塊與面的關系。圖形輸出的所有相關操作被封裝在CMygl類中,這種設計使得程序具較好的整體性、穩定性,使設計思路清新。
3.2 OpenGL圖形函數庫
利用主流的專業圖形程序接口OpenGL(open graphics library)進行三維圖像顯示。
三維圖形往往需要顯示非常復雜的三維模型,要對復雜模型實現旋轉、縮放和平移等操作,需要采用必要的措施來加快三維圖形顯示速度,而OpenGL提供的顯示列表機制能夠很好地優化三維圖形顯示速度。另外,設置光源參數及材質特性、實現物體的透明顯示等,都是三維圖形應用所不可缺少的功能。OpenGL為用戶編寫交互式三維圖形應用程序提供了接口。通過它,可以很方便地設計光照、紋理映射、顏色、陰影和實現消隱,并提供了高度靈活的手段,讓用戶能夠從任意角度和以多種方式觀察所顯示的三維場景,包括對場景進行旋轉、縮放及平移等多種操作。
3.3 軟件功能模塊及操作
軟件采用MFC開發,可以自動形成軟件界面框架,免除了界面開發的繁瑣工作;嵌入比較流行的表格控件,實現結構面的輸入及塊體信息顯示。采用兩種方式建模:對于較復雜的模型,采用面單元進行描述,在商業軟件AutoCAD中建立模型,轉化為dxf文件進行讀?。粚τ诤唵我巹t的模型,可以采用對話框的方式進行快速建模。結構面參數可以從界面的表格中輸入,也可以在txt文件中按照指定的順序寫好后導入。
軟件的功能包括:任意幾何邊界模型的建立、隨機結構面模擬、結構體求解、任意結構體單獨顯示、關鍵塊體滑動演示。
本系統通過AutoCAD的面單元建立三維模型,可對任意臨空面工程進行仿真,記錄下巖體內部所有結構體的數字信息,通過彩色三維圖像對節理發育的巖體內部結構進行展示,并可進行旋轉、平移及縮放。
圖5為一多階露天礦邊坡巖體結構演示。圖5(a)采用不同的顏色對結構體進行顯示,圖5(b)是對巖體內部任意結構體的單獨顯示,以便學生更加清晰、直觀地認識結構體形態。圖6為雙洞隧道圍巖的巖體結構,通過不同顏色展示了洞口與結構面間切割形成結構體的形態。圖7是復雜地表形態下結構體的顯示,可幫助學生理解曲面邊界下巖體結構的形態。圖8為節理發育的地下采場工程,通過展示模型邊界與隨機結構面的交線,使學生掌握節理的發育情況。圖9是邊坡中關鍵塊體的滑動,形象地將楔形滑塊的運動狀態展示給學生。

圖5 多階邊坡巖體結構演示

圖6 雙隧道圍巖巖體結構演示

圖7 曲面模型巖體結構演示

圖9 關鍵塊體滑動演示
通過開發巖體結構仿真教學系統,將不同工程的巖體結構展示給學生,取代了傳統的現場觀測和圖片教學,解決了實際工程中因巖體結構的隱蔽性和復雜性而帶來的實驗教學困難的問題,縮短了教學時間,節約了教學經費,同時激發了學生的學習興趣,使學生更主動地學習。
References)
[1] 楊文東,張艷美,俞然剛,等.復雜地質建模前處理方法在巖石力學數值實驗教學中的應用[J].實驗技術與管理,2014,31(9):179-182.
[2] 陳建峰,陳寶成,石振明,等.巖石力學數字實驗教學平臺建設[J].實驗室研究與探索,2015,34(6):120-123.
[3] 陳建峰,許鐵歐,俞松波,等.巖石三軸壓縮強度實驗教學改革研究[J].高等建筑教育,2012(1):107-110.
[4] 解盤石,伍永平.多元數值仿真技術在采礦工程實驗教學中的應用[J].實驗技術與管理,2013,30(3):89-91.
[5] 寧芳,范軍,蔡大林,等.基于Maya和Virtools的采礦虛擬現實教學系統開發[J].實驗技術與管理,2011,28(6):82-85.
[6] 楊云浩,王仁坤,邢萬波,等.猴子巖水電站洞群硬脆性圍巖變形破壞特征的3DEC分析[J].巖石力學與工程學報,2015(增刊2):4178-4186.
[7] 劉強,吳文兵,洪望兵,等.錯動帶對導流隧洞圍巖穩定影響的3DEC模擬[J].人民長江,2015(5):30-34.
[8] 張奇華,鄔愛清.隨機結構面切割下的全空間塊體拓撲搜索一般方法[J].巖石力學與工程學報,2007,26(10):2043-2048.
[9] 張奇華,鄔愛清.邊坡及洞室巖體的全空間塊體拓撲搜索研究[J].巖石力學與工程學報,2008,27(10):2072-2078.
[10] 鄔愛清,張奇華.巖石塊體理論中三維隨機塊體幾何搜索[J].水利學報,2005,36(4):426-432.
[11] 楊石扣,任旭華,張繼勛.基于有限結構面的三維復雜塊體切割研究[J].巖土力學,2016,37(8):2206-2212.
[12] 楊石扣,任旭華,張繼勛.基于布爾運算的復雜塊體幾何形態分析一般方法[J].巖土力學,2016,37(12):3576-3582.
Development of simulation teaching system for rock structure
Zhang Minsi, Yang Yong, Liang Haian
(College of Architectural Engineering, East China University of Technology, Nanchang 330013, China)
In order to improve the teaching effect, this paper develops the simulation teaching system for rock structure. This system builds up the complex rock model by AutoCAD. Through the model unit discretization, unit cutting and merging, all the structures are searched to complete the digital characterization of complex rock structure, and 3D color images are displayed in all directions. The simulation system simplifies the teaching process, saves the teaching expenditure, and has the teaching effect of being vivid and easy to understand.
rock structure; simulation teaching system; numerical simulation
TU45;TP391.9
A
1002-4956(2017)10-0117-04
10.16791/j.cnki.sjg.2017.10.029
2017-04-23
江西省自然科學基金項目(20161BAB216144,20171BAB203030);江西省教育廳科技項目(150578);東華理工大學教學改革研究課題“土木工程專業學生職業能力訓練與評價標準的改革研究”
張敏思(1985—),女,山東淄博,博士,講師,主要從事巖石力學方面的教學科研工作.
E-mail:mscccathy@163.com