COMSOL中這種包含兩個因變數的兩個PDE方程組該怎麼定義?

pf pm都是變數,一個方程式控制制一個區域,但是一個方程中又包含另一個方程的變數,如果用兩個係數型方程,那都含有一個變數pf 或pm,無法計算

如果用一個PDE兩個變數,定義兩個PDE,通過推導發現,這樣就強行認為alpha*km/u*pm=0了(對於第一個方程,第二個是alpha*km/u*pf=0),這顯然是不對的。

我就想問問大家,在COMSOL中能否定義下面這樣的方程

M,N為因變數,方程(1)(2)分別控制一個區域,比如岩石中有裂縫,方程(1)控制岩石中流體的流動,方程(2)控制裂縫中流體的流動

為了實現所要達到的目的,我主要嘗試了兩種方法:

(1)分別定義兩個不同的PDE(係數型),均為只有一個因變數的PDE,這樣每個方程中都含有一個其他因變數,對於方程1是N,對於方程2是M,這樣定義後求解存在問題,解方程1時會報錯包含未定義的變數N,所以此方法行不通,或者說能添加別的什麼條件來實現,我還不太清楚。

(2)分別定義兩個包含兩個因變數的PDE,也就是方程1的因變數u=(M,N),方程2的因變數也是u=(M,N)

這樣將係數考慮為向量模式方程1中關於M的為向量的第一個數,關於N的為第二個數,這樣到最後會出現關於N的數等於0

比如我的方程1化簡後會得到

這樣就出現pm=0了,與實際情況不符合

所以針對這樣的方程和物理情況,該怎麼處理比較好呢

這是我建的模型的樣子,上面正方體的為基岩,下面薄的是裂縫


謝邀。

首先告訴你答案是肯定的,當然可以定義了。

COMSOL 提供了三種自定義偏微分方程的應用模式:係數型、廣義型和弱解型,其中弱解型還包括求解域和邊界模式。當預置的物理場應用模式滿足不了需求時,就可以用這些自定義偏微分方程應用模式求解各種二階偏微分方程。此外,通過變數代換還可以將高階偏微分方程降階為能夠求解的二階方程組,然後用這些基本的應用模式耦合起來後求解。或者還可以將不容易直接求解的方程轉化成弱解形式後求解。我覺得你去看一些簡單的演示就很好理解「用COMSOL求解PDF」了,你的問題也就隨之而解了。


你寫的這個是可以的,公式的一些部分是可以寫到源項立去的。方法1:你可以定義兩個PDF模塊,使用係數型PDF,按照給出的公式與你的公式對應,把所有的係數對應修改(注意,係數是可以含有變數的),而且源項也是可以有變數的。方法2:就是用廣義型,直接輸入公式即可。

尤其注意在耦合的時候單位要統一!否則會得到意想不到的結果。

你提出的這個兩個因變數的PDF方程,可以有兩種方法實現,

第一種,定義一個二維的變數,使用一個PDF方程求解;

第二種,直接定義兩個分立的變數,使用兩個PDF方程分別求解;

你可以私信我你的郵箱,我把我可以把我之前做的例子發給你參考(一個泊松和兩個PDF耦合求解)

很久沒用了,有些細節不太準確,也不詳細,有錯的話請各位提醒修改。

--------有些同學來要我的例子,由於比較忙,我將例子上傳到百度雲中,請各位自行下載。

地址:

鏈接:http://pan.baidu.com/s/1cIcIGe 密碼:ulds

源文件比較大, 去掉了求解的結果,大家參考裡面的設置方法吧。

如果解決了你的問題,請可以考慮點個贊~

大家可能碰到的難點:

1)不知道怎麼耦合

耦合其實很簡單,就是定義多個變數,然後像抄寫一樣對應把變數填進去(這是係數型),上遇到的類似問題可以一樣處理。

比如,我定義了三個變數,分別是y,T,nd, 單位分別是V, K和cm^-3. 在nd的定義中,耦合進去了nd和T,如下:

y和T直接寫進去就好,其中係數a和f的變數單位一定要處理好。

2)不知道怎麼表示偏導數

以y變數和柱坐標為例,yr就是dy/dr, yz就是dy/dz以此類推。

3)耦合變數的單位一定要好好檢查,避免單位不統一導致求解出問題,因此建議所有的量都用國際標準單位制。comsol很人性化,會幫你檢查單位。

4)變數聲明和場的適用區域也很重要,

1、一定要在每一個係數型中定義好場量,如下圖:

2、一定要選擇好場所適用的區域或者邊界條件,否則就會出現變數不存在的情況,比如:下圖

nd這個變數的係數方程只在上面兩個藍色的區域求解(打對號的),下面的畫x的區域不求解,即x區域不存在nd這個量,如果在這個區域中,其他的場方程引用了nd的話,那麼就會出現nd無定義的錯誤了。


請問誰有comsol自定義方程耦合的例子,最好是水熱耦合的例子,我現在特別的困惑,不會定義,,,我的郵箱是1547112588@qq.com,十分感謝大家!


求問樓主問題解決了么?小弟也是comsol初學者遇到了同樣的問題。。1樓的回答裡面第一點我可以理解,設置一個二維的變數,但是我的兩個變數是不同單位的,comsol裡面設置二維變數似乎是單位相同的。第二點不太明白,如何設置兩個分立的變數分別求解呀?既然兩個變數是耦合的,怎麼在一個pde里顯示另一個變數?

謝謝了!


您好,我想問一下,如何設置一個變數的範圍?


推薦閱讀:

TAG:COMSOLMultiphysics |