Wolfram Mathematica

Wolfram Mathematica （簡稱：Mathematica）是一款科學計算軟體，有時候也被稱為計算機代數系統，廣泛使用於科學、工程、數學、計算等領域。

它是由英國科學家斯蒂芬・沃爾夫勒姆提出構想，並且由他所領導的沃爾夫勒姆研究公司（位於美國伊利諾伊州香檳市）開發的一款廣泛使用的科學計算軟體。它擁有強大的數值計算和符號運算能力，是目前為止使用最廣泛的數學軟體之一。

Wolfram 語言是用於 Mathematica 的程式語言。

沃爾夫勒姆和他的工作團隊於 1986 年開始 Mathematica 的研發。Mathematica 1.0 於 1988 年 1 月 23 日正式發行。2008 年 12 月發行的 Mathematica 7.0 版及之後的版本有中文版。

產品功能

Mathematica 的功能包括：

各種基本數學函式庫
各種特殊屬性函式庫
矩陣和資料操縱工具，包括對稀疏矩陣的處理
支援複數、任意精度數、區間算術和符號運算
2 維和 3 維資料以及函式的視覺化和動畫工具
求解方程組、常微分方程、偏微分方程、微分代數方程、時滯微分方程、遞推關係式等等
離散和連續微積分的數值和符號工具
多變數統計程式庫，包括支援 100 多種資料分佈的資料擬合、假設檢驗、機率和期望的運算
支援刪失資料、暫態資料、時間序列和有單位的資料
隨機過程和佇列的計算及模擬
為包括神經網路在內的資料、影像和聲音的有監督和無監督機器學習提供工具
對運算和應用程式新增使用者介面的各種工具包
約束和無約束區域性及全域性最最佳化
程式語言支援：程序式程式設計語言、函數語言程式設計語言和麵向物件的程式語言
影像處理工具，包括影像識別
提供用於圖論中圖的分析和視覺化的工具
分析組合問題的工具
用於文字挖掘的工具
資料探勘的工具，比如聚類分析、字串對齊和模式匹配
數論函式庫
金融運算的工具，包括期權、債券、年金、衍生工具等的計算
群論函式
技術文字處理，包括公式編輯器和自動報告生成
用於聲音、影像和資料的小波分析程式庫
控制系統程式庫
連續和離散的積分變換
匯入和匯出資料、影像、影片、GIS、CAD 等各種檔案格式，並支援對生物醫學類資料的輸入和輸出
連結 Wolfram Alpha 的大量數學、科學、社會經濟學類的資料集合
檢視並且重新使用前面的輸入和輸出（包括影像和文字記號）的筆記本介面
和基於 DLL、SQL、Java、.NET、C++、Fortran、CUDA、OpenCL 以及 http 的系統相連結的工具
編寫並行程式的工具
當與網際網路連線時，在筆記本中可同時使用 “自由格式語言輸入”（一個自然語言型的使用者介面）和 Wolfram 語言

筆記本介面

Mathematica 分為兩部分：核心和前端。核心對錶達式（即 Wolfram 語言程式碼）進行解釋，並且返回結果表示式。

前端由西奧多・格雷於 1988 年設計，它提供了一個允許使用者建立並且編輯一個 “筆記本文件” 的 GUI，該筆記本文件可以包含程式程式碼、格式化文字以及包括公式、影像、GUI 元件、表格、聲音在內的各種輸出結果。所有的內容和格式都可以透過演算法生成或者透過互動式方法進行編輯。其支援大多數標準文字處理功能，還含有一個多語種的即時拼寫檢查器。

文件可以使用層次式單元進行結構化處理，這樣便於對文件劃分章節。文件也可以表示為幻燈片形式，便於進行演講。筆記本與其內容均以 Mathematica 表示式的形式儲存，並且可用使用 Mathematica 程式進行建立、編輯和修改，而且還可以轉化為其它格式，比如 TeX 或者 XML。

前端包括開發工具，比如偵錯程式、輸入自動補全、以及自動語法著色。

預設情況下，Mathematica 使用一個標準前端，不過也有其它前端可供選擇，包括 Wolfram Workbench、2006 年引入的基於 Eclipse 的 IDE。它們為 Mathematica 提供了面向專案的開發工具，包括版本管理、除錯、歸檔和測試。此外，Mathematica 還包括一個命令列前端（Mathematica Kernel）。

沃爾夫勒姆研究公司已經推出一系列初學者入門影片，介紹使用者介面和引擎。

高效能計算

近年來，Mathematica 系統已經開始支援高效能計算。在 Mathmatica 5.2 版本中，它已經支援自動多執行緒計算。2002 年， gridMathematica 的引入使得使用者級的並行程式設計可以在不同的叢集和多處理器系統中進行在 2008 年，在所有的 Mathematcia 許可證中囊括了平行計算技術，包括支援網格技術如 Windows HPC Server 2008、Microsoft Compute Cluster Server 和 Sun Grid。2010 年，Mathematica 增加了對 CUDA 和 OpenCL GPU 硬體的支援。另外，第 8 版還可以生成 C 程式碼，它可以自動由系統 C 編譯器進行編譯，比如 Intel C++ 編譯器或者 Visual Studio 2010 編譯器。

部署

使用者可以透過多種解決方案部署使用 Mathematica 編寫的應用程式：

Mathematica Player Pro 是 Mathematica 的 “只讀” 版本，它可以執行任何 Mathematica 應用程式，但是不允許編輯或者建立 Mathematica 程式碼。此外，還有一個免費版本的 Mathematica Player 可以用來執行 CDF 格式的 Mathematica 程式；它也可以用來檢視標準 Mathematica 檔案，但是不能執行它們。

webMathematica 的網頁瀏覽器可以作為遠端 Mathematica 伺服器的一個 “前端”。它允許使用者在任何平臺上遠端訪問編寫好的應用程式。但是，它不允許使用者完全訪問 Mathematica。

另外，第 8 版可以自動將 Mathematica 程式碼轉換成可執行的 C 程式碼，這些自動生成的 C 程式碼可以在標準 C 編譯器中進行編譯，比如 Intel C++ Compiler 或者 Visual Studio 2010 的編譯器。因此，從某種角度上，Mathematica 程式碼的執行速度可以與 C 語言程式碼相媲美。

可計算資料

Mathematica 囊括了大量可立即計算的資料。使用者可以透過程式設計訪問這些資料，並且也可以透過 Wolfram Research 資料伺服器自動更新資料。某些資料如股票價格和天氣資料都是即時遞送的。目前資料集包括：

天文資料：155,000 個天體的 99 個屬性
化學資料：34,000 個化合物的 111 個屬性，118 個化學元素的 86 個屬性以及 1000 個亞原子粒子的 35 個屬性
地緣政治資料：237 個國家的 225 個屬性，以及全世界 160,000 個城市的 14 個屬性
金融資料：186,000 個股票和金融工具的歷史和即時屬性
數學資料：187 種多面體的 89 個屬性，3000 種圖的 258 個屬性，6 種 knots 的 63 個屬性，21 種晶格結構的 37 個屬性，52 個測地學方案的 32 個屬性
語言資料：149,000 個英語單詞的 37 個屬性。26 個其他語言的詞典
生物醫學資料：所有 40,000 個人類基因的 41 個數據，27,000 類蛋白質的 30 個屬性
天氣資料：全球 17,000 個氣象站的 43 個即時和歷史的測量資料
Wolfram|Alpha 資料：來自 Wolfram Alpha 的億萬兆資料

版本歷史

Mathematica 版本

Mathematica 的產生是基於 Cole 和 Wolfram 早期的符號操作程式（SMP）的創意。

Wolfram Research 已經發布瞭如下 Mathematica 版本：

1.0（1988 年 6 月 23 日）
1.1（1989 年）
1.2（1989 年 8 月 1 日）
2.0（1991 年 1 月 15 日）
2.1（1992 年 6 月 15 日）
2.2（1993 年 6 月 1 日）
3.0（1996 年 9 月 3 日）
4.0（1999 年 5 月 19 日）
4.1（2000 年 11 月 2 日）
4.2（2002 年 11 月 1 日）
5.0（2003 年 6 月 12 日）
5.1（2004 年 10 月 25 日）
5.2（2005 年 6 月 20 日）
6.0（2007 年 5 日 1 日）
6.0.1（2007 年 6 月 5 日）（此版本以及之後版本具有中文版）
6.0.2（2008 年 2 月）
6.0.3（2008 年 6 月）
7.0（2008 年 11 月 18 日）
7.0.1（2009 年 3 月 5 日）
8.0（2010 年 11 月 15 日）
8.0.1（2011 年 3 月 7 日）
8.0.4（2011 年 10 月 24 日）
9.0.0（2012 年 11 月 28 日）
9.0.1（2013 年 1 月 31 日）
10.0.0（2014 年 7 月 9 日）
10.0.1（2014 年 9 月 17 日）
10.0.2（2014 年 12 月 10 日，僅有英文介面）
10.1（2015 年 3 月 30 日）
10.2（2015 年 7 月 14 日）
10.3（2015 年 10 月 15 日）
10.3.1（2015 年 12 月 16 日）
10.4（2016 年 3 月 2 日）
10.4.1（2016 年 4 月 18 日）
11.0.0（2016 年 8 月 8 日）
11.0.1（2016 年 9 月 28 日）
11.1（2017 年 3 月 16 日）
11.1.1（2017 年 5 月）
11.2（2017 年 9 月 14 日）
11.3（2018 年 3 月 8 日）
12.0（2019 年 4 月 16 日）
12.1 (2020 年 3 月)
12.1.1 （2020 年 6 月）
12.2（2020 年 12 月）
12.3（2021 年 5 月）
12.3.1（2021 年 7 月）
13（2021 年 12 月）
13.0.1（2022 年 2 月）
13.1（2022 年 6 月）
13.2（2022 年 12 月）
13.2.1（2023 年 2 月）
13.3 （2023 年 6 月）
13.3.1（2023 年 8 月）
14.0（2024 年 1 月）
14.1（2024 年 7 月）