计算流体力学

**計算流體力學**（英語：**Computational Fluid Dynamics**，簡稱 **CFD**）是 21 世紀流體力學領域的重要技術之一，使用數值方法在計算機中對流體力學的控制方程式進行求解，從而可預測流場的流動。目前有多種商業 CFD 軟體問世，比如 FLOW-3D、FLUENT、CFD-ACE+（CFDRC）、Phoenics、CFX、Star-cd 等。

目前在工程領域 CFD 方法已經得到廣泛的應用。美國海空軍下一代 F-35 戰鬥機所使用的附面層分離進氣道是 CFD 的成果之一。附面層分離進氣道通過特殊設計形狀的突起分離流速較慢的附面層以改善渦輪風扇發動機的進氣流場。此設計比傳統的附面層隔板方法可以減輕數百公斤重量，同時在一定速度範圍內能夠維持很好的分離效率。

CFD 最基本的考慮是如何把連續流體在計算機上用離散的方式處理。一個方法是把空間區域離散化成小胞腔，以形成一個立體網格或者格點，然後應用合適的算法來解運動方程式（對於不粘滯流體用歐拉方程式，對於粘滯流體用納維 - 斯托克斯方程式)。另外，這樣的一個網格可以是不規則的（例如在二維由三角形組成，在三維由四面體組成）或者是規則的；前者的特徵是每個胞腔必須單獨存儲在內存中。最後，如果問題是高度動態的並且在尺度上跨越很大的範圍，網格本身應該可以動態隨時間調整，譬如在自適應網格細化方法中。

如果選擇不使用基於網格的方法，也有一些可選的替代，比較突出的有：

* 光滑粒子流體動力學，求解流體問題的拉格朗日方法，
* 譜方法，把方程式映射到像球諧函數和切比雪夫多項式等正交函數上的技術。
* 格子波爾茲曼方法（Lattice Boltzmann Methods），它在直角正交格點上模擬一個等價的中尺度系統，而不是求解宏觀系統（也不是真正的微觀物理）。

對於層流情況和對於所有相關的長度尺度都可以包含在格點中的亂流的情形，直接求解納維 - 斯托克斯方程式是可能的（通過直接數值模擬）。但一般情況下，適合於問題的尺度的範圍甚至大於今天的大型並行計算機可以建模的範圍。

在這些情況下，亂流模擬需要引入亂流模型。大渦流模擬和雷諾平均納維－斯托克斯方程式表述 (Reynold-Averaged-Navier-Stokes, RANS) 和 _k-ε_ 模型或者雷諾應力模型一起，是處理這些尺度的兩種技術。

很多實例中，其他方程式和納維 - 斯托克斯方程式要同時被求解。這些其他的方程式可能包括描述種類濃度、化學反應、熱傳導等。很多高級的模擬軟體允許更複雜的情形的模擬，涉及到多相流（例如，液 / 氣、固 / 氣、液 / 固）或者非牛頓流體（例如血液）。

## 方法論

所有這些方法都遵循同樣的基本的程序。

1. 問題的幾何（物理界限）被定義。
2. 流體占據的體積被分成離散胞腔（網格）。
3. 物理建模得到定義 - 例如，運動方程式 + 焓 + 種類不滅
4. 邊界條件被定義。這涉及到液體在問題的邊界行為和性質。對於暫態問題，初始條件也要定義。
5. 方程式作為靜態或者暫態被重複求解。
6. 最後答案的分析和可視化。

### 離散化方法

給定離散化的穩定性通常在數值上建立，而不是像在簡單的線性問題上那樣可以解析的建立。必須特別小心才能保證離散化能夠漂亮的處理不連續的解。歐拉方程式和納維 - 斯托克斯方程式兩者都可能有衝擊波和接觸表面。

在使用中的一些離散化方法包括：

* 有限體積法（Finite Volume Method, FVM）。這是「古典」或者說標準的方法，在商用軟體和研究用程序中最為常見。控制方程式在離散的控制體積上求解。這個積分方法導致了一個本身就保守（也就是說，密度這樣的量保持了物理上守恆）的方法。

　
: : ${\frac {\partial }{\partial t}}\iiint QdV+\iint Fd\mathbf {A} =0,$

　
: 其中 $Q$ 是被守恆的變量的向量，而 $F$ 是通量的向量， $V$ 是控制體積元體積， $A$ 是控制元表面積。

* 有限元法（Finite Element Method, FEM）。這個方法在固體結構分析中很流行，但是也可以用於流體。但是，FEM 表述需要特殊處理來保證保守的解。
* 有限差分 (Finite Difference Method, FDM) 方法。這個方法有歷史上的意義而且易於編程。現在只在特殊化的代碼中使用。
* 邊界元方法。流體占據的邊界被分割成表面網格。

### 亂流模型

直接數值模擬（DNS）捕捉了所有相關尺度的亂流運動，所以不需要對最小的尺度建立另外的模型。該途徑極其耗費資源，在現代的機器上對於複雜的問題甚至可能無法達成，因而對於流體運動最小尺度的模型還是有必要的。

#### 雷諾平均納維－斯托克斯方程式

雷諾平均納維－斯托克斯方程式（RANS）是亂流最古老的方法。將流體運動的各物理量表達為一個統計平均值和一個脈動值的和，代入原始的 N-S 方程式後再取統計平均，從而得到關於統計平均物理量的控制方程式 ——RANS 方程式。在動量方程式中，出現了一個新的應力項，它是脈動速度的二階相關，稱為雷諾應力。這個二階張量是新的未知量，必須通過一定的模型使整個方程組得到封閉（即使得方程式個數與未知量個數相等），才能求解。對於這個張量有很多不同的封閉模型，常見的如零階模型，一階模型和二階模型。目前二階模型，如 k-epsilon 模型和 k-omiga 模型，是工程中最為常見的亂流模型。

下面是常見的誤解：RANS 方程式不適用於有一個時變平均流的流場，因為這些方程式是『時間 - 平均』的。事實上，統計不穩定（在非靜態）流可以同等對待。這有時被稱為 URANS。沒有任何雷諾平均方法中的先天缺陷使得這個情況不能被處理，但是用於閉合（封閉）方程式的亂流模型必須要在均值中的變化發生的時間相對於包含大部分能量的亂流運動的時間尺度相對較大時才正確。

#### 大渦流模擬

大渦流模擬（Large eddy simulation, LES）是一種技術，其中更小的渦流被濾掉並用亞格點尺度模型來建模，而更大的能量的渦流則被模擬出來。該方法通常比 RANS 模型需要更細化的網格，但是比 DNS 解所需要的網格粗的多。

#### 分離渦流模擬

分離渦流模擬（Detached eddy simulation，DES) 是 RANS 模型的一個修改，其中模型在細到足夠使用 LES 計算的區域切換到亞格點尺度表述。接近固體邊界的區域和渦流長度尺度小於最大格點尺寸的區域被交給 RANS 模式的解。隨著渦流長度尺度超出格點尺寸，區域使用 LES 模式。所以格點解析度不像純 LES 要求那樣高，因此大大減少了計算開銷。雖然 DES 最初為 Spalart-Allmaras 模型而建立（Spalart 等人，1997 年），它可以用其它 RANS 模型實現（Strelets, 2001 年），通過適當的修改 RANS 模型中隱含或顯式地涉及到的長度尺度。所以雖然基於 Spalart-Allamaras 模型的 DES 像帶牆模型的 LES 一樣作用，基於其它模型的 DES（譬如兩方程式模型）行為就像混合 RANS-LES 模型。格點的生成比簡單的 RANS 或 LES 更為複雜因為要做 RANS-LES 切換。DES 是一種非區域途徑並會產生一個跨越解的 RANS 和 LES 區域的單一的光滑速度場。

### 求解算法

離散化完成後要進行的方程式系統的基本求解由很多數值線性代數的為人熟知的許多算法完成。可以使用靜態的迭代方法，譬如對稱高斯 - 賽得爾（Gauss-Seidel）或者漸進鬆弛（successive overrelaxation），或者克雷洛夫子空間法（Krylov subspaces）。在後者中，解的餘數在非線性算子的一個子空間的正交基上最小化。克雷洛夫子空間法通常和一個預條件算子（preconditioner）和一個內牛頓迭代一起使用。對於非線性問題不幸的是，正交基不能通過短循環來構造（相在一般的共軛梯度法中那樣），而必須存儲整個的序列的向量。

## 應用

### 套裝軟體

過去幾十年間，計算流體力學進展快速，除了應用在空氣動力學、渦輪、航海工程、航空載具、氣象學模擬、環境工程學等重要科學領域；在過去的幾年中，計算流體力學在建築設計中越來越重要**。**計算流體力學（和熱傳學）是以電腦計算納維爾 - 斯托克斯方程式等能量、動量方程式，以求得流動系統或熱系統的控制微分方程式 ，可透過有限元素法或有限體積法求解。這些技術廣泛用於工程設計或者分析和流體交互作用的設備，例如車輛，飛行器，泵，化學裝置和通風系統等等。該技術也用於計算機圖形學，因為動畫家不能像控制固態人物那樣簡單的處理流體，因而必須使用 CFD 技術結合交互工具，達成動畫影片或遊戲中的流體模擬。

有許多求解納維 - 斯托克斯方程式的商用軟體包括下面這些（按字母序排列）：
AVL/FIRE、CFX、Fluent、KIVA、NUMECA、Phoenics、和 STAR-CD。其它軟體包作為附件或 CFD 工具的補充產品使用。這些包括用於後置處理的 FieldView 和求解細節化學動力學的 KINetics。

### 在建築方面之應用

計算流體力學可用於分析建築物廢氣對環境的影響，預測建築物中的煙霧和火災風險、量化室內環境品質以及設計自然通風系統等方面，這對於建築性能模擬有重要幫助。建築性能模擬的目的是量化與建築物的設計、建造、營運和控制等各個方面，而計算流體力學正好提供具有科學根據的評估與計算。諸多建築能耗模擬軟體如 ESP-r、ENVI-met、TRNSYS 都有求解建築計算流體力學問題之功能。

以前，大多數與建築有關的流體力學問題，例如通風分析，風荷載，風環境等，都是使用風洞測試進行檢查的，但如今，所有這些測試都可以使用計算流體力學有效地完成。計算流體力學可以在相對較短的時間內解決所有上述問題，並且與較舊的方法（實驗方法）相比，它更經濟，更有效。計算流體力學可以用於預測建築物內部和周圍的空氣流動，熱傳遞和污染物輸送。 計算流體力學可以輕鬆更改不同組件的類型和位置，送風條件和系統控制時間表，從而檢查各種供暖通空調（HVAC）系統的有效性和效率。此外，計算流體力學通過建模和最佳化建築場地平面圖和室內布局，幫助制定被動的加熱 / 冷卻 / 通風策略（例如自然通風）。 在全球範圍內，建築部門約占總能耗的 40％，加強建築節能設計對於總體節能有巨大效益。

由於建築部門占總消耗量的巨大比例，因此有必要研究建築物的最佳配置以減少建築物的能源消耗。為了實現這一目標，計算流體力學可以發揮重要作用。建築性能模擬和 CFD 程序是重要的建築設計工具，可用於評估建築性能，包括熱舒適度，室內空氣品質機械系統效率和能耗。

建築物中的計算流體力學主要用於建築通風分析。

#### 通風分析

通過調節室內空氣參數（空氣溫度，相對濕度，空氣速度和空氣中的化學物質濃度）來進行建築物的通風研究，以找到室內溫度可接受的熱舒適環境。 計算流體力學可有效計算室內空氣流動相關參數，用以預測建築物的通風性能。

這些空氣參數對於設計舒適的室內以及室外環境中建築物的良好整合至關重要。這是因為適當的通風系統的設計和控制策略的開發需要有關以下參數的詳細資訊；

* 空氣流動
* 污染物擴散
* 溫度分布

上述資訊對於建築師設計建築結構與建築外殼也是有相當大的幫助。隨著電腦技術的進步，計算流體力學技術在建築物中得到了廣泛的成功應用。

最近，通風及其相關領域已成為風能工程的重要組成部分。可以使用風洞調查（實驗性地）或通過計算流體力學建模（理論上）來進行通風研究。在某些應用中，自然通風系統可能比強制通風系統更可取，因為它消除或減少了機械通風系統，從而既可提供風扇能量又可節省第一筆費用。在當今時代，由於開發了許多計算流體力學軟體和其他建築物性能模擬軟體，因此評估建築物中自然 / 強制通風系統的可能性變得更加容易。 計算流體力學分析比實驗方法非常有用，因為可以在後處理中找到變量之間的其他相關關係。通過實驗或數值獲得的數據可通過兩種方式使用：

1. 更好的用戶舒適度
2. 它提供了用作建築物熱量平衡計算輸入的數據

在選擇建築場地和位置時，風荷載起著重要作用。如果兩座建築物在某個位置並排存在並且有一定的間隙，那麼當通過該間隙吹動建築物兩端的風量為時，在第一瞬間分別繞過每座建築物的流量總和必須大於或等於圍繞單個建築物的末端以壓力損失為代價。

因此，將有壓力的建築物進入間隙，這將導致建築物側面的風荷載更高。當風吹過高層建築的表面時，前面的向下流動會產生渦流（如圖 1 所示）。靠近地面的反方向風速可能是參考風速的 140％。因此，如果在該區域中存在任何建築物，則該建築物可能會受到損壞（尤其是建築物的屋頂可能會受到嚴重損壞）。如果在建築物的建造初期考慮到風荷載的影響，就可以成功地防止對建築物的這種破壞。在建築的早期，所有這些風荷載效應都是通過風洞試驗確定的，但是今天所有這些試驗都可以通過 CFD 分析成功地進行。為建築物提供宜人的環境的重要性正在增加。經常要求建築師和風力工程師在建築物的形成階段和施工的規劃階段仔細檢查設計（方向，位置，位置以及周圍建築物之間的間隙）。 因此，通過計算流體力學分析，可以找到適合建築物方向，位置和局部最佳化問題（局部風速，對流係數等）。

## 計算流體力學知名專家

**Brian Spalding**
: Professor, Director, CHAM

**舒其望**
: Professor of Mathematics, Brown University

**Suhas V. Patankar**
: Professor, Department of Mechanical Engineering, University of Minnesota.

**Phillip Colella**
: Professor in Residence, Mechanical Engineering, UC Berkeley

**A David Gosman**
: Professor, Mechanical Engineering, Imperial College

**Thomas Hughes**
: Professor, Applied Mechanics Division, Department of Mechanical Engineering, Stanford

**Antony Jameson**
: Professor, Stanford

**John Kim**
: Professor, Mechanical and Aerospace Engineering, UCLA

**Xiaolin Zhong**
: Professor, Mechanical and Aerospace Engineering, UCLA

**Brian Launder**
: Professor, Mechanical Engineering, UMIST

**Bram van Leer**
: Professor, Aerospace Engineering, University of Michigan.

**Brian P. Leonard**
: Professor Emeritus, Mechanical Engineering, University of Akron

**Joel H. Ferziger （頁面存檔備份，存於網際網路檔案館）**
: Professor Emeritus, Mechanical Engineering, Stanford University

**Michael A Leschziner**
: Professor of Computational Aerodynamics, Department of Aeronautics, Imperial College

**Marcel Lesieur**
: Professor, Modelling and Numerical Simulation of Turbulence (MOST), Grenoble Institute of Mechanics

**Thierry Poinsot**
: Professor, Institut of Fluid Mechanics Toulouse(IMFT)/CERFACS

**Remy Abgrall**
: Professor of mathematics, University of Zurich

**Randall J. LeVeque**
: Professor of Applied Mathematics and Mathematics, University of Washington.

**Rainald Löhner**
: Professor, George Mason University.

**Parviz Moin**
: Professor of Mechanical Engineering and the Director of Center for Turbulence Research at Stanford/NASA Ames.

**K W Morton**
: Professor of Numerical Analysis, Director of ICFD, Oxford

**Ugo Piomelli**
: Associate Professor, Department of Mechanical Engineering, University of Maryland - College Park.

**Wolfgang Rodi**
: Prof. Dr., Intitut fur Hydromechanik, University of Karlsruhe

**Philip L. Roe**
: Professor, Aerospace Engineering, University of Michigan.

**陶文銓**
: 中國西安交通大學

**張涵信**
: 中國空氣動力研究與發展中心

**鄧小剛**
: 國防科學技術大學

**Tayfun E. Tezduyar**
: Professor in Engineering, Rice University

**David C. Wilcox**
: President of DCW Industries, Inc.

## 軟體

* CFD-ACE + 多重物理耦合之計算流體力學商用分析軟體，前身即為 CFDRC。現在版權為法國 ESI Group（頁面存檔備份，存於網際網路檔案館）集團擁有。
* OpenFOAM 現在 GPL 版權的前商用軟體。內部連結：OpenFOAM
* Palabos（頁面存檔備份，存於網際網路檔案館）現在 GPL 版權的前商用軟體
* NASA（頁面存檔備份，存於網際網路檔案館）提供 CFD 軟體給美國居民
* Fire Dynamics Simulator 消防工程應用軟體
* GERRIS（頁面存檔備份，存於網際網路檔案館） GPL 版權不可壓縮流體求解器。內部連結：Gerris.
* 管道系統液體流有一個功能完備的演示，它使用樣品流體來做評估，可以下載使用
* Atmos
* Stoner 流水線模擬器（頁面存檔備份，存於網際網路檔案館）
* 流水線工作室（頁面存檔備份，存於網際網路檔案館）包括一個評估版的下載（~ 132 M）
* Olga 2000（頁面存檔備份，存於網際網路檔案館）
* CFD Studio（頁面存檔備份，存於網際網路檔案館）學習 CFD 問題的教學軟體
* Hysys（頁面存檔備份，存於網際網路檔案館）
* Comet（頁面存檔備份，存於網際網路檔案館）商用有限體方法
* Channelflow（頁面存檔備份，存於網際網路檔案館） Channelflow 採用 "譜方法"（GPL）
* Net-Pipe
* NEKTON "譜元素法（SEM）"
* Exa Powerflow "格波爾茲曼方法"
* Enzo（頁面存檔備份，存於網際網路檔案館）是開源宇宙模擬代碼，採用自適應網格。
* FLASH（頁面存檔備份，存於網際網路檔案館）對非商業應用免費，使用自適應網格，對於天體物理流可壓縮求解器
* STAR（頁面存檔備份，存於網際網路檔案館）工業 CAD - 嵌入流模擬器
* FLUENT 用於一大類自由曲面流應用的 CFD 代碼
* FLOW-3D（頁面存檔備份，存於網際網路檔案館）特別適用於自由曲面流應用的 CFD 代碼
* Intelligent Light（頁面存檔備份，存於網際網路檔案館） - FieldView 的製作器
* Tecplot（頁面存檔備份，存於網際網路檔案館） CFD 後置處理，繪製，圖形和可視化軟體
* COSILAB - 用於層流和亂流中的化學的軟體和 CFD 插件
* Reaction Design（頁面存檔備份，存於網際網路檔案館） - 用於化學運動學的軟體和 CFD 插件
* Flotherm 商用 CFD 軟體，強調電子屏障，正交網格
* COMSOL Multiphysics（也稱 FEMLAB）商用有限元包，用於多物理包括 CFD
* CFX Ansys 的 CFD - 代碼
* TAU（頁面存檔備份，存於網際網路檔案館）無結構有限體 CFD - 代碼，來自 DLR，用於飛機和直升機
* FLOWer（頁面存檔備份，存於網際網路檔案館）結構化有限體 CFD - 代碼，來自 DLR，用於飛機和直升機
* Moldex3D（頁面存檔備份，存於網際網路檔案館）商用 CAE 軟體，用於塑膠射出成形
* Pointwise（頁面存檔備份，存於網際網路檔案館） - Gridgen 的製作軟體
* Metacomp Technologies, Inc.（頁面存檔備份，存於網際網路檔案館） - CFD++ 的製作軟體
* GridPro（頁面存檔備份，存於網際網路檔案館） - 高效的計算流體力學網格生成軟體
* FreeFem++ - 免費的有限元素法計算軟體

## 參看

* 流體力學
* 有限元分析

## 外部連結

* https://web.archive.org/web/20070921041844/http://www.cfdnet.ca/
* http://www.cfd-online.com/（頁面存檔備份，存於網際網路檔案館）
* http://www.cfdreview.com/（頁面存檔備份，存於網際網路檔案館）
* Usenet 關於 CFD 的討論組
* 格波爾茲曼方法
* FetchCFD（頁面存檔備份，存於網際網路檔案館） 展示和探索工程模擬.