初步解讀mfix中的stiff chemistry solver(剛性化學求解器)


在mfix中添加化學反應時,有一個可以勾選的選項叫做stiff chemistry solver.
一般來說我都是勾選的,但是一直以來不太清楚到底能不能勾選?為什么要勾選?它代表着什么意義?

mfix user guide里面說的不清不楚,而且太簡略了。

后來偶然發現mfix中的化學反應其實是借鑒ansys的chemkin的。而且fluent中也有一個相同的stiff chemistry solver選項。那就好辦了,畢竟fluent是商業軟件,說明文檔要詳細得多。

獲取stiff chemistry solver相關信息的來源可能有4個:

  1. mfix user guide中的少量敘述
  2. fluent user guide中的敘述
  3. fluent theory guide中的敘述
  4. chemkin中的敘述

注: 我用的fluent 19.0版本

fluent user guide中關於stiff chemistry 的敘述

先在fluent user guide文檔中搜索下“stiff chemistry”
相關的很多,撿主要的來說。

首先是1355頁提到了stiff chemistry solver

在這里插入圖片描述這一節(14.1)的大標題是在講體積化學反應,我理解也就是同相反應

從這里可以看出stiff chemistry solver是 finite-rate chemistry(有限速率化學)模型中的一種求解器,fluent中 除了它,並列的還有CHEMKIN-CFD。而且只有當使用 有限速率化學 或者eddy-dissipation concent TCL 模型的時候,才能用剛性化學

1833頁的14.1.8.1. Stability and Convergence in Reacting Flows

也就是關於有反應流動的穩定性和收斂性的敘述

在這里插入圖片描述這段說的很好,需要細看一下。有這么幾個關鍵信息

  1. 帶反應流動本身是很難收斂的。原因在於:反應會產生產物,質量就難以守恆;會產生大量的熱,溫度就難以守恆;會放出氣體加速流動,速度就難以守恆。這就要求質量、動量守恆與組分輸運之間有很強的耦合。
  2. fluent怎么解決的呢?靠一個two-step solution(只用於穩態,我們忽略)的機制,以及靠松弛化。
  3. 其次,即使去除這些物理上的因素,在數學上帶反應流動也是很難守恆的。其根源在於當反應速率比較快的時候(與擴散、對流時間尺度相比),組分輸運方程是一個“數值剛性”的系統。(我的理解:即很小的誤差會不斷放大)。於是我們就需要使用剛性化學反應求解器了。

1384頁的 14.1.8.5. Solution of Stiff Chemistry Systems

在這里插入圖片描述
在這里插入圖片描述
這就是承接上面說的用stiff chemistry solver解決數值剛性問題的方案
它主要說了這么幾件事

  1. 對於穩態流動,壓力基求解器,使用stiff chemistry solver,化學反應速率其實是在一段時間內求平均的。也就是那個公式所說的內容。這段時間的選取,要是很小,反應速率接近現實,但是會發散,要是很大,不發散但是就沒有反應了。其選取與擴散、流動的時間尺度有關。因為我們要做的是瞬態,這里就不細說了。
  2. ISAT算法。它這里沒有細講,但是它說對於顆粒反應,這是極其重要的。具體要看theory guide。
  3. 假如用密度基隱式求解器。也可以用stiff chemistry,但是要注意給定以下幾點:
  • 溫度的增長率不能太高:要給一個上限,一般是0.2
  • 溫度時間步的減少率溫度變化造成的時間步的減少不能太快,如果太快就立即限制當地CFL數,一般給定0.25
  • 最大化學時間步比。反應的時間尺度(即化學反應Jacobian矩陣的特征值)不能太大。否則無法維持該矩陣的良性。如果發生就立即限制當地CFL數。一般為0.9

綜合來看,這三個舉措都是為了防止溫度變化過快導致發散而實施的。可見限制溫度的變化是有反應流動防止發散的關鍵之一

上面所敘述的都在14.1 體積化學反應里的,也就是同相反應,下面是異相反應

1789頁關於異相反應stiff chemistry的敘述

在這里插入圖片描述
可以發現至少三點:

  1. 異相反應的剛性化學求解器也是用來幫助收斂的
  2. ANSYS利用分步的算法來植入剛性化學求解器:即先計算無反應的流動,然后在時間步的最后一次性植入所有化學反應。(這與MFIX是一樣的)
  3. 剛性化學反應求解器的容差可以給定。

總結

  1. stiff chemistry是用來防止有反應流動發散的一個機制
  2. 發散的原因,以及stiff chemistry 作用的對象,是減小化學反應Jacobian矩陣(推測就是組分輸運方程的Jacobian矩陣)的數值剛性
  3. stiff chemistry solver的作用機制推測大概是在化學矩陣剛性較大的時候,通過強行控制一些參數,比如CFL數,時間步,來強制防止不發散。

先說這么多,下期繼續。下期觀察theory guide


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM