COMSOL 中空間與時間積分的方法介紹附COMSOL Multiphysics工程實踐與理論仿真

積分是數學模型中最重要的功能之一,特別是對數值仿真而言。例如,偏微分方程組 (PDEs) 就是由積分平衡方程派生而來。當需要對偏微分方程進行數值求解時,積分也將發揮非常重要的作用。本文介紹了 COMSOL 軟件中可用的積分方法以及如何使用。

積分的重要性

COMSOL 使用了有限元方法,它將控制 PDE 轉化為積分方程,換言之,就是弱形式。如果仔細觀察一下 COMSOL 軟件,您可能會發現許多邊界條件都是由積分公式表示,例如總熱通量或懸浮電位。積分在后處理中也非常重要,因為 COMSOL 提供了許多基于積分的派生值,比如電能、流速或總熱通量。當然,用戶還可以根據自己的方法來使用積分,本文我們將具體介紹如何實現。

利用派生值求積分

積分的一般形式如下:

COMSOL 中空間與時間積分的方法介紹附COMSOL Multiphysics工程實踐與理論仿真的圖1

其中,COMSOL 中空間與時間積分的方法介紹附COMSOL Multiphysics工程實踐與理論仿真的圖2 是時間間隔、COMSOL 中空間與時間積分的方法介紹附COMSOL Multiphysics工程實踐與理論仿真的圖3 是一個空間域,而 COMSOL 中空間與時間積分的方法介紹附COMSOL Multiphysics工程實踐與理論仿真的圖4 則是因變量 COMSOL 中空間與時間積分的方法介紹附COMSOL Multiphysics工程實踐與理論仿真的圖5 的任意一個表達式。表達式可以包括相對空間與時間的派生值,或任何其他派生值。

通過功能區(在非 Windows? 操作系統中則為‘模型開發器’)‘結果’部分的“派生值”,可以最便捷地訪問積分選項。

COMSOL 中空間與時間積分的方法介紹附COMSOL Multiphysics工程實踐與理論仿真的圖6

如何將體、面或線積分增加作為派生值。

您可以通過選定對應的數據集來引用任何可用的解。表達式框為被積函數,并支持因變量或派生變量。在瞬態仿真中,會計算每一個時間步長的空間積分?;蛘?,設定窗口提供了‘數據系列操作’,可在此為時域選擇積分選項。這將得到空間和時間的積分。

COMSOL 中空間與時間積分的方法介紹附COMSOL Multiphysics工程實踐與理論仿真的圖7

面積分設定示例,并通過‘數據系列操作’增加了額外的時間積分。

平均是另一個與積分相關的派生值。它等于積分結果除以所考察域的體積、面積或長度。平均中的‘數據系列操作’還可以將結果除以時間范圍。派生值非常有用,但由于它們僅能用于后處理,所以無法處理所有的積分類型;因此 COMSOL還提供了更加強大和靈活的積分工具。我們將通過下方的模型示例演示這些方法。

傳熱示例模型中的空間和時間積分

我們將介紹一個簡單的傳熱模型,即 (x, y) 二維平面內的單位正方形鋁。上側和右側固定為室溫 (293.15 K),左側和下側規定有 COMSOL 中空間與時間積分的方法介紹附COMSOL Multiphysics工程實踐與理論仿真的圖8 的‘廣義流入熱通量’。下圖顯示了 100s 后的穩態解和瞬態解。

COMSOL 中空間與時間積分的方法介紹附COMSOL Multiphysics工程實踐與理論仿真的圖9

穩態解,點擊圖片放大。100s 后的瞬態解,點擊圖片放大。

利用組件耦合算子求空間積分

舉例來說,當一個表達式中綜合了幾個積分,或在計算中需要積分,或需要一組路徑積分時,就需要組件耦合算子??梢栽趯M件的定義部分中定義組件耦合算子。在這個階段,我們尚未計算這些算子,只是確定了它們的名稱和對象選擇。

COMSOL 中空間與時間積分的方法介紹附COMSOL Multiphysics工程實踐與理論仿真的圖10

如何增加組件耦合算子方便后續使用。

在示例中,我們首先希望計算恒定溫度下的空間積分,這可以通過以下公式計算:

COMSOL 中空間與時間積分的方法介紹附COMSOL Multiphysics工程實踐與理論仿真的圖11

在 COMSOL 軟件中,我們使用了一個缺省名稱為 intop1 的積分算子。

COMSOL 中空間與時間積分的方法介紹附COMSOL Multiphysics工程實踐與理論仿真的圖12

積分算子設定窗口。如何計算積分算子。

下一步,我們將演示如何在模型中使用積分算子。例如,我們希望計算將平均溫度相對室溫上升 10 K,即達到 303.15 K,需要施加多少熱能。首先,我們需要計算目標溫度與實際平均溫度之差。平均溫度可通過對 COMSOL 中空間與時間積分的方法介紹附COMSOL Multiphysics工程實踐與理論仿真的圖13 的積分除以對 COMSOL 中空間與時間積分的方法介紹附COMSOL Multiphysics工程實踐與理論仿真的圖14 的積分得到,對常數 1 的積分可以得到域的面積。幸運的是,在 COMSOL 中這類計算可以輕松地通過缺省名稱為 aveop1 的平均算子得到。(注意域內的平均與我們的積分示例相同,因為域為單位面積。) 對應的溫差可通過如下公式計算:

COMSOL 中空間與時間積分的方法介紹附COMSOL Multiphysics工程實踐與理論仿真的圖15

接下來,我們需要找到左側和下方邊界的‘廣義熱通量’,以便滿足所需的平均溫度。為此,我們增加了一個名為 q_hot 的額外自由度,以及一個額外的約束作為全局方程。將‘廣義流入熱通量’替換為 q_hot。

COMSOL 中空間與時間積分的方法介紹附COMSOL Multiphysics工程實踐與理論仿真的圖16

如何通過增加一個額外的自由度以及一個全局方程來把平均溫度強制設為 303.15 K。

對這個耦合系統進行穩態求解,得到 COMSOL 中空間與時間積分的方法介紹附COMSOL Multiphysics工程實踐與理論仿真的圖17。要在整個域中得到 303.15 K 的平均溫度,‘廣義流入熱通量’邊界條件就應為這樣的一個值。

利用積分耦合計算不定積分

我們的 Support 郵箱經常收到這樣一個問題:如何得到空間不定積分?下面這個積分耦合的應用就將回答這一問題。不定積分與積分對應,從幾何上講,它支持計算由函數圖形約束的任意面積。它的一個重要應用就是計算統計分析中的概率。為演示這一點,我們的示例固定為 COMSOL 中空間與時間積分的方法介紹附COMSOL Multiphysics工程實踐與理論仿真的圖18,并通過 COMSOL 中空間與時間積分的方法介紹附COMSOL Multiphysics工程實踐與理論仿真的圖19 表示不定積分 COMSOL 中空間與時間積分的方法介紹附COMSOL Multiphysics工程實踐與理論仿真的圖20。這意味著 COMSOL 中空間與時間積分的方法介紹附COMSOL Multiphysics工程實踐與理論仿真的圖21。以下積分代表了該不定積分:

COMSOL 中空間與時間積分的方法介紹附COMSOL Multiphysics工程實踐與理論仿真的圖22

其中,我們使用 COMSOL 中空間與時間積分的方法介紹附COMSOL Multiphysics工程實踐與理論仿真的圖23 來區分積分與輸出變量。和上文的積分相反,我們這里將函數作為結果,而非標量。我們需要加入這一信息,即對于每個 COMSOL 中空間與時間積分的方法介紹附COMSOL Multiphysics工程實踐與理論仿真的圖24,對應的 COMSOL 中空間與時間積分的方法介紹附COMSOL Multiphysics工程實踐與理論仿真的圖25 值需要求解一個積分。幸運的是,這在 COMSOL 環境中很容易設定,可以說,只需要三個組分。第一步,可以使用一個邏輯表達式將積分轉化為:

COMSOL 中空間與時間積分的方法介紹附COMSOL Multiphysics工程實踐與理論仿真的圖26

第二步,我們需要一個積分算子作用在我們示例域的下邊界。我們通過 intop2 來表示。第三步,我們需要加入積分與輸出變量的區分。這一情況下源項與目標端的符號分別為 COMSOL 中空間與時間積分的方法介紹附COMSOL Multiphysics工程實踐與理論仿真的圖27 和 COMSOL 中空間與時間積分的方法介紹附COMSOL Multiphysics工程實踐與理論仿真的圖28。當使用積分耦合算子時,內置算子 dest 可用,它指出對應的表達式不屬于積分變量。更精確地說,它意味著 COMSOL 中的 COMSOL 中空間與時間積分的方法介紹附COMSOL Multiphysics工程實踐與理論仿真的圖29。綜合邏輯表達式與 dest 算子,得到表達式 T*(x<=dest(x)),這正是 intop2 所需輸入的表達式??傊?,我們可以通過 intop2(T*(x<=dest(x))) 計算不定積分,并在我們的示例中得到如下圖示:

COMSOL 中空間與時間積分的方法介紹附COMSOL Multiphysics工程實踐與理論仿真的圖30

如何通過積分耦合、dest 算子,以及邏輯表達式繪制不定積分。

COMSOL 提供了兩個不同的積分耦合算子,名稱是廣義投影和線性投影。可通過它們得到域任意方向的一組路徑積分,即僅針對一個維度執行積分,結果是一個維度而非域的函數。在二維示例中,結果是一個一維函數,可以在任意邊界進行計算。在接下來的一篇有關組件耦合的博客中,我們將更加詳細地介紹如何使用這些算子。

在附加物理場接口求解空間積分

要最靈活地使用空間積分,可以將它增加到一個附加的 PDE 接口上。繼續使用不定積分的例子,假設我們并非只希望計算 COMSOL 中空間與時間積分的方法介紹附COMSOL Multiphysics工程實踐與理論仿真的圖31 的不定積分。這一任務可以通過 PDE 闡釋:

COMSOL 中空間與時間積分的方法介紹附COMSOL Multiphysics工程實踐與理論仿真的圖32

并在左邊界上指定狄氏邊界條件 COMSOL 中空間與時間積分的方法介紹附COMSOL Multiphysics工程實踐與理論仿真的圖33。系數型偏微分方程接口是執行這一方程的最簡單接口,我們僅需作如下設定:

COMSOL 中空間與時間積分的方法介紹附COMSOL Multiphysics工程實踐與理論仿真的圖34

如何針對空間積分使用附加物理場接口。

因變量 COMSOL 中空間與時間積分的方法介紹附COMSOL Multiphysics工程實踐與理論仿真的圖35 代表相對于 COMSOL 中空間與時間積分的方法介紹附COMSOL Multiphysics工程實踐與理論仿真的圖36 的不定積分,在計算和后處理時可用。這種方法除了靈活性,還具有準確性的優勢,因為積分并非作為派生值獲取,而是作為計算及內部誤差估計的一部分。

利用內建算子求時間積分

我們之前提到過‘數據系列操作’可以作為時間積分使用。通過分別代表了時間積分或時均的內置算子 timeint 和 timeavg 是實現時間積分另一項重要方法。它們可用于后處理中,能夠對指定時間間隔的任何瞬態表達式執行積分操作。在示例中,我們對 90s 和 100s 的平均溫度感興趣,即:

COMSOL 中空間與時間積分的方法介紹附COMSOL Multiphysics工程實踐與理論仿真的圖37

下方的表面圖顯示了得到的積分,它是 (x,y) 中的一個空間方程。

COMSOL 中空間與時間積分的方法介紹附COMSOL Multiphysics工程實踐與理論仿真的圖38

如何使用內置時間積分算子 timeavg。

類似的算子還有用于球面對象的積分,也就是 ballint、circint、diskint 以及 sphint。

利用其它物理場接口實現的時間積分

如果模型中要用到時間積分,您需要將其定義為額外的因變量。與上方顯示的系數型偏微分方程示例類似,這可以通過增加數學分支的常微分方程接口實現。例如,假設在每個時間步長,模型均需要從開始時刻到當前的總熱通量,即需要測量累計能量。COMSOL 會自動計算總熱通量變量,名稱為 ht.tfluxMag。積分可以作為帶有分布式常微分方程的附加因變量計算,它是域常微分和微分代數方程接口的子節點。該域常微分方程的源項為被積函數,如下圖所示。

COMSOL 中空間與時間積分的方法介紹附COMSOL Multiphysics工程實踐與理論仿真的圖39

如何針對時間積分使用附加的物理場接口。

這類計算的優勢是什么呢?積分可以在另一個物理場接口重復使用,比如那些可能會被系統中的累計能量影響的接口。此外,它現在還可用于各類后處理,比內建算子更加便捷和高效。例如,檢查多相催化模型中的碳沉積,模型使用域常微分方程來計算催化劑的孔隙率,并以此作為存在化學反應時的瞬態場變量。

求解析函數及表達式的積分

到目前為止,我們已經顯示了如何在計算或后處理中求解變量的積分,但我們尚未涉及到解析函數或表達式的積分。為此,COMSOL 還提供了內置算子 integrate (表達式、積分變量、下邊界,及上邊界)。

表達式可能是任意一維函數,例如 sin(x);也可能包括附加變量,例如 sin(x*y)。第二個參數指出了對哪個變量求積分。例如利用 integrate(sin(x*y),y,0,1) 可以得到一個有關 x 的函數,因為積分僅會消除積分變量 y。積分算子也可用于處理解析函數,我們需要在當前組件的定義節點定義解析函數。

COMSOL 中空間與時間積分的方法介紹附COMSOL Multiphysics工程實踐與理論仿真的圖40

如何增加一個解析函數(左)如何求解析函數的積分。(右)

下載地址:COMSOL Multiphysics工程實踐與理論仿真 多物理場數值分析技術

登錄后免費查看全文
立即登錄
App下載
技術鄰APP
工程師必備
  • 項目客服
  • 培訓客服
  • 平臺客服

TOP

7
5
12