数字工具

Sage有许多不同的组件,可能对数值分析有用。特别值得一提的是三个包,它们是numpy、SciPy和cvxopt。Numpy是一个非常好的包,它为python提供了快速数组功能。它包括一些基本的线性代数例程、向量化数学例程、随机数生成器等。它支持类似于matlab的编程风格,并且大多数matlab技术都在numpy中有类似的编程风格。SciPy建立在numpy的基础上,为优化、寻根、统计、线性代数、插值、FFT和dsp工具等提供了多种不同的软件包。最后,cvxopt是一个能够解决线性和二次规划问题的优化包,并且具有良好的线性代数接口。现在我们将在每个包上花费更多的时间。

在我们开始之前,让我们指出http://www.scipy.org/NumPy_for_Matlab_用户,对matlab和numpy进行了比较,并给出了numpy等价的matlab命令。如果你不熟悉matlab,那很好,甚至更好,这意味着你不会有任何预先设想的东西应该如何工作的概念。还有这个http://www.scipy.org/Wiki/Documentation?action=AttachFile&do=get&target=scipy_教程.pdf是一个关于SciPy和numpy的非常好的教程,比我们的更全面。