使用BlockRanger(BR)產生結構化網格
1 引言
在《Griddle劃分非結構化網格(FLAC3D和3DEC)》中首先使用Cylinder和Mesh命令初步劃分三角形網格,然后使用GSurf和GVol命令生成非結構化以六面體為主的網格。對于這樣一個圓柱體,如果想使用BlockRanger產生結構化的網格是不可能的,因為BlockRanger只能對四面、五面或六面的實體(不是表面網格)進行操作,而圓柱體只有三個面。如果非要進行這樣的操作,則會產生錯誤信息"遇到不支持的實體(只支持六面體、棱柱體、四面體和掃掠形的實體)。請檢查高亮顯示實體的拓撲結構"。
另一方面,使用Cylinder命令產生的網格是一個整體,用Itasca語言講,它是一個Group, 如果在圓柱體內想設置兩種或兩種以上的材料,顯然這種方法是行不通的。因此需要使用不同的技術來達到這一目的。
BlockRanger是Griddle的全六面體結構化網格生成器,它的操作原理與非結構化網格器GVol不同。 為了在圓柱體內創建一個結構化的網格,必須將初始實體細分為適合BlockRanger的形狀。
(1) BlockRanger (BR) 對實體劃分成結構化的六面體網格
(2) GInt 對表面網格相交的部分進行調整,
(3) GSurf 非結構化的表面網格劃分,以指定的參數創建非結構化表面網格
(4) GVol 非結構化的四面體/六面體為主的網格劃分
(5) GHeal 一組用于識別和修復表面網格問題的工具
(6) GExtract 一組根據用戶指定的準則提取部分表面網格的工具
(7) GExtend 一組用于沿指定邊界擴展表面網格的工具
(8) GExtrude 一組沿其邊界擠壓表面網格的工具,用來創建一個密封的區域
(9) NonManifoldMerge---Rhino命令合并表面網格,創建單一的非流形網格
(10) ColorizeObjects---為對象分配隨機顏色
基本的想法是首先產生圓柱體的底面形狀,劃分為不同區域,然后拉伸形成圓柱體。
2 產生底面形狀
(1) 首先使用Line和Arc命令產生圓形1/4的幾何形狀,然后使用Join命令把這些線段和圓弧連接成為一個整體;
(2) 以0點作為旋轉中心,使用Rotate命令旋轉-90°,90°,180°,從而產生出一個完整的圓形;
(3) 使用Polyline命令畫出圓內的正方形;
(4) 使用ColorizeObjects命令對這個5個對象隨機著色。至此底面形狀完成。
3 產生圓柱體
使用ExtrudeCrv命令把底面拉長,形成一個圓柱體。為了以防出現裸漏的邊,使用Cap命令產生封閉的實體。使用邊分析工具檢查(Surface>Edge Tools>Show Edges)。再次使用ColorizeObjects命令讓圓柱體著色。
4 產生網格
使用BR命令產生網格,BlockRanger共有5個選項:
MeshSettings
GenerateSurfaceMesh=None
OutputFormat=FLAC3D
FormatType=Binary
AutoOutputName=N/A
選擇GenerateSurfaceMesh = BySolid, MeshSettings>MaxEdgeLength = 0.85。在FLAC3D導入產生出的網格,如下圖所示。
工程師必備
- 項目客服
- 培訓客服
- 平臺客服
TOP




















