流體力學中為什麼要引入渦量?
vorticity/vortex
感謝 @J Wiki 邀請。
首先我們從題主給出的兩個詞:vorticity(渦量)和vortex(漩渦)開始談起。
漩渦是流體運動里非常常見的現象。疑似穿越者達芬奇就曾經畫過一系列關於漩渦的畫,從現代人的觀點來看基本上八九不離十,甚至下圖中第二幅畫把馬蹄渦和尾跡渦都畫出來了!但是那個時候是15世紀,離歐拉出生都還有100多年,甚至連伽利略和牛頓都還不知道在哪呢......細思恐極......
扯遠了,回到正題。
實際上從流體力學成為一門真正的科學開始,對漩渦的研究就沒有停止過。但是,這項研究一上來就碰到了一個嚴重的問題:什麼是漩渦?
看起來這個問題好像很無厘頭:繞著一個點打轉的不就是漩渦么?定性上來看,這麼說的確沒錯,但是一旦要變成定量科學這就不那麼容易了。用比較直白的語言來說就是:能否找到一個物理量,通過它的值就能分辨出哪裡有漩渦?
最容易被想到的就是渦量,數學定義為速度場的旋度。渦量的好處是簡單粗暴,做個旋度就能算,微積分及格了的同學沒一個不會的,so easy!而且在「肉眼可見漩渦「的地方,渦量的大小總是比周圍大得多。看起來好像問題解決了。
嘿嘿,沒那麼容易。渦量有一個致命的問題:在沒有漩渦的地方,渦量也未必是小量!比如下圖中,在邊界層里明明沒有漩渦,但是渦量卻很大。(邊界層哭訴:我冤啊!)原因在於,邊界層里起主導的是剪切而不是旋轉,而渦量對這兩者卻一視同仁。
所以,現代的流體力學裡一般不用渦量來識別漩渦,而是使用一些其他物理量,例如lamda-2或者q-criterion,其共同點是將剪切的作用盡量給剔除出去,只剩下旋轉部分來標示漩渦。
先寫到這裡,之後再補充。
(你們還相信我這種棄坑帝會回來補充么?)
順便指出一下, @張大鵬 關於CFD中怎麼用渦量的說法不完善。
真正具有一定實用性的有關方法是渦量-流函數法,但是只能在二維里使用,推廣到三維相當困難。
其他使用渦量方程的計算都無法避免渦量-速度耦合問題,因為渦量輸運方程里很難把速度項消去。
大家知道渦量可以認為是速度空間梯度的函數,可以認為是某種意義上的「導數」。那麼反過來,已知渦量反求速度只能全場積分。這樣一來不僅計算量極大,而且嚴重限制了計算程序的並行化,所以幾乎沒有實際計算使用渦量方程。
還是那句老話,想得到好處總是要付出代價的,CFD沒有免費的午餐。你可以用渦量解決壓力-速度耦合,但是付出的代價是渦量又跟速度耦合了。反正我個人覺得這樣的交易一點都不划算。
渦量和散度可以分別從不同的方面描述速度矢量場的特性。
散度反映的是速度場的壓縮特性,而渦量體現的則是無源的旋度特性。
在一些情況,比如湍流(turbulence),伴隨湍流出現的eddys用旋度來描述就顯得特別直觀。隨便找了個KH不穩定性的模擬,其中有渦量演化的movie:Home page for David Fritts。
如果我們仔細看不可壓縮流體的渦量的演化方程:
我們會發現它和磁場演化方程很像:
因此,旋度的演化在某種程度上可以追蹤磁場的演化。
有了 vorticity 之後,我們可以將流動現象分成有旋和無旋這兩類。對於無旋流動,計算求解可以大大簡化。
無旋流動我們可以定義 velocity potential,把對於速度這個矢量的求解變成對標量的求解。而velocity potential 是滿足Laplace equation的,這又是一個線性方程。因此對於無旋流動我們可以求解幾種簡單的流動現象,如 uniform flow, source flow, doublet flow, vortex flow,並把它們線性疊加以獲得更複雜的流動現象的解。下圖介紹的就是通過疊加 uniform flow 和 doublet flow 以獲得 nonlifting flow over cylinder 的解。對於有旋流動,這就辦不到了。
在空氣動力學裡,vorticity 和升力也是密不可分的,沒有 vorticity 就不會有升力。因此,想要模擬一個經過翼型的流動,就必須用到有 vorticity 的 vortex flow。
希望有幫助,謝謝。圖片均選自 Anderson, J. D. Fundamentals of aerodynamics, 2001.
簡言之,渦量是流體的本質特徵。
流體力學中有渦量,就好像剛體力學中有角速度一樣,是運動的本質決定的,不是為了某種便利或者方法而人為引入的。
從流體的本質談起,流體固體的區別在於靜止狀態下能否承受剪切。固體微團在切應力可以發生形變,最終保持靜止。而靜止的流體微團在切應力下必然會運動。一旦切應力導致了力矩,流體微團就會旋轉,於是有了渦量。
這說明了兩點:
1 流體的本質決定了流體力學中有渦量
2 渦量對應於流體微團自身的旋轉,是局部的運動。(這點區分於漩渦)
關於渦量和漩渦,很多教材都會舉三個二維的例子:
1 剛體旋轉,, 有渦旋,處處有渦量
2 點渦, ,有漩渦,原點之外處處渦量為零
3 均勻剪切流, ,無漩渦,處處有渦量
上圖(b)定性地說明了,點渦中流體微團自身並沒有旋轉。(流體微團應該有變形,圖中略去此細節)。
上圖(a)說明在第3個例子中流體微團是有旋轉的。但並不是所有的剪切都導致旋轉,比如圖(b),對比左右圖形的對角線可以看出流體微團沒有偏轉。
三個例子說明渦量和漩渦沒有必然的聯繫。說1,2中有漩渦,是因為流體微團的軌跡是一個圓周。而上面說了,渦量是流體微團自身的旋轉,和流體微團的軌跡自然沒有必然聯繫。
至於渦量和剪切,剪切是渦量的直接成因,又渦量必有剪切,反之未必。
個人水平有限,以上的回答難免有粗淺之處,望指正。
圖片來自《Pysical Fluid Dynamics》2nd, D,J,Tritton,
我覺得都沒說到根上,CFD只是流力一方面的內容,而不是全部。
之所以要引入渦,是因為它很重要(廢話(?_?)),也很好用。
是因為幾個方面:
1. 渦波是幾個特徵的波之一,玩流力都知道怎麼推導聲波的方程吧,在此過程中弱化一些假設,把線化小擾動做特徵分解你就會發現出來聲波(速度是u+a, u-a),渦波和熵波(速度是u),也就是說它是擾動傳播的一種重要形式,所以哪都有它。
2. 因為這玩意兒是隨速度場傳播的(不記源項的話),所以它是高度局域化的,也就是說,大多數流場里,它會集中在某些區域,比如邊界層,尾跡啥的,邊界層的渦量比邊界層外高好幾個量級,而且渦波不會像壓力波一樣到處亂跑,這也導致了它很好用的一方面(在cfd還不發達的年代),那就是可以對流場分區進行集總參數形式的簡單描述。比如機翼流場渦量不都在邊界層么?經典的好多機翼理論和簡單計算方法就在翼型邊上布置點渦或者片渦就能把升力動導啥的算個七七八八,因為是局域化的,所以計算量還挺小。
3,因為這東西是局部化的,所以很多情況下有好大一塊流場沒有渦,那麼由於無旋場必有勢函數,方程從求速度場3個量變成求1個量,雖然代價是方程階數提高,但是(以前的)人們還是覺得挺爽的 。而且還有一些重要的結論,比如Crocco方程。當然,不可壓縮又無旋就更爽了。
4,非定常問題里渦非常重要,比如聲學問題(可壓縮非定常問題)就有個渦聲比擬,其實也是集總參數的路子,把全場的聲問題用局部的渦相關的源項來描述,簡單多了。
5,湍流里渦也是能量動量和物質傳遞的重要機制,一些不穩定性用渦對或者渦層的自誘導來解釋也很容易(卡門渦街,剪切層)。
6,實驗里好觀察。
所以總的來說,渦量是擾動傳播的基本形式,流場分布中又存在局域性,在很多問題(其實是很多教科書教的內容)里能有助於簡化問題的描述,所以流體力學裡引入渦量挺重要的。
其實關鍵不在於這玩意兒有啥物理意義,而在於引入渦可以簡化對教科書里相關內容的描述(當然能夠簡化是由於其基礎性和局域性),因為大家數學不好,包括老師也是,整太複雜了會導致講半天講不清。
下面是吐槽時間。渦其實很不好用。
原因前面幾個哥們也講了一些
1,計算方面,渦量方程和速度有耦合,根兒上在於這渦量擾動是隨速度傳播的,然後速度又得靠渦量全場積分算出來,所以很麻煩。邊界條件還是個問題。
2,物理方面,渦量不區分旋轉和剪切,所以對旋轉得引入客觀(理性力學意義上的客觀)的旋轉量的表示方法,比如Q2之類的,挺麻煩的。
3,可壓流里渦量也不好用,源項多了,形式變複雜了,其實我感覺可壓流里渦量/密度的動力學方程形式還更簡單些。
4,用渦量處理問題往往免不了近似,什麼情況下能用,導致的誤差有多少,對於新問題估計起來很麻煩???
從計算的角度來說,以渦量作為變量的方程中,壓力項不再出現,因此在計算過程中,關於壓力的各種麻煩事情都消失了,為計算帶來了極大的方便。
然而,引入渦量之後,關於渦量的邊界條件提法變成了另一個很麻煩的事情,當然這是後話了。
「漩渦」是流體(空氣或者水等等等等)流動過程中非常常見的自然現象所以「流體力學」必須對其加以研究。而引入「渦量」這個數學概念為的是建立「空間流量場方程組」或者建立描述流體旋動現象的物理力學方程組的需要。「渦量」這個數學概念的微分形式就是「旋度」而其空間積分描述的就是宏觀中的「漩渦」。
引用一句老先生的話:流體的本質是渦,因為流體不經搓,一搓就搓出了渦。
其實漩渦的本質就是流體的分離。
而目前CFD工業應用中最常用的1方程湍流模型比如SA,2方程的K-epsilon類型的、以及K-omega及後來的SST,或者雷諾應力模型,他們模擬流場的解析度/精度,只能達到「分離」級,換句話說就是只能模擬到分離。
知道kolmogorov能量耗散理論的人都知道,湍流會產生大渦,大渦攜帶湍流動能,然後大渦變成小渦,小渦的動能最後轉換成熱能,最後消失。這時,如果要讓數值模擬的解析度達到大渦的話,我們就需要對RANS(雷諾平均NS方程)進行改變,讓其能展示流場的湍流脈動。比如LES、DES、SAS模型。如果你想讓解析度達到小渦的話,就需要只用DNS。
另一方面,渦量,實際上是勢流概念裡面的。很久之前,在空氣動力學應用非常廣泛,比如求機翼的升力(如可夫斯基定理)。
之所以引是因為要用渦量來描述渦旋的方向和強度,你這個問題有點像物理中為什麼引用矢量是一個道理。
實際上從流體力學成為一門真正的科學開始,對漩渦的研究就沒有停止過
因為直觀,但數學上不是必須,簡單情況下,你可以簡單只用速度場表達你想要的一切。
人們在實驗還是計算中,都希望去解釋和描述所得到的流場,而許多流動都可以被描述成幾個渦的作用,這樣做非常直觀,溝通起來非常高效。
一種描述矢量場的方法,由數學中來。由於物理意義不明顯,而且對方程簡化效果也不大好,一般現在CFD中幾乎見不到了。
(本人只講這麼多。)
研究場就要找一種研究方法入手,不同的東西有不同的研究方法和描述。對於場來講,速度,位移都不如用漩渦來的方便
Foundation fluid mechanical 裡面不經常提到這個量
壓強動量通量是cfd求解必須的量,渦量不是必須的量
不是很贊同排名第一的答案,壓強動量通量是cfd求解必須的量,渦量不是必須的量。
你不引入渦量也是可以的。推薦閱讀: