席強
1 COMSOL停止條件
在進行穩態求解時,COMSOL迭代求解以收斂條件滿足作為計算的停止條件,但是在瞬態分析時,計算何時停止可由用戶自行選擇。與其他仿真軟件類似,COMSOL默認的瞬態分析是遍歷用戶指定的時間范圍后停止計算。除此之外,COMSOL還可以提供一種更靈活而且強大的功能,就是允許用戶選擇讓軟件自動檢測計算結果中的某一變量或表達式,當該變量或表達式滿足一定條件時,計算停止。
例如在對流與擴散計算中,可以讓流出物質的總量達到指定值時,計算自動停止,設置界面見圖1。
COMSOL的停止條件使用布爾表達式。若布爾表達式運算的結果大于0,則表示有效,此時停止條件滿足,計算停止;若布爾運算結果小于或者等于0,則表示無效,停止條件不滿足,計算繼續進行。需要注意的是,這里的表達式通常是對某個標量進行求解的結果。
2 COMSOL瞬態求解器設置
當求解瞬態非線性問題時,為提高收斂性和求解器的效率,用戶可以手動調整求解器的一些參數,例如非線性求解器中的迭代步數、公差因子、阻尼衰減參數、Jacobian修正方法等。
通常情況下,如果在迭代步數范圍內收斂性較慢,未能在適當的迭代次數后得到結果,可以將迭代步數改大,但這樣做有時會產生較大的計算量。
當非線性較強時,可以將公差因子調小,以控制迭代時的步長。較小的步長受非線性的影響較小,可能會快速得到結果,但也有可能會產生較大迭代次數,增加計算量。
阻尼衰減參數可以根據實際情況進行調整,用戶可以指定初始值、最小步長和最大步長。如果非線性很強,則應該將最小步長改小,反之可以將最大步長調大。
Jacobian修正方法也可以根據需要修改,例如系統默認采用最小值方法,用戶可以修改成每個迭代都須修改,也可以每段時間只進行一次修改。修改次數越多,意味著非線性的影響越小,同樣也意味著計算量的增加。
3 COMSOL命令行控制
從操作系統的圖形化界面啟動COMSOL是最常用的,但是對于有些特殊的情況,用戶可能會需要從命令行啟動COMSOL。其實這種啟動方式更靈活,COMSOL提供如下一些很實用的啟動參數。
Comsolbatch-input testl.mph-output test2.mph:批處理命令。這種啟動方式允許COMSOL在后臺運行,將test 1模型計算后保存成test 2文件。在很多大型集群系統中,主節點的linux系統很可能沒有圖形化界面,這時就可以利用這條命令,在文本界面下后臺運行COMSOL。
Comsol server-port 2233-muhi on:在服務器上運行COMSOL作為服務器端應用程序,并指定端口。
Comsol client:在終端運行COMSOL。
Comsol-np 8:指定COMSOL可以使用的CPU的個數。
Comsol matlab(opens matlab with comsol path):使用命令行啟動COMSOL with MATLAB
4 COMSOL繪圖比例設置
計算結果變形圖可以幫助用戶了解結構形變后的形狀,然而有時候模擬得到的變形量很小,例如相對于結構而言,變形僅為實體的1×10-3倍,如果以1:1的比例關系顯示變形,很有可能看不到效果,這時可以通過修改“繪圖參數”對話框的“變形”標簽中的“比例系數”增加變形圖的效果。用戶可以選擇“自動”,或者清除“自動”復選框后在后面的編輯框中填入自己希望的比例關系。見圖2。
5 COMSOL中的虛擬幾何
當進行數值仿真時,經常需要將包含很多細節的幾何模型進行簡化,例如,在結構分析中忽略一些加工時必須的倒角、定位孔等,在電磁場分析中忽略相同材質的銷釘等。這些簡化一般對最終結果沒有太大影響,而且可以有效降低后續網格劃分的難度、減少計算量,從而可以加快數值仿真的速度、節約成本。
COMSOL Muhiphysics提供虛擬幾何操作功能,可以通過忽略端點、邊、面,形成復合邊、面、域,合并端點等,簡化幾何結構,形成便于進行數值仿真的求解域,見圖3。
6 COMSOL應力集中問題的處理
應力集中現象是結構力學分析中經常遇到的問題,對計算結果影響較大,經常通過加密網格的方法來處理。應力集中現象實質上是一種奇異問題,通常情況下,在有限元法的計算中,由于Jacobi矩陣受網格質量影響很大,因此并不是網格越細結果越精確,相反,網絡越細得到的應力值越大。
在COMSOL中,應力集中問題需要參考以下操作步驟調整自適應網格求解器中的某些參數。
(1)在求解步驟中添加自適應。以穩態求解為例,在設定區中,展開“擴展”,勾選“自適應”。
(2)調整自適應的選項。在求解器配置中顯示缺省求解器,然后找到自適應節點,在設定區中“最大網格細化次數”可選擇適當值,通常為3~8之間的整數。將單元選擇下拉列表修改為“最大誤差分數”,單元比例修改為較大的值。
(3)求解后修改后處理選項。例如:顯示面圖時,展開設定區中的“質量”,將“恢復”修改為“各處”或“域內”;在面上最大/小值的設定區中,展開“高級”,將“恢復”修改為“各處”或“域內”。
(摘自同濟大學鄭百林教授《CAE操作技能與實踐》課堂講義)
(待續)endprint