Mathematica 9 is now available

1.12.3 Mathematica 的算法

Mathematica 的内部函数实现计算机学科和数学中的大量算法.基中一些算法 是很老的.但大多数算法必须被创建或至少被专门修改才能用于 Mathematica . 在 Mathematica 中更多的数学算法最终进行在过去的某些 时间被手工执行的运算.然而,在几乎所有的情形,这些算法使用的方法 完全不同于那些平常在手工计算中的方法.
符号积分提供了一个例子.在手工计算中,符号积分通过大量的涉及变量替换 等的技巧来进行.
但在 Mathematica 中,符号积分由相当少的非常系统化的程序来进行. 对于不定积分,这些程序的思想是找出积分的最一般形式,然后对其 微分求出待定的系数.
这个程序常常在中间阶段产生大量复杂的代数表达式,有时是非常复杂类型的 数学函数.但这个程序的优点是它是完全系统化的,其运算不需要特殊的 只有人类才能提供的智慧.
因此,在 Mathematica 做积分时,可以相信它将规则地获得结果,但不能期望 导出这些结果的方法与手工导出它们的方法非常相同.对于 Mathematica 中的 大多数数学算法这同样是对的,一个显著的特征是即使对描述起来很简单的运算, 在 Mathematica 中执行该运算的系统算法也涉及到相当高深的数学或计算 上的概念.例如,对 x 的多项式进行因式分解,首先以一个质数为模,找出 通过按该模化简 x 的高次幂得到的矩阵和最初的多项式的零空间,然后, 使用代数和分析中错综复杂的定理,按该质数的幂依次 "移动" 模获得整数 的因子.
强有力的系统化算法的使用在使 Mathematica 的内部函数能处理困难的和一 般的情况中是重要的. 但对于实际问题中相当常见的简单情况,常常可能使用更简单、 更有效的算法.
因此,Mathematica 内部函数常常有大量的处理各种特殊情况的附加部分. 这些附加部分可能使内部代码的复杂度增加了许多,常常把本来可能是 5 页 的算法导成数百页长.
Mathematica 中的大多数算法,包括所有特殊的情形,由手工明确构造, 但一些算法由计算机自动地创建.许多数学函数的机器精度的数值计算就是例子. 这种算法的主要部分是尽可能短的但产生最好的数值近似的公式. 使用在 Mathematica 中的大多数这仲公式实际上由 Mathematica 自己导出. 导出 公式的运算常常需要几个月的时间,但结果是能被用来以最优的方式计算函数 的短小公式.



Any questions about topics on this page? Click here to get an individual response.Buy NowMore Information
THIS IS DOCUMENTATION FOR AN OBSOLETE PRODUCT.
SEE THE DOCUMENTATION CENTER FOR THE LATEST INFORMATION.