Differences between revisions 16 and 19 (spanning 3 versions)
Revision 16 as of 2005-07-11 22:27:57
Size: 21939
Editor: sic002c-hr
Comment:
Revision 19 as of 2006-04-09 22:15:04
Size: 19141
Editor: 200
Comment:
Deletions are marked like this. Additions are marked like this.
Line 106: Line 106:
  * Fftw-numpy
  [http://pylab.sourceforge.net/ [details]]
  [http://pylab.sourceforge.net/packages/fftw-numpy-0.6.2.tar.gz [source]]

  Fftw-numpy is a generic wrapping of the FFTW-2.1.3 C-library into
  Python done using SWIG. FFTW is advertised as a very fast
  implementation of the FFT and I believe it lives up to its
  billing. It has support for arbitrary N-dimensional arrays as well
  as fast real-to-complex FFT's. As part of the package, I have
  included a module called FFT2 that can act as a drop-in replacement
  for FFT in NumPy (except there is no real-to-complex transform
  yet). There is also a benchmark script that shows that FFT2 is about
  18-25% faster than fftpack (at least on pentium machines). There is
  also support for arbitrary multidimensional transforms (not just
  2-D). (Travis Oliphant)
  * SciPy -- http://www.scipy.org
Line 131: Line 117:
  * Signaltools
  [http://pylab.sourceforge.net/ [details]]
  [http://pylab.sourceforge.net/packages/signaltools-0.5.3.tar.gz [source]]

  A work in progress toolbox intended to contain most of the signal
  processing functionality available in other array-oriented systems
  like MATLAB. the included routines are fast N-D convolution and N-D
  correlation procedures for use when filtering big datasets with
  small kernels and a fast N-D order statistic filter routine. (A
  median filter is an example of an order-filter and is also
  included). There is also a routine to filter along an arbitrary
  dimension of an N-D array with a rational transfer function filter
  (like the filter function in MATLAB) and a remez-exchange algorithm.
  Recently added are an N-D median filter and an N-D wiener filter.
  (Travis Oliphant)
Line 167: Line 137:
  * Multipack
  [http://pylab.sourceforge.net/ [details]]
  [http://pylab.sourceforge.net/ [source]]

  A collection of FORTRAN routines interfaced with NumPy. There are
  modules for special function evaluation, signal and image
  processing, and modules that wrap common FORTRAN functions from
  ODEPACK, MINPACK, and QUADPACK. (Travis Oliphant)
  * SciPy -- http://www.scipy.org
Line 206: Line 169:
==== Linear Programming ==== ==== Mixed Integer and Linear Programming ====
Line 216: Line 179:
  Lp_solve5 (5.1 and %.5) - New one, NO python binding yet. Volunteers needed for python binding.
  [http://groups.yahoo.com/group/lp_solve/]
  It has CPLEX, LINDO, AMPL/MathProg, etc. formats.

  * GLPK (GNU Linear Programming Kit)
  [http://www.gnu.org/software/glpk/glpk.html]
  Has python binding for 4.7 but not for 4.8. No debian packages
  [http://rpm.pbone.net/index.php3/stat/4/idpl/1709746/com/python-glpk-0.4-2mdk.i586.rpm.html]

  * optimize
  [http://pylab.sourceforge.net/ [details]]
  FIXME broken link (netpedia.net is gone...)
   http://oliphant.netpedia.net/packages/optimize.py [source]
   ((is it this ?: [http://pylab.sourceforge.net/packages/optimize.py http://pylab.sourceforge.net/packages/optimize.py] ))

  A module containing optimization algorithms written in pure
  Python. Currently it contains implementations of the Nelder-Mead
  simplex algorithm, the Broyden-Fletcher-Goldfarb-Shanno (BFGS)
  quasi-Newton algorithm, and a line-search conjugate-gradient Newton
  algorithm for minimizing a function of many variables. (Travis
  Oliphant)

  * pySimplex ((FIXME both links broken !?))
  [http://www.pythonpros.com/arw/pysimplex/ [details]]
  [http://www.pythonpros.com/arw/pysimplex/pysimplex.tgz [source]]
  * Lp_solve5 (5.1 and 5.5) Mixed Integer Programming (MIP) and LP - New ones, NO python binding yet. Volunteers needed for python bindings.
  [http://groups.yahoo.com/group/lp_solve/ [details]]
  [http://groups.yahoo.com/group/lp_solve/ [source]]
  CPLEX, LINDO, AMPL/MathProg, LP etc. formats supported. (Noli Sicad)

  * GLPK (GNU Linear Programming Kit) MIP and LP
  [http://www.gnu.org/software/glpk/glpk.html [details]]
  [http://www.gnu.org/software/glpk/glpk.html [source]]
    Python bindings [http://rpm.pbone.net/index.php3/stat/4/idpl/1709746/com/python-glpk-0.4-2mdk.i586.rpm.html [source]]
  Has python bindings for 4.7 and can be used for 4.8. No debian package (use RPM then Alien for debian)
  CPLEX, LINDO, AMPL/MathProg, LP etc. formats supported as well. (Noli Sicad)

  * SciPy -- http://www.scipy.org

  * pySimplex
  [http://starship.python.net/crew/aaron_watters/pysimplex/ [pysimplex]]
  [http://www.pythonpros.com/arw/pysimplex/ [details]] (broken link)
  [http://www.pythonpros.com/arw/pysimplex/pysimplex.tgz [source]] (broken link)
Line 257: Line 213:
Line 272: Line 227:
  * SparsePy
  [http://pylab.sourceforge.net/ [details]]
  [http://pylab.sourceforge.net/packages/SparsePy-0.1.tar.gz [source]]

  A module that implements a sparse matrix class for Python. The
  attributes of the class are Numeric arrays and the methods are based
  on the included toolkits SPARSEKIT2 by Yousef Saad (in FORTRAN) and
  SuperLU (in C) by Xiaoye Li and Jim Demmel. Note: You need the BLAS
  library (in LAPACK at netlib or from your vendor) and a FORTRAN
  compiler to compile this package. (The binary for Linux just needs
  Python and NumPy). (Travis Oliphant)
  * SciPy -- http://www.scipy.org
Line 437: Line 382:
  * Quadrature
  [http://pylab.sourceforge.net/ [details]]
  [http://pylab.sourceforge.net/packages/quadrature.py [source]]

  A module that allows one to perform Gaussian Quadrature (numerical integration) over a finite interval for arbitrary Python functions.
  (Travis Oliphant)
  * SciPy -- http://www.scipy.org
Line 495: Line 435:

  * Cephesmodule
  [http://pylab.sourceforge.net/ [details]]
  [http://oliphant.netpedia.net/packages/cephes-1.2.tar.gz [source]]

  A module patterned after the umath (ufuncs) module that comes with
  Numerical Python; it makes most of the special functions (like
  elliptic, and modified Bessel) from the cephes and amos libraries
  available to python. (Travis Oliphant)
  * SciPy -- http://www.scipy.org
Line 506: Line 438:
Line 520: Line 451:
  * Rpy
  [http://rpy.sourceforge.net/ [details]]
  [http://rpy.sourceforge.net/ [source]]
  RPy is a very simple, yet robust, Python interface to the R Programming Language.
  [http://www.r-project.org/ [source]]. It can manage all kinds of R objects and can execute arbitrary R functions (including the graphic functions). All errors from the R language are converted to Python exceptions. Any module installed for the R system can be used from within Python. (Noli Sicad)

  * SciPy -- http://www.scipy.org

The following are links to scientific software libraries that have been recommended by Python users.

This page lists a number of packages related to numerics, number crunching, signal processing, financial modeling, linear programming, statistics, data structures, date-time processing, random number generation, and crypto.

Data Structures

Date/Time

FFT

Finance

Interface

Mixed Integer and Linear Programming

Matrix/Vector

Music

  • ratio

    [http://www.execpc.com/~wsannis/ratio.html [details]] [http://www.execpc.com/~wsannis/ratio.py.txt [source]] For those who are big fans of Just Intonation, one tedious aspect of this is that you end up fondling ratios a lot. The math gets boring after a while, though I do believe you should be able to do the math on your own to get a feel for what it is you're doing. Having said that, I decided I needed some help because I got sick of reducing multiplied ratios. I've written a quick Python module, ratio.py, which handles a lot of the tedium. In particular, building up JI tetrachords and scales based on justly intuned chords or by katapyknosis is pretty simple with this module. (William Annis)

Neural Networks

Number Theory

Numerics

Other Tools

Random Number Generators

  • ccrandom

    [http://www.ccraig.org/software [details]] [http://www.ccraig.org/software/ccrandom.py [source]] This module is mostly compatible with Python's random module, but uses Linux or BSD's /dev/urandom device to generate numbers, thus yielding more random output than the default Python module. (Christopher A. Craig)

  • crng ((FIXME: both links broken))

    [http://www.sbc.su.se/~per/crng [details]] [http://www.sbc.su.se/~per/crng/crng-1.1.tar.gz [source]] The Python module crng implements random-number generators (RNGs) based on several different algorithms producing uniform deviates in the open interval (0,1), i.e. exclusive of the end-point values 0 and 1. A few continuous and integer-valued non-uniform deviates are also available. Each RNG algorithm is implemented as a separate Python extension type. The RNG types are independent of each other, but have very similar interfaces. The entire module is implemented as one single C source code file. (Per J. Kraulis)

  • MTRand ((FIXME: both links broken))

    [http://www.dorb.com/darrell/randomNumber/ [details]] [http://www.dorb.com/darrell/randomNumber/Rand.zip [source]] Mersenne Twister random number generator. Far longer period and far higher order of equidistribution than any other implemented generators. Fast generation and efficient use of memory. (Darrell Gallion)

Special Functions

Statistics

For more information on related numeric packages, see the [http://www.python.org/pypi Python Package Index].

NumericAndScientific/Libraries (last edited 2014-05-26 15:03:26 by PaulBoddie)

Unable to edit the page? See the FrontPage for instructions.