陳小艷 姚多喜
(安徽理工大學地球與環境學院,安徽 淮南 232001)
近年來,隨著數字技術的快速發展,傳統的二維建模已無法滿足建模需求。面對復雜的地質體模型的構建,如地形起伏大的山川、峽谷模型的構建,利用FLAC3D進行構建是有一定難度的[1]。由于FLAC3D依靠繁瑣的命令,且工作量大、建模周期長、易出錯。為了解決上述問題,國內外眾多研究者提出不同的解決方法。胡斌等[2]采用Fortran語言對FLAC3D前處理程序進行編寫,實現對復雜模型的構建;鄭文棠等[3]基于AutoCAD平臺,借助Autolisp語言,采用滑動最小二乘法插值擬合來構建三維可視化模型,同時對可視化模型與數值模型的轉換進行研究;廖秋林等[4]采用Visual Basic語言編寫FLAC3D-ANSYS接口程序,實現FLAC軟件建模的直觀、快速和自動化;王璐等[5]采用D Mine軟件對AutoCAD平面圖中的等高線和鉆孔數據進行三維可視化操作,并輸出為地層實體SAT文件或XY平面上等間距的三維坐標數據,利用已編寫好的程序將三維坐標數據轉化為ANSYS可識別的APDL語言文件后,生成多個實體模型,經過ANSYS布爾操作、劃分網格后,利用接口程序導入到FLAC3D中,從而實現直觀、快速地創建復雜的地質體FLAC3D模型;Yucel等[6]借助Agisoft軟件對無人機圖像進行3D建模,對Etili Comakli露天煤礦實現三維地形模型的構建與可視化,高效完成三維地質建模過程中涉及的圖像匹配、地理配準和數字高程建模過程。GOCAD軟件具有強大的建模功能,操作起來方便快捷、簡單,并對初學者友好,能有效彌補FLAC3D前處理功能不足的缺點。本研究主要通過C++語言編寫轉換接口程序來實現GOCAD的SGrid模型向FLAC3D的六面體網格信息的轉換,實現三維模型在FLAC3D軟件中的快速簡便的建模。
FLAC是由美國ITASCA公司研發的連續介質力學分析軟件。FLAC3D是一個三維有限差分程序,作為FLAC的擴展程序,其不僅包括FLAC的所有功能,既能用交互方式從鍵盤輸入各種命令,也可采用文件格式進行輸入。FLAC3D能對土質、巖石和其他材料的三維結構受力特性進行模擬,并對塑性流動進行分析[7]。FLAC使用的是有限差分,使用快速拉格朗日算法來計算巖土的變形與穩定性。FLAC在分析巖土變形破壞時具有獨特的優勢,但其3D功能相對薄弱。在前處理方面,FLAC3D只能靠著煩瑣的命令來實現功能,導致工作量大、建模周期長、易出錯。在后處理分析方面,FLAC具有較為明顯的優勢,操作簡單、成圖清晰、分析數據簡便、文本編譯方便。
GOCAD軟件主要用于地質領域的三維可視化建模。GOCAD作為石油、地質、物探、采礦等行業的標準三維地學模型軟件,具有非常強大的功能[8],其內置有建模平臺、地質結構、模擬網絡、結構分析、盆地模擬等多種類型的設計方案,能讓地質學家與工程隊更好地分析各種地質構造,對研究地理環境或道路施工起到非常重要的作用。GOCAD軟件的建模功能強大,能簡單快捷地建立復雜的三維地質模型,既能建立表面模型,又能建立實體模型,且界面詳細易懂,對初學者比較友好,并提供三維地質網格模型建模流程,只要按建模步驟就能完成建模流程。且其應用范圍廣,不僅適用于地質工程,也適用于巖土工程、地理信息與技術等領域。
本研究對淮北礦業孫疃煤礦進行三維地質建模,淮北礦業孫疃煤礦地處安徽省淮北市濉溪縣,孫疃鎮是其中心位置,向東距宿州市約23 km,其南部以界溝斷層為界,與任樓煤礦接壤;北部以楊柳斷層為界,與楊柳煤礦毗鄰;淺部(西)以太原組—灰頂界露頭線為界,深部(東)至31煤層?800 m水平投影線;南北走向長10.6 km、東西傾向寬3.5~5.1 km,面積為44.004 4 km2。其地理坐標(1954北京坐標系)為:東 經116°43′01″—116?46′59″、北 緯33? 31′19″—33?37′13″。本研究在收集的研究區地質、DEM、鉆孔、剖面等資料的基礎上,利用鉆孔井位數據和鉆孔層位數據,通過GOCAD建立一個簡單的三維地質網格模型(SGrid)。
原始鉆孔資料中包含豐富的地質信息,用于GOCAD鉆孔建模的數據包括鉆孔空間位置信息、鉆進軌跡、地層分層數據等[9]。數據處理是GOCAD建模的基礎,如何分析整理出對建模有用的數據是成模的關鍵。鉆孔數據的預處理要結合建模經驗和專家系統知識,數據的預處理將決定插值算法的插值有效性[10]。將從鉆孔資料分析提取到的鉆孔井位數據井名(Wel1Name)、位置坐標(X,Y)、補心海拔(KB)、總深(Total_Depth)數據信息保存到.txt文件(鉆孔井位數據見表1),然后通過直井加載的方式導入到GOCAD軟件中。以同樣的方式來提取鉆孔分層數據,以文本格式為例,數據包括井名(Wel1 Name)、巖性分層深度(MD)及分層名稱(MARKER)3列數據信息,如果有傾角和方位角也可進行加載(鉆孔層位數據見表2)。鉆孔數據通過File→Im?port Objects→Well Data導入到GOCAD軟件中,鉆孔數據展示圖如圖1所示。

表1 鉆孔井位數據

表2 鉆孔層位數據
GOCAD軟件提供了多種構建面的方式,如在面編輯菜單中利用點數據直接生成面的方法(From PointsSet)、在面編輯菜單中利用線數據生成面的方法(From Curves)、運用控制點約束面的方法、通過向導菜單中的功能使用點數據生成面的方法、運用構造建模流程(Structural Modeling Work?flow)生成面的方法。要實現掘進區域內的三維地質模型建立,利用DSI插值算法對掘進區域進行鉆孔數據插值,并結合生成的插值點格網化形成地層面[10]。本研究按照建模流程步驟來生成面,在建面的過程中多次使用DSI插值對其進行優化,地層層面圖見圖2。
GOCAD軟件提供了多種SGrid網格建立的方法,大多數研究是在Workflow中新建三維地質模型網格(3DReservoir Grid Builder),GOCAD將采用向導模式進行半自動化建模。建立三維地質模型網格的方法有2種,用面來建立和用已經存在的二維網格來建立,利用建立的巖性層面來建立網格模型,按照三維地質模型網格即可完成建模,最后的網格模型如圖3所示。生成的SGrid模型需要在objects的SGrid選項里的regions屬性中對各地層的顏色進行定義,就能得到相應的地層。
鑒于GOCAD在構建復雜三維地質模型的快捷性以及FLAC3D在此方面存在的不足,且FLAC3D在模型分析處理方面的功能強大。由于GOCAD中的SGrid模型與FLAC3D中的Brick模型均為六面體單元,二者有相似之處,但也有細微的差別。GOCAD導出的模型文件格式不能直接被FLAC3D軟件識別,要用程序語言編寫從GOCAD轉換到FLAC3D的接口程序,從而實現二者的轉換。接口程序能將一個軟件導出文件的格式轉換成另一個軟件導入文件的格式[11]。利用Matlab以及C++語言編寫轉換接口程序來實現網格信息的轉換,從而實現三維模型在FLAC3D中的快速簡便建模。將GOCAD的三維網格模型SGrid用GOCAD?FLAC3D接口程序導出,生成.f3grid文件,將轉換的文件通過“File→Import Grid”導入到FLAC3D軟件中,即可自動生成三維地質FLAC3D模型,如圖4所示。對導入的模型定義本構及材料屬性,并加入初始和邊界條件,以及巖土體的力學參數,即可生成數值模型,并進行后期的數值模擬。
本研究考慮到GOCAD軟件在構建復雜三維地質模型的快捷性以及FLAC3D在此方面存在的不足,且FLAC3D在模型的分析處理方面具有強大的功能,利用Matlab以及C++語言來編寫轉換接口程序,從而實現兩個軟件中的六面體網格信息的轉換,實現三維模型在FLAC3D的快速簡便的建模。此方法結合GOCAD與FLAC3D的優勢,編寫適合二者的轉換程序,應用接口程序實現模型從GOCAD向FLAC3D的轉換。使用該方法的建模流程時間較短,且能取得良好的效果,證明該方法具有很好的實用性與簡捷性。本研究只涉及六面體的轉換,同樣的方法也可實現四面體的轉換。本研究設計的模型比較簡單,可根據相同方法來建立復雜的模型。