之前我們已經討論了生成高質量網格的因素以及如何準備 CFD 模型幾何結構來進行網格劃分。在本篇博客文章中,你將瞭解物理場控制的網格劃分、自適應網格細化,以及如何在 COMSOL Multiphysics? 軟體中使用各種網格劃分工具執行流體流動模擬。

物理場控制的網格劃分序列

在 COMSOL Multiphysics 中,為流體流動模型設置流動條件後,我們可以調用物理場控制的網格劃分序列。這樣的序列取決於以下幾方面:

  • 物理屬性設置
    • 例如,帶自動壁處理功能的湍流模型可以生成比層流模型更細化的網格
  • 特定的特徵
    • 例如,壁可以產生更細化的網格和邊界層網格
  • 幾何邊框大小
    • 可以控制單元的大小比例

下圖所示為 Ahmed 類車體模型的物理場控制網格劃分序列,我們在之前的博客文章中也使用過:

在網格1節點下:

  • 大小子節點包含一組網格大小參數,這些參數取決於幾何結構的屬性設置和邊框
  • 大小 1 子節點在所有無滑移壁上都處於活動狀態,並在這些壁上指定了更細化的網格
  • 角細化 1 子節點自動識別無滑移壁內所有足夠銳的角,並沿著這些邊指定更細化的網格(這種情況下,節點會找到車體上的大多數銳邊,連接車頂和斜面的邊除外)
  • 自由四面體網格 1 子節點在兩個邊界上和域內創建實際網格
  • 邊界層 1 子節點將邊界層網格添加到所有無滑移邊界
Ahmed 類車體模型的物理場誘導網格劃分序列產生的網格的放大圖。我們可以看到,壁上的網格比體內的更細化,並且靠近銳邊的網格更加細化。無滑移壁上的邊界層網格也是可見的。

有時,物理場誘導的網格對於簡單的模型來說已經足夠,你也可以以此為起點,進行更高級的網格劃分。用上面所示的網格完全有可能求解 Ahmed 類車體問題。不過,我們可以看到,車體後部的網格控制域沒有產生任何更細化的網格,非結構化網格覆蓋了整個風道。因此,車體後部的網格可以更細化,而車體下游的網格則沒必要細化。利用車體後部的網格控制域和本系列博客文章第一篇中所示的分割面,單元總數可以大致保持不變,但隨後會獲得更高的解析度。

COMSOL Multiphysics? 中的 CFD 建模網格劃分工具

COMSOL Multiphysics 提供了多種工具來控制和生成網格。我們先討論表面網格劃分的選項,因為我們建議首先對錶面進行網格劃分,以驗證足夠的解析度和高單元質量。請注意,為特定尺寸的實體劃分網格的工具也可以為相近的較小尺寸的實體劃分網格。例如,自由三角形網格 特徵可以為其指定的面劃分網格,也可以為所有相鄰的、之前未劃分網格的邊和點劃分網格。因此,在為面劃分網格之前無需為所有邊劃分網格,沒有為所有閉合面劃分網格的情況下也可以為體劃分網格。

映射網格

映射功能有可能創建非常好的表面網格。下圖顯示太陽能電池板模型中一塊電池板的高質量映射表面網格。將映射的網格細化,以便在自由邊附近獲得更細化的單元,並平滑過渡到覆蓋梁的細化網格。各向異性通過使用分佈 節點獲得,該節點包含若干設置,可控制單元數量以及這些單元沿邊分佈的情況。事實上,所有單元都有 90° 角,這意味著單元完全沒有偏斜。

太陽能電池板模型一個表面上的映射網格。

映射網格對於二維模擬特別有效,例如下圖所示的 NACA 0012 機翼基準模型。此模型中的映射網格最顯著的特性是它對單元大小、質量和增長率的極佳控制,但是它可能需要一些操作來指定所有邊上的最優分佈。

NACA 0012 機翼模型的二維映射網格。

非結構化四邊形網格

有些表面在劃分為可映射的面時非常麻煩,在這種情況下,可以使用自由四邊形網格 節點。下面的示例顯示由非結構化四邊形網格劃分的框架面。面上的最大單元大小由大小 屬性控制,而分佈屬性則用於控制沿多個邊的分佈情況。

太陽能電池板模型表面上的非結構化四邊形網格。

這個面也可以用「自由三角形網格」操作來劃分網格,但那樣會產生更多的單元。我們還可以看出,從相鄰的映射網格測量的增長率並不是最好的。框架位於太陽能電池板的下側,不會有太多流動,因此網格主要影響模型的結構力學部分,對該部分來說,增長率不是問題。

三角形網格

「自由三角形網格」操作是二維 CFD 模型的「主力」,因為通過這種方法可以快速、簡便地獲取覆蓋整個幾何結構的高質量網格。輕鬆創建非結構化網格需要在其他方面付出代價。非結構化三角形網格比結構化網格產生更多的數值擴散。這意味著,通過非結構化網格得到的解比通過大小相當的結構化網格得到的解更模糊。此外,非結構化網格在不偏斜的情況下不可能呈高度各向異性。

一般來說,非結構化網格必須比結構化網格細化很多,才能為 CFD 問題提供同等水平的精度。不過,由於這種情況更容易收斂,有時可能需要額外的擴散。這對於下圖所示的超音速噴射器這樣的模型來說是理想選擇,在該模型中,網格用作網格自適應的起始網格(見下文)。

超音速噴射器二維軸對稱模型的三角形網格。

「自由三角形網格」劃分操作在三維模型中甚少使用,其主要用途是針對各個面「測試網格劃分」;特別是我們已經對其應用虛擬操作的面。我們可以研究各個面上的網格質量,而不必為相鄰的體劃分網格。非結構化三角形網格也可以用作掃掠網格的起點。這種策略導致網格包含稜柱單元,這種單元的二次邊可以被拉伸,從而產生各向異性網格。

四面體網格

幾乎所有工業應用的幾何結構都包含一個或多個不適合掃掠的域,這些域必須用四面體網格覆蓋。「自由四面體網格」劃分操作會在構建體網格之前,先在未劃分網格的面上構建表面網格。表面網格必須與幾何結構邊界一致,但是在單元質量優化期間,表面網格 節點可以在面內移動,而已劃分網格的面仍保持不動,因此可能會產生質量較低的單元。

四面體只有三角形邊,因此需要使用某種單元來實現從包含四邊形單元的面的過渡,這種單元就是金字塔單元,它形式上是六面體單元,其中一個單元面摺疊為一個點,留下一個包含一個四邊形面和四個三角形面的單元。太陽能電池板模型中有許多包含四邊形單元的面,因此需要使用金字塔單元過渡到太陽能電池板周圍域中的非結構化網格,如下圖所示。

我們經常聽到有人說金字塔單元不如其他類型的單元,但是金字塔單元本身並不差。然而,將金字塔放置在各向異性四邊形上時,它的底部必須具有相同的各向異性。金字塔形狀的任何小擾動都會導致產生偏斜度相當高的單元。如下圖所示,放置在面板邊緣高度各向異性四方形面頂部的金字塔單元通常比面板中心的金字塔單元質量低。在這種情況下,與其在面板中使用非結構化網格,不如在整體上使用小得多的低質量網格。

放置在太陽能電池板幾何結構的四邊形單元頂部的金字塔。這些單元根據質量著色,質量根據偏斜度計算得出。

通過使用網格控制域,可以顯著改善對「自由四面體網格」操作所生成的網格的控制。對於下圖所示的示例,尺寸 3 屬性在 Ahmed 類車體的斜面和背面指定了一個較小的最大單元大小。自由四面體網格 1 的尺寸 1 屬性指定了網格控制域中的低增長率,這導致尾區內產生增長率低、單元質量高的細化網格。為周圍的空氣域劃分網格後,包含網格控制域的邊界被移除,我們可以自由添加邊界層網格並移動相鄰的單元。

Ahmed 類車體後部的網格控制域。

我們可以考慮對上面的網格控制域使用掃掠網格。但這樣做會使向其餘非結構化網格的過渡變得更加困難,而且實際情況也不會有所改善,因為我們預計「車體」後部的旋渦流動是相對各向同性的,這意味著結構化網格也需要具有一定程度的各向同性。

掃掠網格

在 COMSOL Multiphysics 中,映射網格對應的三維網格用掃掠網格表示。對一組源面進行掃掠;為這些面劃分網格並將它們投影到多個目標面上;然後根據源網格包含三角形單元還是四邊形單元,使用稜柱單元或六面體單元連接這些面。掃掠操作非常適用於獲取在流線方向被拉伸的網格,同時在橫截面上保持給定的解析度。

在下圖的示例中,在 Ahmed 類車體模型風道的下游區域添加了掃掠網格。細心的人會發現,非結構化四面體網格與靠近頂面的掃掠網格之間的增長率可能會更好。但此處的流場幾乎沒有變化,因此在「車體」後部獲得良好的增長率更為重要。

Ahmed 類車體下游的掃掠網格。

上述掃掠網格使用「自由四面體網格」操作和「邊界層」操作得到的面網格作為其源網格,這通常是一個非常有用的策略。我們可以在出口邊界上創建一個非結構化三角形網格,並將網格從出口向上掃掠至曲面。不過,這將限制「自由四面體網格」操作(參見「三角形網格」部分)。我們不僅需要在包含非結構化網格的部分中創建邊界層網格,並將這些網格掃掠至下游,還需要沿著整個風道底板推進邊界層單元。

邊界層網格

邊界層網格劃分是 CFD 模擬的重點,此操作可以在壁附近創建高度各向異性的網格,而無需使用掃掠網格或特別指定的域。如之前的文章所述,邊界層通常在無滑移壁上形成,因此這些單元是必需的。

Ahmed 類車體模型的邊界層網格。單元根據質量著色,質量根據偏斜度計算得出。

在 COMSOL Multiphysics 中,需要在為域劃分網格之後添加邊界層網格。各向異性稜柱或六面體單元被推入計算域,產生如下所述的多個高度各向異性單元。結果表明,儘管這些單元呈各向異性,但質量良好。原因在於,邊界層網格在這種情況下由高質量的三角形構建,這也產生了高質量的稜柱單元。

邊界層網格特徵

邊界層網格有三個特徵:

  1. 第一層的高度
  2. 增長率
  3. 層數

首先是第一層單元的高度,它通常指定為面單元長度尺度的一部分。典型的默認值是面單元的長度尺度比第一個邊界層單元的高度大 50 倍。更高的寬高比可能會給出更高的解析度,但最終的方程組也可能更難求解,在使用迭代求解器的情況下尤其如此。

第二個特徵是拉伸因子,即從第一個單元層到下一個單元層的增長率。這對於得到向非結構化網格的良好過渡非常必要(如上文所述)。頂部邊界層過渡到非結構化網格時,單元尺寸的激增顯而易見。邊界層可以在邊界層網格中採用更大的拉伸因子,也可以採用更多層(層數是邊界層網格的第三個特徵)。但上述邊界層網格的厚度不能再增加了,原因是,為避免非結構化網格高度偏斜,車體與地板之間的間隙中的網格已被嚴重壓扁。邊界層網格的壓縮通過底層演算法自動完成。

選擇第一層單元高度、增長率和單元數是一項平衡措施,可以在必要的解析度、向非結構化網格的良好過渡以及最終單元質量之間取得良好的平衡。

銳邊的特殊注意事項

如果你親自動手包裝過禮物,就知道包裝紙在銳邊周圍很容易被撕破。邊界層網格也存在類似的問題,如下圖所示。後緣銳邊處的邊界層網格單元相當偏斜,就像機翼下游的單元一樣。

未經特殊網格處理的機翼後緣銳邊。

一種選擇是在銳邊上「拆分」邊界層,結果如下圖所示。現在,邊界層網格末尾是兩個特殊的單元列,這兩列都以三角形單元開頭,後面均為適當數量的四邊形單元。通過拆分操作,你可以控制角的銳度,以及每個「特殊」單元列應覆蓋的最大角。優化這些參數可以明顯提高銳邊處的單元質量。

在機翼銳邊處拆分邊界層

拆分操作並非適用於任何情況。在複雜的三維 CAD 幾何結構中,任何數量的邊都可以連接到銳角,這種幾何結構拆分起來尤其困難。必需針對每個拓撲位移的配置為演算法進行編程,並且高級幾何結構很可能至少包含一個演算法無法處理的銳角。

此外,也可以使用第三種銳角處理方法,即修剪,這是 COMSOL Multiphysics 中處理銳角的默認選項。機翼的處理結果如下圖所示。由於層靠近銳邊,因此每個靠近邊的單元的高度都降低了兩個單元。這種方法也可以視為邊界層單元數從銳邊開始的增長。為了獲得最佳網格,我們可以同時控制增長的單元數和修剪的最小角。

與不做處理或不拆分相比,修剪操作可以降低銳角處的有效解析度。因此修剪應該總是與網格的一般細化結合使用,這也是上面討論的角細化 特徵默認包含在物理場引導的網格序列中的原因。

為包含銳角的邊界層劃分網格時,修剪是默認選項。

邊界層網格可以提高狹窄區域的解析度。仔細觀察上圖中的網格可以發現,車體與地板之間的區域被 15(6+3+6)個單元覆蓋。這足以表徵可能在這一狹窄區域中發生的任何速度分佈。如果沒有邊界層網格,間隙將僅被 3 個單元覆蓋,嚴重限制了網格表示 Ahmed 類車體下方流動剖面的能力。而流動通常被人為節流,使得窄區域在數值上比幾何上顯得更窄。因此,邊界層網格不僅可以用於湍流邊界層,也可用於層流甚至微流體系統。一個好的經驗法則是:必須使用至少五個單元來解析狹窄區域。

複製網格

最後,我們將介紹如何在各個實體之間複製網格。只要源網格可以通過平移、旋轉和各向同性縮放映射到目標實體,就可以在相同尺寸的實體之間複製網格。這意味著目標實體必須與源實體形狀相同,但目標實體可以位於另一個位置、以某種方式旋轉,並且可以具有不同的大小。

複製網格對於映射網格和掃掠網格特別有用。通過複製網格,我們可以用一個複製操作代替多次映射和掃掠操作,以及多次分配屬性操作。如之前的博客文章所述,如果幾何結構被正確分割,就可以實現複製網格。這樣一來,你只需更改源域的序列,從而不僅能夠在創建網格時提高工作效率,還可以更輕鬆地管理網格的任何後續更改。複製操作會自動將這些更改傳遞到目標域。

黃色域中的掃掠網格被複制到兩個粉色域。

自適應網格劃分

在模擬 CFD 問題時,我們力圖在梯度較大的區域中創建密集網格。不過,有時很難預測梯度驟變出現的位置。還有一些瞬態情況,驟變的梯度會移動。這可以通過在出現梯度驟變的所有區域創建細化網格來解決,但通常計算成本會很高,較好的解決方法是採用自適應網格劃分。

穩態問題的自適應

自適應網格劃分的一個例子體現在由跨音速流在壁掛式凸起物上產生的激波系統的等壓線中。激波可以通過穩定性方案捕捉,但粗化網格會使它們顯得模糊不清。

壁掛式凸起物上歐拉流動的等壓線。

上圖中的強激波是從一個均勻的、相對粗化的網格開始的(如下面左圖所示)。基於粗化網格得到的解用於粗略估計方程殘差,並在殘差較大的位置細化網格。方程基於最終得到的較細化網格進行求解。你可以重複此過程,直到達到滿意的精度為止。

上述用於計算壓力場的網格如下面右圖所示,這是非常簡單的初始網格經過兩次自適應細化後的結果。由於問題必須在初始網格上收斂,因此自適應仍然需要一些操作來創建初始網格。

歐拉流動模型的初始網格(上)和自適應網格(下)。

瞬態模型的自適應

瞬態模型的自適應方式略有不同。基礎粗化網格用於在一定時間間隔內推進求解。隨後使用求解結果基於某個指示函數來細化網格。然後,使用自適應網格再次模擬時間間隔。下面左圖顯示了噴墨印表機噴嘴模型的基礎網格,中間的圖顯示了自適應網格。由於這是一個兩相模型,因此自適應基於 ||▽_{phi}|| 進行,其中 phi 是水平集函數(0 位於一個相,1 位於另一個相)。右圖顯示了自適應時間間隔結束時的解。我們可以看到細化網格如何覆蓋界面前沿在整個時間間隔範圍內的傳遞。

噴墨印表機噴嘴的瞬態網格自適應。

瞬態自適應網格劃分是一種非常經濟有效的方法,可以得到非常好的結果。這種方法的效益很大程度上取決於基礎網格,基礎網格不可能太細化,因為問題必須在基礎網格上多求解一段時間。對基礎網格執行一些操作,通常會獲得不錯的效果,特別是對於較高級的幾何結構來說更是如此。

CFD 模型網格劃分工具總結

為 CFD 創建合適的網格是一門藝術。即使在使用自適應網格劃分的情況下,獲得高質量的網格也需要理解各種網格工具如何工作並預測流動問題的預期解。

我們創建的第一個網格通常不夠理想,往往需要改變幾何結構、網格,或同時對兩者進行修改。COMSOL Multiphysics 中的幾何結構和網格劃分序列可以很好地應對這一問題。幾何序列中引入的變化可通過模型向下傳播,如此一來,在幾何結構中引入變化時,就無需重新指定物理場或網格設置。此外,我們也可以大幅更改網格設置,重建整個網格序列,而不用從頭開始操作。另一種可能性是在幾何結構和網格中使用參數,從而得到一個模型,在其中單擊幾下即可將網格細化。

本系列博客文章只是初步揭示了在 COMSOL Multiphysics 中創建網格的可能性。除此之外,你還可以使用更多設置和選項進行 CFD 建模。

後續操作

使用 CFD 模塊模擬流體流動應用?

cn.comsol.com圖標

延伸閱讀

請閱讀以下 COMSOL 博客文章,瞭解有關網格劃分和 CFD 分析的更多內容:

  • 第 1 部分: 如何在 COMSOL Multiphysics?中建立網格來執行 CFD 分析
  • 如何檢查 COMSOL Multiphysics? 中的網格
  • 如何求解經典的 CFD 基準問題:頂蓋驅動空腔

經授權轉載自cn.comsol.com/blogs,原作者Christian Wollblad

推薦閱讀:

相關文章