Wolfram Mathematica
Wolfram Mathematica (简称:Mathematica)是一款科学计算软件,有时候也被称为计算机代数系统,广泛使用于科学、工程、数学、计算等领域。
開發者 | 沃尔夫勒姆研究公司 |
---|---|
首次发布 | 1988年6月23日[1] |
当前版本 |
|
编程语言 | Wolfram语言,[16] C/C++, Java和Mathematica[17] |
操作系统 | 跨平台(平台列表) |
语言 | 英语、汉语和日语 |
类型 | 计算机代数系统、数值分析软件、信息可视化、统计程序包、图形用户界面 |
许可协议 | 专有 |
网站 | www |
它是由英国科学家斯蒂芬·沃尔夫勒姆提出构想,并且由他所领导的沃尔夫勒姆研究公司(位于美国伊利诺伊州香槟市)开发的一款广泛使用的科学计算软件[18][19]。它拥有强大的数值计算和符号运算能力,是目前为止使用最广泛的数学软件之一。
Wolfram语言是用于Mathematica的编程语言[20]。
沃尔夫勒姆和他的工作团队于1986年开始 Mathematica 的研发。Mathematica 1.0于1988年1月23日正式发行。2008年12月发行的Mathematica 7.0版及之后的版本有中文版。
产品功能
Mathematica的功能包括:[21]
- 各种基本数学函数库
- 各种特殊属性函数库
- 矩阵和数据操纵工具,包括对稀疏矩阵的处理
- 支持复数、任意精度数、区间算术和符号运算
- 2维和3维数据以及函数的可视化和动画工具
- 求解方程组、常微分方程、偏微分方程、微分代数方程、时滞微分方程、递推关系式等等
- 离散和连续微积分的数值和符号工具
- 多变量统计程序库,包括支持100多种数据分布的数据拟合、假设检验、概率和期望的运算
- 支持删失数据、暂态数据、时间序列和有单位的数据
- 随机过程和队列的计算及仿真
- 为包括神经网络在内的数据、图像和声音的有监督和无监督机器学习提供工具
- 对运算和应用程序添加用户界面的各种工具包
- 约束和无约束局部及全局最优化
- 程序语言支持:过程式编程语言、函数式编程语言和面向对象的编程语言
- 图像处理工具[22],包括图像识别
- 提供用于图论中图的分析和可视化的工具
- 分析组合问题的工具
- 用于文本挖掘的工具
- 数据挖掘的工具,比如聚类分析、字符串对齐和模式匹配
- 数论函数库
- 金融运算的工具,包括期权、债券、年金、衍生工具等的计算
- 群论函数
- 技术文本处理,包括公式编辑器和自动报告生成
- 用于声音、图像和数据的小波分析程序库
- 控制系统程序库
- 连续和离散的积分变换
- 导入和导出数据、图像、视频、GIS、CAD[23]等各种文件格式,并支持对生物医学类数据的输入和输出
- 链接Wolfram Alpha的大量数学、科学、社会经济学类的数据集合
- 查看并且重新使用前面的输入和输出(包括图像和文本记号)的笔记本界面
- 和基于DLL、SQL、Java、.NET、C++、Fortran、CUDA、OpenCL以及http的系统相链接的工具
- 编写并行程序的工具
- 当与互联网连接时,在笔记本中可同时使用“自由格式语言输入”(一个自然语言型的用户界面)[24]和Wolfram语言
筆記本界面
Mathematica分为两部分:内核和前端。内核对表达式(即Wolfram语言代码)进行解释,并且返回结果表达式。
前端由西奥多·格雷于1988年设计[25],它提供了一个允许用户创建并且编辑一个“笔记本文档”的GUI,该笔记本文档可以包含程序代码、格式化文本以及包括公式、图像、GUI组件、表格、声音在内的各种输出结果。所有的内容和格式都可以通过算法生成或者通过交互式方法进行编辑。其支持大多数标准文字处理功能,还含有一个多语种的实时拼写检查器。
文档可以使用层次式单元进行结构化处理,这样便于对文档划分章节。文档也可以表示为幻灯片形式,便于进行演讲。笔记本与其内容均以Mathematica表达式的形式存储,并且可用使用Mathematica程序进行创建、编辑和修改,而且还可以转化为其它格式,比如TeX或者XML。
前端包括开发工具,比如调试器、输入自动补全、以及自动语法着色。
默认情况下,Mathematica使用一个标准前端,不过也有其它前端可供选择,包括Wolfram Workbench、2006年引入的基于Eclipse的IDE。它们为Mathematica提供了面向项目的开发工具,包括版本管理、调试、归档和测试。[26]此外,Mathematica还包括一个命令行前端(Mathematica Kernel)。[27]
沃尔夫勒姆研究公司已经推出一系列初学者入门视频,介绍用户界面和引擎。[28]
高性能计算
近年来,Mathematica系统已经开始支持高性能计算。在Mathmatica 5.2版本中,它已经支持自动多线程计算[29]。2002年,gridMathematica (页面存档备份,存于互联网档案馆)的引入使得用户级的并行编程可以在不同的集群和多处理器系统中进行[30]在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代码。[31]此外,还有一个免费版本的Mathematica Player可以用来运行CDF格式的Mathematica程序;它也可以用来查看标准Mathematica文件,但是不能运行它们。
webMathematica的网页浏览器可以作为远程Mathematica服务器的一个“前端”。它允许用户在任何平台上远程访问编写好的应用程序。但是,它不允许用户完全访问Mathematica。
另外,第8版可以自动将Mathematica代码转换成可执行的C代码,这些自动生成的C代码可以在标准C编译器中进行编译,比如Intel C++ Compiler或者Visual Studio 2010的编译器。因此,从某种角度上,Mathematica代码的执行速度可以与C语言代码相媲美。
与其他应用的链接
Mathematica通过名为MathLink的协议与其它应用程序链接。通过该协议,Mathematica实现内核与前端的通讯,并且也提供了内核和其它应用程序之间的一个通用接口。
Mathematica不但本身具有丰富的功能,而且它也提供了大量接口用以访问其它软件,从而可以方便地调用那些其它软件具有但Mathematica暂时不具备的功能。这样做可以进一步增强Mathematica的适用性。
Wolfram Research发布了一个免费的开发工具包,该工具包允许C programming language编写的应用程序通过MathLink链接到 Mathematica内核[32]。
使用.NET/Link[33],任何一个.NET程序都可以调用Mathematica执行计算操作;相应地,Mathematica程序也可以加载.NET classes、操纵.NET对象并且执行方法调用。这样我们就可以从Mathematica内部构建.NET 图形用户界面。类似地,Mathematica也有J/Link[34]。顾名思义,它可以用于Mathematica与Java程序之间的交互。
与SQL数据库之间的通讯是通过内置的JDBC支持实现的。[35]Mathematica也可以从一个WSDL描述中安装网页服务。[36][37]
Mathematica支援生成和執行 Modelica系統建模的模型,並連線到Wolfram System Modeler.
連結也可用於許多第三方軟體包和API.[38]
Mathematica還可以從各種來源捕獲實時資料[39]並可以讀取和寫入公共區塊鏈 (Bitcoin, Ethereum, and ARK).[40]
它支援匯入和匯出220多個資料、影象、影片、聲音, 電腦輔助設計 (CAD), 地理信息系統 (GIS),[41]檔案和生物醫學格式。
其它与Mathematica相链接的语言包括Haskell[42]、AppleScript[43]、PLT Scheme[44]、Visual Basic[45]、Python[46] 和Clojure[47]。
在Mathematica和OpenOffice.org Calc[48]以及Microsoft Excel[49]之间有双向的链接。
Mathematica也提供了与许多专门的数学软件包之间的链接,包括MATLAB[50]、R语言[51][52]、SageMath[53][54]、SINGULAR[55]、MathModelica和Origin[56]。
Mathematica中的数学公式也可以与其它计算或者排版软件(比如MathML)的公式进行相互转换。
Mathematica可以通过多种方式捕获实时数据,比如与LabVIEW的链接[57],金融数据feeds [58],或者直接通过GPIB从硬件设备(IEEE 488)[59]、USB[60]以及串行接口[61]获取。
其他可用界面有JMath,[62]它基于GNU readline和MASH[63],并利用UNIX命令行运行内置的Mathematica程序(内含参数)。
可计算数据
Mathematica囊括了大量可立即计算的数据。用户可以通过编程访问这些数据,并且也可以通过Wolfram Research数据服务器自动更新数据[64]。某些数据如股票价格和天气数据都是实时递送的。目前数据集包括:
- 天文数据: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的产生是基于Cole和Wolfram早期的符号操作程序(SMP)的创意。[65][66]
Wolfram Research已经发布了如下Mathematica版本[67]:
|
参见
参考文献
- ^ Wolfram, Stephen, Mathematica Turns 20 Today, Wolfram, 2008-06-23 [2012-05-16], (原始内容存档于2011-10-02)
- ^ Bref historique des révisions de Mathematica. [2015年12月24日] (法语).
- ^ 3.0 3.1 3.2 https://www.wolfram.com/mathematica/quick-revision-history.html.
- ^ https://blog.wolfram.com/2019/04/16/version-12-launches-today-big-jump-for-wolfram-language-and-mathematica/.
- ^ In Less Than a Year, So Much New: Launching Version 12.1 of Wolfram Language & Mathematica. 2020年3月18日.
- ^ Launching Version 12.2 of Wolfram Language & Mathematica: 228 New Functions and Much More…. 2020年12月16日 [2020年12月16日].
- ^ Launching Version 12.3 of Wolfram Language & Mathematica. 2021年5月20日 [2021年5月21日].
- ^ Launching Version 13.0 of Wolfram Language + Mathematica.
- ^ Mathematica 13.0.1. Softpedia. 2022年2月17日.
- ^ Mathematica Quick Revision History. [2022年12月20日].
- ^ The Latest from Our R&D Pipeline: Version 13.2 of Wolfram Language & Mathematica. 2022年12月14日 [2022年12月20日].
- ^ Version 13.3 of Wolfram Language and Mathematica. 2023年6月28日 [2023年7月19日].
- ^ The Story Continues: Announcing Version 14 of Wolfram Language and Mathematica. 2024年1月9日 [2024年1月10日].
- ^ ContentsYet More New Ideas and New Functions: Launching Version 14.1 of Wolfram Language & MathematicaView All Release Announcements »Yet More New Ideas and New Functions: Launching Version 14.1 of Wolfram Language & Mathematica. 2024年7月31日.
- ^ https://writings.stephenwolfram.com/2025/01/launching-version-14-2-of-wolfram-language-mathematica-big-data-meets-computation-ai/; 出版日期: 2025年1月23日.
- ^ Celebrating Mathematica's First Quarter Century. [2015-08-11]. (原始内容存档于2015-12-22).
- ^ The Software Engineering of Mathematica—Wolfram Mathematica 9 Documentation (页面存档备份,存于互联网档案馆). Reference.wolfram.com. Retrieved on 2015-03-23.
- ^ Stephen Wolfram: Simple Solutions. Business Week. [2025-01-14]. (原始内容存档于2007-11-01).
- ^ Contact Wolfram Research. [2015-08-11]. (原始内容存档于2012-09-04).
- ^ Slate's article Stephen Wolfram's New Programming Language: He Can Make The World Computable, March 6, 2014. Retrieved on 2014-05-14.. [2015-02-09]. (原始内容存档于2016-04-01).
- ^ Mathematica documentation. [2010-12-21]. (原始内容存档于2008-09-07).
- ^ Mathematica 7 Programming Software Review. Macworld. [2025-01-14].
- ^ Mathematica 6 (Cadalyst Labs Review). Cadalyst. [2025-01-14]. (原始内容存档于2022-03-25).
- ^ The Free-Form Linguistics Revolution in Mathematica. [2010-12-21]. (原始内容存档于2011-07-26).
- ^ US8407580B2,Gray, Theodore W. & Stephen Wolfram,「Method and system for presenting input expressions and evaluations of the input expressions on a workspace of a computational system」
- ^ MacWorld review of Wolfram Workbench. [2010-12-21]. (原始内容存档于2006-07-02).
- ^ Using a Text-Based Interface—Wolfram Mathematica 9 Documentation. [2025-01-14]. (原始内容存档于2013-10-30).
- ^ Cliff Hastings. Wolfram Screencast & Video Gallery: Hands-on Start to Mathematica. wolfram.com. [2014-12-31]. (原始内容存档于2022-04-10).
- ^ The 21st annual Editors' Choice Awards. Macworld. 2006-02-01 [2025-01-14]. (原始内容存档于2009-01-12).
- ^ gridMathematica offers parallel computing solution. Macworld. 2002-11-20 [2025-01-14]. (原始内容存档于2005-12-02).
- ^ Mathematica Player Pro - new Application Delivery System for Mathematica. New Atlas. 2008-04-02 [2025-01-14] (美国英语).
- ^ 32.0 32.1 New Mathematica: faster, leaner, linkable and QuickTime-compatible: MathLink kit allows ties to other apps. MacWEEK. 1992-06-15 [2025-01-14]. (原始内容存档于2009-01-12).
- ^ Wolfram Research Connection Technologies: .NET/Link. [2025-01-14]. (原始内容存档于2010-09-09).
- ^ Charles Seiter. Mathematica 4.2: Feature-Rich Math Program Integrates with the Web, Adds Full Java Support. Macworld. 2002-11-01. (原始内容存档于2007-11-21).[失效連結]
- ^ Mathematica 5.1 Available — DatabaseJournal.com. www.databasejournal.com. [2025-01-14].
- ^ Mathematical Web Services: W3C Note 1 August 2003. [2010-12-21]. (原始内容存档于2022-01-20).
- ^ Introduction to Web Services - Wolfram Mathematica 8 Documentation. [2025-01-14]. (原始内容存档于2012-10-21).
- ^ Wolfram Documentation: ServiceConnect. [4 August 2021]. (原始内容存档于2023-04-08).
- ^ Vernier and Mathematica. [2023-04-08]. (原始内容存档于2019-05-29).
- ^ Working with blockchains. [15 April 2020]. (原始内容存档于2023-04-08).
- ^ Mathematica 6 (Cadalyst Labs Review). Cadalyst. [2025-01-14]. (原始内容存档于2022-03-25).
- ^ Haskell pakages. [2010-12-21]. (原始内容存档于2011-07-16).
- ^ Unisoftware plus. [2017-08-21]. (原始内容存档于2011-07-17).
- ^ MrMathematica website. [2010-12-21]. (原始内容存档于2011-06-05).
- ^ Mathematica for ActivX. [2010-12-21]. (原始内容存档于2011-07-17).
- ^ Pythonika MathLink module for Python. [2010-12-21]. (原始内容存档于2010-07-29).
- ^ 存档副本. [2010-12-21]. (原始内容存档于2011-07-18).
- ^ Andreas Lauschke Consulting. www.lauschkeconsulting.com. [2025-01-14] (英语).
- ^ Mathematica Link for Excel: Bringing the Power of Mathematica to Excel. www.wolfram.com. [2025-01-14].
- ^ MaMa: Calling MATLAB from Mathematica with MathLink -- from Wolfram Library Archive. library.wolfram.com. [2025-01-14].
- ^ R-Link. ScienceOps. [2025-01-14]. (原始内容存档于2010-11-21).
- ^ Using R Within Mathematica -- from Wolfram Library Archive. library.wolfram.com. [2025-01-14].
- ^ Calling Sage from Mathematica. [2010-12-21]. (原始内容存档于2012-07-08).
- ^ http://facstaff.unca.edu/mcmcclur/Mathematica/Sage/UsingSage.nb (页面存档备份,存于互联网档案馆) A Mathematica notebook to call Sage from Mathematica.
- ^ Manuel Kauers and Viktor Levandovskyy of the Johannes Kepler University in Austria
- ^ Interface Links Origin And Mathematica Software. [2025-01-14]. (原始内容存档于2007-03-20).
- ^ Mathematica Link for LabVIEW - Introduction. www.bettervi.com. [2025-01-14].
- ^ Lauschke Consulting. www.lauschkeconsulting.com. [2025-01-14] (英语).
- ^ Best Open Source Mac Mathematics Software 2025. sourceforge.net. [2025-01-14].
- ^ BTopTools for Mathematica Extends Data Acquisition Capabilities to the Lab Environment. www.wolfram.com. [2025-01-14].
- ^ Interfacing Hardware with Mathematica. [2010-12-21]. (原始内容存档于2021-02-24).
- ^ JMath website. [2011-06-07]. (原始内容存档于2022-04-07).
- ^ MASH website. [2011-06-07]. (原始内容存档于2011-07-09).
- ^ Scientific & Technical Data—Wolfram Mathematica 9 Documentation. reference.wolfram.com. [2025-01-14] (英语).
- ^ Math, the universe, and Stephen: the author of Mathematica created a whirlwind of scientific controversy this year when, after more than 10 years of research, he published his treatise on the ability of simple structures to create unpredictable complex patterns. (01-NOV-02) R & D. www.accessmylibrary.com. [2025-01-14].
- ^ Pollack, Andrew; Times, Special To the New York. A Top Scientist's Latest: Math Software. The New York Times. 1988-06-24 [2025-01-14]. ISSN 0362-4331 (美国英语).
- ^ Quick Revision History of Mathematica. [2010-12-22]. (原始内容存档于2010-09-05).
- ^ Mathematica Scrapbook: June 23, 1988: Mathematica 1.0 Is Launched!. www.wolfram.com. [2025-01-14].
- ^ http://www.mathematica-journal.com/issue/v9i1/news.html (页面存档备份,存于互联网档案馆) Mathematica Journal, Volume 9, Issue 1
- ^ Markoff, John. Supercomputer Pictures Solve the Once Insoluble. The New York Times. 1988-10-30 [2025-01-14]. ISSN 0362-4331 (美国英语).
- ^ 71.00 71.01 71.02 71.03 71.04 71.05 71.06 71.07 71.08 71.09 71.10 A little bit of Mathematica history. www.12000.org. [2025-01-14].
- ^ Mathematica 1.1. Biotechnology Software. Vogel, W. K.(1989)
- ^ Mathematica 1.2 adds new graphics options: upgrade also promises concurrent operations. (25-JUL-89) MacWEEK. www.accessmylibrary.com. [2025-01-14].
- ^ Mathematica + 283 functions = Mathematica 2.0. (15-JAN-91) MacWEEK. www.accessmylibrary.com. [2025-01-14].
- ^ New version of Mathematica. (technical calculation software) (Product Announcement). Mechanical Engineering-CIME. 1993-06-01.
- ^ Wolfram Research News Archive. www.wolfram.com. [2025-01-14].
- ^ Mathematica 4.0 Archive.is的存檔,存档日期2012-06-04 by Charles Seiters, Macworld,October 1, 1999.
- ^ Mathematica 5.0 Adds Up: Exactly 15 years after Mathematica's initial release, Wolfram Research has released Mathematica (页面存档备份,存于互联网档案馆),PC Magazine,September 3, 2003.
- ^ Factiva Search. moreresults.factiva.com. [2025-01-14].
- ^ Mathematica hits 64-bit (页面存档备份,存于互联网档案馆),MacWorld UK, July 13, 2005.
- ^ 2007 May—Wolfram Blog. blog.wolfram.com. 2007-05-29 [2025-01-14] (英语).
- ^ Mathematica 6 - Wolfram Research - Scientific Computing World. www.scientific-computing.com. [2025-01-14].
- ^ Mathematica 6.0.1 Arrives—Wolfram Blog. blog.wolfram.com. 2007-07-05 [2025-01-14] (英语).
- ^ 84.0 84.1 Wolfram Mathematica: Quick Revision History of Mathematica. www.wolfram.com. [2025-01-14].
- ^ 2008 November—Wolfram Blog. blog.wolfram.com. 2008-11-18 [2025-01-14] (英语).
- ^ MathGroup Archive: March 2009 [00118]. forums.wolfram.com. [2025-01-14].
- ^ Wolfram Research News » Mathematica 10.1 is Now Available!. company.wolfram.com. [2025-01-14].
- ^ Mathematica Latest Version and Quick Revision History. www.wolfram.com. [2025-01-14] (英语).
- ^ The R&D Pipeline Continues: Launching Version 11.1—Stephen Wolfram Writings. blog.wolfram.com. 2017-03-16 [2025-01-14] (英语).
- ^ Mathematica Latest Version and Quick Revision History. www.wolfram.com. [2025-01-14] (英语).
- ^ It’s Another Impressive Release! Launching Version 11.2 Today—Stephen Wolfram Writings. blog.internal.wolfram.com. 2017-09-14 [2025-01-14] (英语).
- ^ Roaring into 2018 with Another Big Release: Launching Version 11.3 of the Wolfram Language & Mathematica—Stephen Wolfram Writings. blog.wolfram.com. 2018-03-08 [2025-01-14] (英语).
- ^ Version 12 Launches Today! (And It’s a Big Jump for Wolfram Language and Mathematica)—Stephen Wolfram Writings. writings.stephenwolfram.com. 2019-04-16 [2025-01-14] (英语).
- ^ Wolfram Language & System Documentation Center. reference.wolfram.com. [2025-01-14] (英语).
- ^ 存档副本. [2021-11-18]. (原始内容存档于2021-11-18).
- ^ Mathematica Latest Version and Quick Revision History. [2022-10-09]. (原始内容存档于2022-10-09).
外部链接
- Wolfram Mathematica官方网站 (页面存档备份,存于互联网档案馆)
- Mathematica参考资料中心 (页面存档备份,存于互联网档案馆)
- Wolfram Research中文官方网站 (页面存档备份,存于互联网档案馆)
- Mathematica中文讨论 (页面存档备份,存于互联网档案馆)
- MathWorld Archive.is的存檔,存档日期2000-02-29
- Wolfram官方微博 (页面存档备份,存于互联网档案馆)
- 斯蒂芬·沃尔夫勒姆 著,赫孝良、周义仓 译:《Mathematica全书》,西安交通大学出版社,2002年
- 吴飞 著:《Mathematica演示项目笔记》,清华大学出版社,2010年