動網格除了前面講了不少的關於運動指定以外,另外一個重要主題則爲網格的更新。
在部件運動以後,不可避免的會形成網格形狀的變化,如若不對網格加以控制,在持續運動的過程當中,則可能形成網格極度變形、歪曲率過大,甚至產生負體積。所以必須對發生變形的網格進行矯正。
Fluent主要提供了三種方式控制網格:微信
Remeshing
本文關注Fluent中的Smoothing方法。spa
Smoothing方法的啓用很是簡單,只須要在Dynamic Mesh中激活Smoothing
選項便可,如圖所示。
以後可進入Setting...
菜單項中進行參數設置。code
對於存在旋轉運動的邊界,可使用Linearly Elastic Solid方法,此方法計算量最大,但可以提供更好的網格質量。io
彈簧光順(Spring)是最基礎的光順方法,也是Fluent默認使用的光順方法。
該方法的基本思路是將網格節點之間的鏈接線近似爲彈簧,經過計算節點之間力平衡方程獲得各節點光順後的位置。
\[ \vec{F_{i}}=\sum_{j}^{n_i}{k_{ij}(\Delta\vec{x}_j-\Delta\vec{x}_i)} \]ast
式中\(\Delta \vec{x}_i\)及\(\Delta \vec{x}_j\)分別爲節點i與節點j的位移。\(n_i\)爲與節點i相連的節點數量;\(k_{ij}\)爲節點i與節點j之間的彈簧剛度。class
彈簧剛度可定義爲:
\[ k_{ij} = \frac{k_{fac}}{\sqrt{|\vec{x}_i-\vec{x}_j|}} \]
式中\(k_{fac}\)爲Spring Constant Factor
,是一個須要用戶輸入的值。基礎
當彈簧力達到平衡時,可計算獲得:
\[ \Delta \vec{x}_i^{m+1}=\frac{\sum_{j}^{n_i}{k_{ij}\Delta \vec{x}_j^m}}{\sum_{j}^{n_i}{k_{ij}}} \]
其中,m爲迭代次數。二維碼
當節點i的位移計算獲得以後,便可更新網格位置:
\[ \vec{x}_{i}^{n+1}=\vec{x}_i^n+\Delta \vec{x}_i^{converged} \]方法
須要設置的參數包括:
im
Spring Constant Factor
:彈簧常數因子。該參數控制了擴散阻尼,參數取值範圍0~1,默認值爲1。此參數越小,表示網格之間的阻尼越小,網格運動更容易擴散到更遠的節點。當邊界運動較爲劇烈時,可適當減少此數值。Convergence Tolerance
:收斂精度。計算網格節點運動採用的是迭代法,這個迭代容差控制了迭代精度。默認值爲0.001,一般不須要修改。Number of Iterations
:迭代次數。當迭代次數達到此設定值,中止迭代計算。默認值爲20,一般不須要修改。Elements
方式決定了更新的網格類型:Tri in Tri Zones
:只光順三角形或四面體網格Tri in Mixed Zones
:光順混合區域中的三角形或四面體網格對於彈簧光順方法:
Spring Contant Factor
來控制網格節點的運動幅度。當邊界運動幅度很大時,可適當下降該參數值,從而利用更多的網格節點運動來消減邊界運動形成的網格影響。