天天看點

COMSOL上手指南

本期我們的重點在于COMSOL與ansys比較軟體介紹,通過軟體的了解,能夠盡快的上手軟體操作,并且在最後為大家提供一些我自己整理的參考書籍和教程。

COMSOL Multiphysics是一款有限元計算模拟軟體,相比于普遍流行的有限元軟體ABAQUS、ANSYS等,它仍舊是一款小衆的軟體。但是它基于Matlab發展而來,解決了工程中最為棘手的問題-上手困難。COMSOL對于新手使用者比較友好,主要展現在以下幾點:

  1. 界面簡潔,配置有多種語言,對于英語薄弱使用者也毫無壓力。
  2. GUI易懂,效果可視化做的比較好
  3. 新手的知識背景不需要足夠充分就可上手操作
  4. 界面支援随時用幫助檔案進行學習

除此以外,COMSOL光學仿真自己将實體方程編譯進子產品,從網格劃分,研究步驟,求解器配置等都已內建,除非對于特定問題的研究需求,這些步驟以及背景知識可以完全交給軟體解決,用一個“黑匣子”形容也不為過,是以對于工程設計具有極大的優勢,是以也注定這款軟體的主打市場應該是商用,用于科研僅僅是為了輔助作用。另外,對于多實體場的研究,軟體能夠實作自動耦合變量關系,省去了耦合方程的輸入,對于目前的多實體場模拟中具有極大的優勢。

COMSOL上手指南

首先來熟悉軟體的操作界面,對于新手來講,軟體構件的模型樹遵從自上而下,自外到内的模組化流程。如何了解這句話呢?對于COMSOL的操作,首先是建構實體模型,然後選擇對應研究的實體場,然後添加網格,設定研究類型,然後進行求解計算,這就是自上而下。對于某一個節點下的定義,先從宏觀角度進行定義,例如添加多孔電極域條件,然後再定義微觀的實體現象。例如定義好多孔電極之後,在這個域節點下面有多孔電極反應和粒子插層這兩個子節點,這兩個節點詳細的描述在多孔電極内部的反應,這就是自外到内。

在一個具有次元的元件下面,總共有五個重要的節點。依次是定義,幾何,材料,實體場。在“定義”節點下可以添加元件内部有效的變量,以及可以随着計算輸出的探針值,另外可以建立元件耦合算子。“幾何”用于建構宏觀的實體外形,或者是抽象的形狀。“材料”節點内部通過定義變量的形式把模型中的材料特性(包含各種物性,例如密度,電導率等一系列值)引入到實體場,當然對于某些自己測的的實體參數,可以在“定義”或者全局參數裡面進行輸入,是以在“材料”節點下也可以不進行材料的選擇,選擇材料的出發點是省去了查找物性參數的麻煩。最重要的是實體場的建構,以及網格的劃分COMSOL初始值。

實體場是模拟的關鍵,所有描述反應的方程、邊界條件、初始值均在此定義。在模型中從大體上分可以為域條件,邊界控制條件,顧名思義,域條件對于整個域的計算都有效,而邊界條件隻是針對邊界處生效。添加邊界條件和規定初始值,一方面是求解偏微分方程的必要條件,另一方面,對于求解近似解的程式能夠更加快速的找到計算起點,避免在計算的開始就難以收斂花費時間,甚至直接進入不收斂狀态引發出錯,這也是軟體中提示初始步不收斂錯誤的重要原因。另外,在軟體中域條件與邊界條件用了不同的符号進行了标注,細心的使用者稍微觀察一下就可以分辨出來。

網格劃分,對于某些特定的模拟非常重要。在具有薄層材料,幾何變形等模拟中,網格需要在特定地方進行特别的定義。但是對于普通的計算,為了節省計算時間和計算資源可以采用預設的正常網格甚至粗化網格,然而具有好的計算資源的使用者,可以采用細化或者精細化網格。在驗證模型階段,往往為了快速的驗證模型搭建的準确性,建議采用正常或者粗化網格,能夠更快提示模型中的參數設定以及條件設定的錯誤。

COMSOL上手指南

在這裡,需要特别陳述一點,在全局下面定義的變量、COMSOL參數化掃描是可以在所有元件中調用,然後在元件的“定義”節點下面定義的參數以及變量隻能在本節點下面進行直接調用。如果在其他元件下調用,需要在定義的變量前加入元件名稱。

研究類型,對于電池的研究,能夠用得到的有三類,分别是瞬态,穩态,以及頻域擾動(模拟阻抗)。瞬态的研究用于模拟随時間變化的實體場,例如在充電階段,電池的電壓随時間的變化。穩态的計算用于在特定的某一個時刻的實體場描述,例如在設定的初始值條件下電池的電解液濃度分布等。瞬态研究中設定的研究時長以range函數的形式命名。其中步長決定最後輸出結果的個數,也就是時間點的個數。舉個例子,如果設定的研究市場總共100s,步長為10s,那麼在對結果作圖隻有11個時間點,分别是0s,10s,20s,100s,如果想要知道第15s的情況,那需要對步長進行縮小。相反,如果對于研究時長過程,可以适當的增大步長,減小計算耗時。

如果計算結束後,軟體會進行相應的提示計算結束,當然計算出錯也會進行相應的錯誤提示,以友善能夠快速找到出錯的地方,對于某些指向性不強的報錯,建議在研究中勾選存儲所有中間步驟的解,這樣即便計算不成功也能夠進行結果作圖幫助查找出錯原因。

對于結果作圖,可以分為三類,也就是三個次元的圖。繪圖同樣遵循自外到内的原則,先定義繪圖組,然後在定義所要繪圖的變量。如果想要知道電池内部的某一個點的電壓随時間的變化圖,可以采用一維繪圖組,選擇繪圖所用解,然後再選擇點圖,勾選所要選擇的點,再然後定義表示電壓的變量,點選繪圖就可以了。如果要觀察變量的分布,或者梯度變化,則需要選用二維或者三維的繪圖組,遵循同樣的步驟。對于COMSOL有限元軟體自帶的繪圖不夠滿意,軟體支援将資料導出,然後自己再利用第三方軟體進行繪制。

COMSOL上手指南

軟體的上手就是這樣,我在這裡做一個引子,軟體的内置方程檢視,變量搜尋,以及幫助檔案的調出,大家可以自行百度,這些會在模組化過程中發揮重要的作用。

對于這個軟體的學習,想提一下幾點建議:

  1. 多利用軟體的幫助檔案學習,不隻是節點的描述檔案,以及實體場建構的控制方程描述。
  2. 盡管軟體不需要知道方程如何運作,但是能夠了解方程求解過程,方程形式以及變量,會對模拟大有裨益。

很多新手在開始的時候都想要得到很多的學習資料,其實我也搜集了很多的資料,最後才發現,自己隻是在需要某些特定背景知識的時候需要到了,整本的參考書還沒有幫助檔案來的有用。

當然紙質書籍看起來耗費時間,很多人想要用視訊的形式進行學習,可以在閑暇時間進行充電,COMSOL官方的制作的視訊已經很全面了,對于軟體的上手,以及某些特定的子產品都有詳細的介紹,隻不過可能簡單了一點。但是任何一個複雜的問題,都是由許許多多簡單的問題堆積而來。分享一個小技巧,如果在COMSOL官網上中國區找不到的視訊資源,可以試一下換成其他國家,或許有相應的資源。當然現在流行的b站,Youtube也有一些大神在秀操作,可以進行圍觀。

繼續閱讀