106.01.07 三個可以代替MATLAB的自由軟體 (翻譯)


圖片來源:João Trindade. Modified by Jason Baker. CC BY-SA 2.0.

對於許多在數學、物理、工程、經濟或其他與龐大數字為伍的領域的學生來說,通常MATLAB是最先被介紹來讓他們寫程式或進行科學計算的。

MATLAB是個很好的學習工具,雖然在我的經驗中,許多學生和研究人員在使用MATLAB時並非特別地要求計算,而其實這些計算通常可以很簡單地用許多基本的工具實現,不論有無統計或數學取向相關包裝的需求。但是,MATLAB在許多學術環境幾乎無所不在,並用其語言、插件(擴充功能)和一般功能來吸引很大量的使用者。

但是MATLAB是一個專有的軟體工具。由於無法獲得其原始程式碼,你會被限制於無法真正了解它是如何運作的以及如何去修改它。而且對於許多學術環境以外的人來說,它是非常昂貴的,光單向複製的授權費用就可達到數千美元。

幸運的是,有很多偉大的開源替代品。依照你的目的,你可能可以發現一個或更多適合你具體需求的軟體。而這裡有三個提供參考:




GNU Octave
GNU Octave可能是最有名的MATLAB替代軟體。在將近三十年的積極開發,Octave能夠在WindowsMacLinux上執行,並為大多數主要的發行版本打包。如果你正在尋找一個越盡可能接近MATLAB語言越好的項目,Octave可能很適合你;它盡可能確保相容性,所以許多在MATLAB上開發的程式都可以在Octave執行而不用修改。

Octave有許多不同用於前端互動以外的新版本供選擇;一些類似於MATLAB介面或者更多。在Octave維基條目有列出數個相關選項。

Octave是根據GPL的方式提供授權,其原始程式碼都可以在GNUftp上搜尋得到。


Scilab
Scilab是另一個數值計算的開源選擇,同樣可在主要平台(WindowsMacLinux)上執行。Scilab也許是除Octave外最有名的替代品。和Octave相同,它的實作非常類似於MATLAB,儘管相容性並非開發重點。

Scilab的開源方式為CeCILL授權,是一個與GPL相容的授權,原始程式碼在其網站上有提供。


Sage
SageMath是另一個開源的數學軟體系統,可能是尋求MATLAB替代方案的好選擇。它建立在許多基於Python的科學計算庫上,所以Sage自己的語言類似於PythonSage具有許多功能,包括命令介面、瀏覽器記事本、其他文檔嵌入公式的工具,當然還有許多數學計算庫。

SageMath使用GPL授權,原始程式碼在其專案網站上有提供。

這個列表只是擴展研究人員和學生們可能選擇使用的替代MATLAB的開源工具。有很多其他像Genius Mathematic ToolFreeMat,當然的如RJuliaPython等其他程式語言也可能很適合你,這些都取決於你的需求目的。你已經有使用過經驗?還是其他人有?你喜歡哪一個?為什麼?請在下面評論告訴我們。

-
後記
我們系(成大資訊)在一上的普通物理(一)時的作業就是使用MATLAB計算,在一下時更有一門課 -- 普通物理(二),整個下半學期教授教我們怎麼使用MATLAB,從計算精確值到數值積分都是自己用MATLAB寫出來(如果有空我會想整理起來並放在我的GitHub),而在當時有個問題,就是全校總授權的數目有限,所以是沒辦法全部人同時開啟的,就會看到一個現象,就是在交作業前卻一堆人在搶少量的限制個數,沒搶到的只能跟分數說掰掰。
這學期(105上)學校已經購買MATLAB全校授權,但是呢,如同文章所言,這並不是每個人都有機會享受到的,走出校園後呢?
因此我看到此篇文章時有點深刻的感觸並有想記錄的動力,當作我之後可能會使用到或是分享給大家的一篇翻譯

祝 期末順利


參考資料:3 open source alternatives to MATLAB (翻譯來源)
作者:Jason Baker

2 則留言:

  1. 謝謝,不想繳費,也不想破解,畢竟寫程式的人知道寫成的辛苦,不消費就算了,還是勉強自己習慣自由軟體好了。

    回覆刪除

^ Top