3DEC模型轉(zhuǎn)換到FLAC3D模型
1 引言
3DEC模型轉(zhuǎn)換到FLAC3D模型比轉(zhuǎn)換到UDEC模型【三維模型輸出到二維模型(3DEC to UDEC)】要復雜的多,原因是三維模型對象的屬性比二維模型多,涉及到點,線,面,體,組,槽的轉(zhuǎn)換。一個最基本的要求是在3DEC內(nèi)必須把block劃分成zone才能進行轉(zhuǎn)換,在3DEC內(nèi)直接的轉(zhuǎn)換方式為:File>Grid>Export to FLAC3D...。轉(zhuǎn)換時可以選擇ASCII Format,也可以選擇Binary Format。二進制文件的尺寸比文本文件的尺寸小,讀入速度快,因此,一個經(jīng)驗規(guī)則是在調(diào)試程序時使用文本文件,可以觀察文件內(nèi)容,在執(zhí)行程序時使用二進制文件。
2 工作原理
3DEC轉(zhuǎn)換成FLAC3D后,會產(chǎn)生兩個同名但不同擴展后綴的文件,一個是網(wǎng)格文件*.f3grid, 一個 *.dat文件,*.dat文件的內(nèi)容如下所示。
zone import 3.f3gridzone interface create-from-3decfish define interface_group loop foreach local ip interface.list local int_name = interface.name(ip) local pos = string.find(int_name, '_') local ip_grp = int_name(1, pos - 1) interface.group(ip) = ip_grp; loop foreach local el interface.elem.list(ip) local facenum = interface.elem.host.face(el) local hostzone = interface.elem.host.zone(el) local dfngroup = zone.face.group(hostzone,facenum,'dfn') if dfngroup != 'None' interface.group(ip,'dfn') = dfngroup endif end_loop end_loopend[interface_group]
轉(zhuǎn)換程序?qū)?DEC的單元導出到*.f3grid中,將節(jié)理導出到*.dat中,使用interface_group創(chuàng)建FLAC3D的interface。FLAC3D單元將被分配到與3DEC中的塊組相同的組名和槽位(slot)。如果Merge-Join設(shè)置為 "true",那么單元也將被分配與slot ID相同的組名。faces將被設(shè)置成在slot "jset "中與節(jié)理ID相關(guān)的組名。
3 命令選項
上述在File>Grid中生成的FLAC3D文件實際上執(zhí)行的是命令block to-flac3d,這個命令可以帶一些其它關(guān)鍵字用來控制文件的輸出。
(1) face-groups [true/on] 輸出用戶定義的face group名稱(不是joint set ids). 默認情況下,不輸出face group名稱。
(2) filename [s] 設(shè)置輸出文件的名稱。產(chǎn)生兩個輸出文件,一個網(wǎng)格文件 .f3grid, 一個 .dat文件,調(diào)用網(wǎng)格文件。
(3) binary [false/off] 默認情況下輸出文件格式是二進制文件,可以輸出為ASCII format.
(4) block-id [true/on] 設(shè)置等于3DEC塊體ID的單元組。如果連接了塊體,那么單元組將被設(shè)置成聯(lián)合組的主ID。這些組將被分配到槽位BlockID。默認情況下是off。
(5) zone-groups [true/on] 輸出用戶定義的單元組名(不是塊體組)。默認情況下不輸出。
4 FLAC3D文件格式
導出的*.f3grid文件由以下幾部分組成:
*GRIDPOINTS
*ZONES
*GROUPS (ZGROUP, FGROUP)
*FACES
* FACE GROUPS
單元型式有:
B8 – brick單元
W6 – wedge單元
P5 – pyramid單元
B7 – degenerate brick單元
T4 – tetrahedral單元
工程師必備
- 項目客服
- 培訓客服
- 平臺客服
TOP




















