【HyperMesh寶典】之四面體網格劃分 01.gif

陳康肅公善射,當世無雙 ,公亦以此自矜。嘗射於家圃,有賣油翁釋擔而立,睨之久而不去。見其發矢十中八九,但微頷之。康肅問曰:”汝亦知射乎?吾射不亦精乎?”翁曰:”無他, 但手熟爾。”康肅忿然曰:”爾安敢輕吾射!”翁曰:”以我酌油知之。”乃取一葫蘆置於地,以錢覆其口,徐以杓酌油瀝之,自錢孔入,而錢不濕。因曰:”我亦無他,惟手熟爾。”康肅笑而遣之。此與莊生所謂解牛斫輪者何異?

——《賣油翁》

· 歐陽修

即使在看起來完全不相干的領域,很多道理也依然是相通的。賣油翁和解牛、斫輪者都是特定領域的大師。看似很簡單的事情也存在很高深的境界。很多訣竅都有其不可言傳之處,只能在實踐中去感悟。

【HyperMesh寶典】之四面體網格劃分 02.gif

四面體網格劃分在HyperMesh中可以說是非常簡單的。基本思路是先劃分外表面的三角形網格,然後由外向內生成四面體網格。對外表面的三角形的基本要求有:

  • 精確捕捉幾何特徵;
  • 形成封閉空間;
  • 單元品質不能太差;
  • 相鄰單元的法向夾角不能太小;
  • 相鄰兩片外表面之間的距離不能太小。

實例說明

用一個簡單的結構四面體的例子來說明。


Step1

打開幫助文件中的manifold_surf_mesh.hm


WeChat 圖片_20181106162053.jpg


Step2

檢查自由邊。


2.jpg

3.jpg
因為該模型沒有自由邊,點擊find edges後,螢幕左下角會顯示:

4.jpg

如果有自由邊,那邊使用幾何/網格編輯工具修復,再檢查T型連接。

5.jpg

因為該模型沒有T型連接,點擊find edges後,螢幕左下角會顯示:

6.jpg

如果有T型連接,那邊使用幾何/網格編輯工具修復。


Step3

生成四面體單元。
如果是結構四面體,使用如下設置可以直接生成四面體,這裡我們讓程式自動將四邊形切割成三角形。


 

7.jpg

 

 

 

或者先在split面板將四邊形切割成三角形

8.jpg

9.jpg

 

 

 

 

如果是CFD分析用的體網格,需要先在CFD tetramesh面板生成邊界層。

10.jpg

對於複雜流體空間,可以使用1st cell height calc按鈕計算第一層邊界層的厚度。

11.jpg

 

 

 

 

 

 

 

 

 

在生成CFD體網格的面板裡面需要分別指定有邊界層和無邊界層的2D網格。

12.jpg

 

 

設置完畢後點擊mesh按鈕進行劃分,結果如下:

13.jpg

14.jpg

CFD網格通常要求在幾何突變處或者曲率較大的區域進行局部細化,automesh面板的surface deviation子面板可以滿足這些要求,第三列綠色的refine按鈕可以選擇幾何特徵進行進一步地細化。

15.jpg

 

 


Tetramesh面板有幾個比較重要的選項

1.速度/品質選項

a.jpg

通常選擇品質優先,只有當單元數量極大(比如大於幾千萬或上億)才採用速度優先。

2.插值演算法

c.jpg

網格品質要求較高時(或者想達到希望的品質要求有困難時)選擇Interpolate演算法;希望得到高品質流體邊界層時可以採用Octree based演算法。

在拓撲優化設計空間定義時可以採用user Controlled方法得到內外大小一致的四面體網格,設置方法如下圖:

e.jpg

standard選項的對比如下:

f.jpg

實際中可能碰到的問題


問題1

模型沒有自由邊和T型連接,但是劃分四面體失敗。

  這種情況通常在複雜的結構中出現,通常是因為2D網格的拓撲有錯誤或者單元之間的法向夾角過小。


模型如下:

22.jpg

模型中2D網格的品質良好而且也沒有自由邊和T型連接,但左側區域有兩排網格之間的夾角只有0.01度(基本上重合)。

 

如果我們直接使用tetramesh面板去生成四面體網格,HyperMesh也可以成功生成(說明tetramesh面板確實非常強大),但是得到的四面體網格的品質是非常差的。

23.jpg

要避免此類問題,可以使用tetramesh面板自帶的2D網格檢查工具。

24.jpg

得到的結果如下:

25.jpg

找到問題部位後局部修改2D網格即可。


問題2

體的內部有孔。

簡單的情況如下,如果採用預設設置中間的球形區域不會生成網格,如果希望在兩個區域同時都生成網格,可以這樣處理:


26.jpg

Step1

劃分2D單元。

27.jpg

Step2

打開tetramesh面板的fill voids選項。

28.jpg

29.jpg

生成的四面體網格如下:

30.jpg


問題3

體單元的局部細化。

通常應該在2D網格上完成細化後在生成體網格,但是在一些情況下也可能需要對體單元進行局部細化,Tetramesh面板提供了相應的選項。


Step1

tetramesh面板的Refinement box子面板創建一個refine box並提供希望細化到的單元邊長(refinement size),輸入相應參數後點擊create按鈕進行創建。

31.jpg

如果希望再對該refine box進行編輯可以直接點擊freehand edit按鈕進行編輯。

32.jpg

Step2

tetramesh parameters子面板選中該refine box對應的comp

33.jpg

Step3

tetramesh子面板進行四面體網格的生成,效果如下:

34.jpg


問題4

孔和圓角的特徵捕捉。


為了使圓角的單元呈規則排列,需要進行必要的幾何清理,劃分網格時使用mixed方法,結果如下圖所示:

35.jpg

圓孔的處理方法類似,結果如下圖所示:

36.jpg

實際上,四面體網格的絕大部分工作都在於生成表面網格,而生成高品質的表面網格可能會花費相當多的時間。對於動力總成、複雜注塑件等尤其如此。

 

如果對網格的要求不高,HyperMesh簡單易用的四面體劃分工具utility

37.jpg

打開後介面如下圖:

38.jpg

 
 

一般只需要填好如下3個參數:

Mesh Size:平均單元尺寸;

Minimum edge Size: 最小特徵邊長一般取平均單元尺寸的1/5;

Minimum elem Size: 最小單元邊长一般取平均單元尺寸的1/5。

然後選擇components進行劃分即可,如果遇到問題需要修復,方法同上。

該工具會自動完成幾何清理-2D網格劃分-2D單元清理-生成四面體單元整個過程。可能出現的主要問題是清理過程可能導致局部單元沒有緊貼幾何表面。

另外,HyperMeshutility工具集中也提供了直接修正四面體單元品質的工具,請大家自己嘗試使用。

39.jpg

打開後會先要求使用者選擇四面體單元(框選部分或全部單元即可):

40.jpg

對於複雜模型建議選擇Remesh選項,否則局部幾何造成的問題單元可能無法修復。

四面體網格的常見要求

2.對於圓角,希望得到大小勻稱而且排列整齊的網格。

41.jpg

1.對於特定半徑範圍的圓柱孔,希望固定圓周方向的單元個數和軸線方向的單元長度。

42.jpg

3.大多數情況下希望圓柱面上的網格橫平豎直,尺寸一致。

43.jpg

4.四面體螺栓處有漂亮的washer

44.jpg

5.在重要部位希望增加體單元的層數。

45.jpg

另外,我們有時希望軟體能自動按照事先給定的要求生成體網格。

所有這些功能HyperMesh都可以通過幾何清理或者tetramesh的控制實現。但是HyperWorks中還有更專業更自動化的四面體網格劃分工具——SimLab

 
 
 

下面視頻中的零件特徵眾多,如果都要手工進行幾何清理,使用HyperMesh的工作量會很大。看看SimLab是怎麼處理的。

 
 

 

本期HyperMesh專題就到這裡啦~ 喜歡的小伙伴不妨给我們點個讚或者分享到朋友圈,下期方老師將給大家介紹更多SimLab的強大功能,我們下期見嚕~

【HyperMesh寶典】之四面體網格劃分 03.gif

 
 
arrow
arrow

    Altair Taiwan 發表在 痞客邦 留言(0) 人氣()