有關類神經網路與遺傳演算法的介紹請見本文附錄 A 與附錄 B。
本章針對前述基本不震盪相關算則,逐一介紹 ENO 算則、WENO 算 則、差分式 WENO 算則,並以差分式 WENO 算則為基礎分別說明 Mapped WENO 法、修正平滑指示器 WENO 法等算則。
2-1 ENO 算則
Harten et al. (1983)提出了 ENO (essentially non-oscillatory)算則,
ENO 算則是均勻高階,且基本不震盪的解析包含不連續的流場。ENO 算則設計的特點在尋求最平滑的計算元進行高階差分,故可避免在極 值點附近降階以及在不連續點附近產生非物理性的大震盪現象。
2-1-1 一維數值通量的建構與近似模擬
假設一維格點分佈如下:
(2-1) 定義單元(cell),單元中心(cell centers),單元大小(cell size)如下:
, , ,
, (2-2) 給定單元內的平均值函數為 f(x):
(2-3)
求解一多項式 ,其最多為 k-1 階,使其滿足
, , (2-4) 求解上述問題首先定義原函數(primitive function) F(x) 如下:
∞ (2-5)
∞
∞
, (2-10)
上式顯示 p(x) 就是所尋找的函數。
一般而言,前述重建問題大多用來計算單元邊界點的重建量,再 以此重建量計算單元邊界位置的通量,此計算如下:
,
, (2-11) 又由於前述由單元平均量 映射至單元邊界點的重建量 及
的過程是線性的,故存在常係數 及 使得
, (2-12) 其 中 及 與計算元內包含的左邊單元數 r、內差階數 k 與 單元大小 有關,與函數值 f 無關。上式在相同位置 得到
± 兩個不同的重建量,分別來自於單元 與 。前述兩重建量相同,
依據對稱的概念得到下列關係式:
(2-13) 總結以上的推導,另一組常數 重新構造單元邊界上 的
(2-14) 以一維簡單雙曲線方程式為例
(2-15) 假設為均勻格網,則該方程式在空間離散為
(2-16) 其中 與 為數值通量。若
(2-17) 若存在函數 h(x) 使得
(2-18) 則
可寫作
(2-19) 故若
(2-20)
為 k 階精度算則。
2-1-2 各計算元的數值通量
參照(2-20)式,各計算元之 以三階精度近似函數 h(x),r 為計算元內,以本身 為基準,所採用的左邊單元數目,以多項式 表示為
ℎ (2-21)
將上式代入(2-18)式,可推得各計算元之 、 、 ;依據採用 不同的計算元,所得到不同的三階精度多項式表示如下:
(2-22) 上述各多項式近似位於 i+1/2 的通量 ,如圖 2- 1 所示可得
(2-23)
圖 2- 1 各計算元 i+1/2 處三階精度通量示意圖
求通量 僅需將所有計算元內單元皆向左移動一格計算,將 (3-23)式與 做泰勒展開可表示為
(2-24)
通式為
, (2-25)
此三階的誤差 在之後 WENO 算則中,定義平滑指示器與決 定權重的部份佔了極為重要的角色。此外空間離散項亦會由於
與 選擇計算元的不同,而有不同的精度:
傳統的二階算則,如 Lax-Wendroff 算則及 Beam-Warming 算則,
在不連續點附近產生非物理性的震盪,主要是採用固定的計算元進行
差分,ENO 算則設計則選取最平滑計算元的進行差分,其計算元的 選取是隨著流場結構改變,這些改變主要是使數值差分時避開不連續 點。
Shu and Osher (1988, 1989)對原始之 ENO 算則做了些修正,在此 新的 ENO 算則中,其建構數值通量的方式避免採用單元平均值來重 建函數,而改以直接對通量做類似之基本不振盪差值來求取數值通量。
另外他們也捨棄了原 ENO 算則中的 Lax-Wendroff 形式時間離散法,
改 用 時 間 與 空 間 分 開 考 慮 之 半 離 散 化 系 統 , 另 行 發 展 了 TVD Runge-Kutta 形式之時間離散法,如此改善了原 ENO 算則不易寫成 程式及不易推展到多維問題之缺點,也加強了 ENO 算則的效率。
在實際應用上,除前述的 ENO 差分方式外,一般會加入通量分 離(flux splitting)的概念。物理通量正、負的分離方式,有許多分離可 供選擇,數值通量則定義如下:
(2-27) K 為一分離函數,有 Godunov flux 及 Engquist-Osher flux、Lax
-Friedrich 等方法可供選擇,在此介紹總體或局部 Lax-Friedrich 之通 量分離法來求解流場,以(2-15)式為例,總體 Lax-Friedrich 之通量分 離法如下:
(2-28)
其中 ,代表所有計算網格內的最大特徵值。
局部 Lax-Friedrich 之通量分離法為:
(2-29)
其中 ,代表局部計算網格內的最大特徵值。
2-2 WENO 算則
WENO 算則的基本理念:取代 ENO 算則僅選取一組計算元來 近似數值通量的作法,而將所有需要研判平滑度的計算元全部組合起 來,並賦予每組計算元一個加權係數,最後再以外凸組合(convex combination)的方式來近似數值通量:
(2-30)
為了穩定性與一致性,權重 頇滿足
, (2-31)
2-2-1 上風中央算則與理想權重
與 2-1-2 節之多項式的推導相同,上風中央算則(Upstream central scheme)源自於實際通量 h(x)五階精度的多項式近似值:
ℎ 將上式代入(2-18)式,可展開積分式為
) (2-32) 利用計算元內之五個單元 , 、
、 、 、 ,可得五組方程式聯立求解 ,再近似 位於 i+1/2 的通量 ,如圖 2- 2 所示可得
(2-33)
圖 2- 2 上風中央算則之近似 i+1/2 通量示意圖 同理,在 處,通量 為
(2-34) 因此將(2-33)式與(2-34)式代入(2-17)式,可得五階精度空間離散 的上風中央算則:
(2-35)
而在平滑區域中,數值通量近似解 給定一組權重以符合上 風中央算則所得的線性組合,藉以達到高階準確度的要求。因此將式 (2-23)以式(2-30)的形式組合成式(2-33),整合得下式(2-36):
(2-36) 因此可得到一組常數: 、 、 ,此又被 稱為理想權重(ideal weights),在平滑區能滿足五階的精度:
(2-37)
2-2-2 平滑指示器
如果區域內有不連續面的存在,在組合數值通量中,將降低含 有不連續面的計算元的權重值,以減少數值震盪的發生與影響;而 如何去衡量計算元內的平滑程度,來做權重值的調整與修正,在此
利用定義之平滑指示器(Jiang and Shu 1996):
(2-38)
將(2-21)式代入,可得
(2-39) 再代入(2-22)式之 、 ,可得各計算元代表之平滑指示器為
(2-40)
而各計算元權重的修正則為
, 其中 (2-41) 為一微小數值,以限制 值有其最大上限值,而不會因 時, 因為無限大值超過程式所能定義數值的最大邊界,
而造成程式的運算中止。
2-2-3 WENO5 算則
與 ENO 算則相同,在此導入通量分離的概念將物理通量分離成 正、負兩部分,定義出以三組計算元所組合而成的 WENO5 算則 (Jiang and Shu 1996)。以下為 WENO5-LLF-S 算則的說明:
空間離散採用 WENO5-LLF-S 算則, 則數值通量正的部分
2-3 差分式 WENO 算則
差分式算則將數值通量分為一階及高階通量,各種滿足熵條件 的一階算則多可直接應用。差分式算則與 Shu 等所發展的算則主要 差異是以通量差值進行分離,原型式則是以通量進行分離。差分式 算則如下:
(2-48)
其中 為一階數值通量, 為高階數值通量。有許多一階算
則可供選擇為一階數值通量,如前節所介紹之 Godunov flux 及 Engquist-Osher flux、Roe flux、Lax-Friedrich flux 等算則。之後在第 四章會以一維淺水波方程式為例,對差分式 WENO 算則的計算流程,
做更詳細的介紹。
2-4 Mapped WENO 算則
Henrick et al. (2005)觀察到了原始 WENO 算則中計算非線性權重 所使用的平滑指示器在某些特定的臨界點時可能會失去精確性,因此 他們提出了 Mapped WENO 算則,此一算則改善了原始 WENO 算則 在臨界點處的精確度,Mapped WENO 算則主要以 Mapped 函數來計 算原始 WENO 算則中非線性權重:
,
(2-49)其中 ,為原始 WENO 算則計算所得的權重, 則為 上述之理想權重值。此一 Mapped 函數為單調漸增函數,具有限斜率 及下列特性:
, , , , (2-50) 調整後的權重可由下式獲得:
,
(2-51) 而經 Mapped 函數轉換所得之 值與原始值的相關位置比較如 圖 2- 3 所示:圖 2- 3 原始權重經 Mapped 函數轉換值圖 (摘自 Henrick et al. 2005)
根據 Henrick et al. (2005)分析的結果,此一算則不但可以改善平 滑區域的精度,同時受到微小參數值 ε的影響也大為減少,收斂性 則改善許多。
2-5 修正平滑指示器 WENO 算則
非線性權重與平滑指示器在震波附近之解析度上扮演很重要的 角色,同時兩者均直接影響震波前後之震盪與收斂性。Zhang and Shu (2007) 針 對 高 階 WENO5 算 則 提 出 了 修 正 平 滑 指 示 器 (modified smoothness indicator)的觀念,依據他們測詴的結果顯示,在不受邊界 條件之影響下的一維與二維強震波無黏性穩態流場問題中,此一修正 後的算則可以改進其收斂性。
將(3-40)式採泰勒級數展開:
(2-52)
可將平滑指示器分為兩部份:
, 含有一次微分與三次微分項
, 含二次微分項 (2-53) 在極劇的高強度震波傳遞中,以圖 2- 4 的階梯函數為例,圖 2- 5
為階梯函數的一次微分與二次微分項的大小分佈,可發現越靠近震波 的中心點 C 處,一次微分項越大而二次微分項則越小趨近於零,因此 若加入二次微分項做為平滑度的判別,對於震波中心兩鄰近點 B、D 會增大其平滑度,而影響震波傳遞在計算上的收歛性。
在原始平滑指示器中, 項的大小主決於一次微分項,而 項 則為二次微分項,綜合以上的結論。Zhang and Shu (2007)建議在穩定 的震波區域捨棄 項使用修正平滑指示器。原始 WENO5 算則之平 滑指示器(2-44)式與(2-47)式,經修正後表示如下:
, , (2-54) ,
同理,修正平滑指示器亦適用於差分式 WENO5 算則。
圖 2- 6 為 Zhang and Shu (2007)中之ㄧ維駐波案例,所使用統御 方程式為一維尤拉方程式,數值求解使用 WENO 算則,其流程與計 算類似於一維淺水波方程式,此案例相關的設定參數與起始條件詳 細請見以上文獻。圖 2- 7 為此案例震波中心與鄰近處(2-53)式之 、 與 值,可明顯發現在捨去 項後,計算元之間的相對 比例較原來為大,理論會有更好的收歛性。
圖 2- 4 階梯函數圖
圖 2- 5 階梯函數的一次微分與二次微分項圖
圖 2- 6 ㄧ維尤拉方程式駐波案例圖
圖 2- 7 駐波案例之 、 與合值分佈圖 (以上四圖皆摘自 Zhang and Shu 2007)