Python科学计算库演示

时间:2022-08-02 00:01:50

号码值计算基础

NumPy至Python提供了高速的多维数组处理的能力。而SciPy则在NumPy基础上加入了众多的科学计算所需的各种工具包,有了这两个库,Python就有差点儿和Matlab一样的处理数据和计算的能力了。

NumPy和SciPy官方网址: http://www.scipy.org

NumPy为Python带来了真正的多维数组功能。而且提供了丰富的函数库处理这些数组。

它将经常使用的数学函数都进行数组化,使得这些数学函数可以直接对数组进行操作,将本来须要在Python级别进行的循环。放到C语言的运算中。明显地提高了程序的运算速度。

SciPy的核心计算部分都是一些久经考验的Fortran数值计算库,比如:

  • 线性代数使用LAPACK库
  • 高速傅立叶变换使用FFTPACK库
  • 常微分方程求解使用ODEPACK库
  • 非线性方程组求解以及最小值求解等使用MINPACK库

符号计算库

SymPy是一套进行符号数学运算的Python函数库。尽管它眼下还没有到达1.0版本号,可是已经足够好用,能够帮助我们进行公式推导,进行符号求解。

SymPy官方网址: http://code.google.com/p/sympy

界面设计

制作界面一直都是一件十分复杂的工作,使用Traits库。你将再也不会在界面设计上耗费大量精力,从而能把注意力集中到怎样处理数据上去。

Traits官方网址: http://code.enthought.com/projects/traits

Traits库分为Traits和TraitsUI两大部分,Traits为Python加入了类型定义的功能,使用它定义的traits属性具有初始化、校验、代理、事件等诸多功能。

TraitsUI库基于Traits库。使用MVC结构高速地定义用户界面,在最简单的情况下,你甚至不须要写一句关于界面的代码,就能够通过traits属性定义获得一个能够工作的用户界面。

使用TraitsUI库编写的程序自己主动支持wxPython和pyQt两个经典的界面库。

画图与可视化

Chacomatplotlib是非常优秀的2D画图库,Chaco库和Traits库紧密相连,方便制作动态交互式的图表功能。

而matplotlib库则可以高速地绘制精美的图表、以多种格式输出。而且带有简单的3D画图的功能。

Chaco官方网址: http://code.enthought.com/projects/chaco

matplotlib官方网址: http://matplotlib.sourceforge.net

TVTK库在标准的VTK库之上用Traits库进行封装。假设要在Python下使用VTK,用TVTK是再好只是的选择。Mayavi2则在TVTK的基础上再加入了一套面向应用的方便工具。它既能够单独作为3D可视化程序使用,也能够高速地嵌入到用户的程序中去。

Mayavi2官方网址: http://code.enthought.com/projects/mayavi

VTK(Visualization Toolkit)

视觉化工具函式库(VTK, Visualization Toolkit)是一个开放源代码,跨平台、支援平行处理(VTK曾用于处理大小近乎1个Petabyte的资料,其平台为美国Los Alamos国家实验室全部的具1024个处理器之大型系统)的图形应用函式库。2005年实曾被美国陆军研究实验室用于即时模拟俄罗斯制反导弹战车ZSU23-4受到平面波攻击的情形,其计算节点高达2.5兆个之多。 -- 摘自*

此外。使用Visual库可以高速、方便地制作3D动画演示,使你的数据结果更有说服力。

Visual官方网址: http://vpython.org

图像处理和计算机视觉

OpenCV是由英特尔公司发起并參与开发,以BSD许可证授权发行。能够在商业和研究领域中免费使用。OpenCV可用于开发实时的图像处理、计算机视觉以及模式识别程序。OpenCV提供的Python API方便我们高速实现算法。查看结果而且与其他库进行数据交换。

版权声明:本文博主原创文章,博客,未经同意不得转载。