Mathematica
维基百科,自由的百科全书
Mathematica是由美国科学家斯蒂芬·沃尔夫勒姆领导的Wolfram Research开发的一个广泛使用的计算机代数系统。它拥有强大的数值计算和符号运算能力。它是目前为止使用最广泛的数学软件之一。
Wolfram公司从1986年开始开发Mathematica,1988年推出第1版。现在的版本是5.2。Mathematica现在已经推出了小波分析程序包、图像处理程序包和工程程序包等多种程序包。程序包在Mathematica中称为Package。
Mathematica 可以使用于多个不同的系统上, 支持大量的范围广泛的运算符,图形和层的扩展功能。
Mathematica 系统包括一个可以计算有限用户输出的“核心”,并可以工作于网络之上。
【備註】:Mathematica同時也為Wolfram公司的註冊商標。
目录 |
[编辑] Mathematica 代码例子
In[1]:= Det@ReplaceAll[Table[i j, {i,0,5}, {j,0,5}],{0->1}] Out[1]:= 0
[编辑] Overview
Wolfram 和他的工作團隊在1986年開始進行研發Mathematica而Mathematica1.0在1988年的一月23日正式發行。Mathematica是一套可以應用在相當廣泛的作業系統之中。而Mathematica6.0將在2007發行。
Mathematica程序设计语言以“条目重写”为基础,并支持按函数或过程编程(尽管一般来说按照函数编程更为高效)。它植入了C语言面向对象的变量,但是大部分的外部代码库实际上是由Mathematica语言写成,从而能够对系统进行进一步扩展。Mathematica的一项特色是,新的代码是以包(Package)的形式添加的,比如在Mathematica语言中的文本文件。
[编辑] Advantage
Mathematica makes laying out computations very easy. For example, users may re-evaluate code by clicking on it and hitting shift-enter. Users may re-evaluate hierarchically-nested blocks of code by clicking on a set of braces and hitting shift-enter. This makes Mathematica ideal for tasks such as doing homework, so one error early in a computation can be fixed easily and the intermediate computations automatically redone. Compare this with Matlab's UNIX-shell approach, where redoing calculations requires finding them in your history and recopying them.
Additionally, Mathematica is able to handle arbitrary-precision numbers and rational numbers, as compared to other mathematics programs such as Matlab, Excel, and most standard programming languages.
Additionally, the learning curve of Mathematica is very easy; the help documents are well-written and organized as compared to other computer math software.
Mathematica also has very generalized functions (for example, an outer product which takes any type of function), as well as a great variety of functions. As a higher-level multi-paradigm programming language, it requires much less code than most programming languages in order to write the same thing.
[编辑] 特色
Mathematica的許多特色包含有:
- 一個個的運算單元,減少計算的錯誤
- 許多內建包裝好的特殊的函式,例如線性代數, 排列組合, 圖像操作, 繪圖, 等等.
- A LISP-like generality, with the ability to pass expressions and hold expressions unevaluated
- Rewrite-rules as the building-block of the language, so one can for example replace all instances of arbitrarily complex terms with other terms (e.g. "plugging in values" for calculations, or changing an image/graph on-the-fly by modifying its code)