mathics是一個開源、免費、通用、跨平台的計算機代數系統(CAS),語法、函數和Mathematica幾乎完全一致。它使用Python開發,依賴於Sympy(python的符號計算庫)、mpath、gmpy等,並且可以借助Sagemath獲得更強的能力。類似於Sage,mathics也有在線版本,可以通過瀏覽器進行各種運算。
下面簡要談下windows系統下的安裝,首先需要安裝Python(建議python2.7.3, 我不確定3.x系列是否可以),解壓從官網下載下來的mathics-0.5.zip,目錄中包含一個setup.py文件,在該目錄下執行命令提示符(win7下可以Shift+鼠標右鍵,在此處打開命令窗口),鍵入setup.py install,不過這一步必須確保你的系統里有VC2008編譯器,並且環境變量配置無誤,否則會報錯:"Unable to find vcvarsall.bat"。其他版本的VC貌似不行.如果不想安裝龐大的VS,用Mingw也是可以的(下載地址之一:http://cloud.github.com/downloads/oneclick/rubyinstaller/DevKit-tdm-32-4.5.2-20111229-1559-sfx.exe),安裝之后也需要設置環境變量,然后執行setup.py install build --compiler=mingw32,安裝過程中可能需要下載個別依賴的包,過一會就好了。
安裝完畢在命令行下執行mathics,可是居然出錯了,根據出錯信息判斷這是由於編碼問題造成的,定位到"C:\Python27\Lib\site-packages\Mathics-0.5-py2.7-win32.egg\mathics\__init__.py",把原來的UTF-8不帶BOM格式轉為ANSI保存,再次運行, It works! mathics還有個瀏覽器界面,先運行initialize.py文件,再在命令行下執行mathicsserver命令就可以在瀏覽器中進行交互計算了,在Chrome或FireFox中打開http://localhost:8000即可(默認端口為8000,還有IE支持不好)。
經過初步的試用感覺mathics還不錯,對付基本的符號運算還行,語法上模仿Mathematica很到位,但是還是有很大的差距,復雜一點的問題他就無能為力了,好多Mathematica對應的函數目前還沒與實現,畢竟mathics還年輕,期待不久的將來它能發展的更好。