2012-09-05 124 views
1

這可能是錯誤的地方,但我無法在SE網絡上找到更好的地方。 我已經與Matlab和Ansys進行了簡單的合作,並且從我所瞭解/可以收集的信息中,Matlab是一種編程環境,它具有執行常見數學,可視化和分析操作的功能。您主要以文本方式編寫程序(.m文件)或使用Simulink生成流程圖(基於模型的開發)。另一方面,Ansys主要是一個模擬環境,通過GUI(3D模型,物理域,配置,顯示設置)可以完成很多工作,並且您可以在模擬引擎中的各個點上添加方程以修改模擬流程。Matlab與仿真產品(如ANSYS和COMSOL)

無論我理解的是粗略的,只是作爲一個概述。任何人都可以給我一個適合的Matlab和Ansys(或其他仿真產品,如COMSOL)之間的真實世界比較,以便我們瞭解何時使用哪些系統以及每個系統的弱點。

回答

5

我沒有使用Ansys,但Ansys常常與Comsol相比,而且我已經使用了Comsol和Matlab多年。

Matlab的:

  • 編程語言和環境運行它。這意味着它可以做任何事情(任何其他編程語言都可以)。與其他語言相比,它的亮點是什麼?

    • 數百個與矩陣配合使用的內置函數。例如,在一個項目中,我需要做簡單的矩陣代數(加法,乘法,比例矩陣),還需要奇異值分解。 SVD不是你可以用50行代碼寫的東西,所以我需要一個現成的庫。當時我使用了Java庫,並編寫了自己的代碼來表示矩陣並對它們進行矩陣代數。這是幾百行代碼。如果我使用Matlab,它將會有大約十行代碼,因爲所有代碼都在那裏。我只需要鍵入help svd以瞭解如何使用它。但是,如果你不需要這些,不惜一切代價遠離Matlab!有很多更好的免費語言。

    • 非常適合作爲計算器,它總是在桌面上打開,並且可以執行回包式樣式計算。

    • 繪圖圖。許多學者建議將Matlab作爲製作出版質量圖形的首選工具。這些可以導出爲PDF格式並導入到Inkscape中進行進一步編輯。最好的情況是可以將用於繪製圖形的命令放入腳本文件中,然後可以根據需要更改其中的一部分,與手動繪製圖形相比,這可以節省大量工作(想象一下,您想要更改用於顯示數據點的軸或符號)。

    • 就我個人而言,我也將它用於曲線擬合。它有很多工具箱,其中之一是一個簡潔的工具,可以讓我找到對一組數據點進行建模的方程式。

COMSOL:

  • 用於解決有關使用有限元法(FEM)的複雜結構域偏微分方程(PDE的)專門工具。這可能聽起來很晦澀,但許多現實世界的工程需求會降低到這個水平。這樣的事情:

    1. 尋找與複雜的現實世界的幾何土木結構載荷,應力和應變(當有陣風吹向建築或橋樑時會發生什麼?)

    2. 怎麼辦電流特別是導電物體流動?

    3. 各種工業反應器中的化學反應。

    4. 發電機(線圈中的磁鐵旋轉)設計的功率效率是多少?

    5. 如何將空調出口放置在非三維形狀的房間內,以實現良好的溫度分佈和良好的效率?

    6. Comsol與任何其他可以用任意方程式工作的FEM工具一樣可以做多物理場,例如,可以解決電池化學反應,以及溫度和壓力,以及如何反饋回化學反應(加速或減速)。與需要提供方程的工具相比,在Comsol中,大部分解決大多數問題所需的東西都已經存在,只需要選擇並應用到幾何體中,這也是在Comsol內部構建的。另外,可以引入任意描述的方程。

  • 這些物理物質如何表現的物理描述稱爲PDE。

  • 一旦Comsol解決了一個問題,數據可以導出後處理到Matlab中,後者具有更多用於處理數據和製作各種圖的多功能工具。