PRNG is a collection of portable, high-performance ANSI-C implementations of
pseudorandom number generators such as linear congruential, inversive
congruential, and explicit inversive congruential random number generators (LCG,
ICG and EICG, respectively) created by Otmar Lendl and Josef Leydold.
pure-mpfr makes the MPFR multiprecision floats (henceforth referred to as
mpfr numbers or values) available in Pure, so that they work with the other
types of Pure numbers in an almost seamless fashion.
SVGMath is a command-line utility to convert MathML expressions
to SVG, written entirely in Python.
pure-rational provides additional operations on the rational number type
provided by the math.pure module in the standard library.
The cdecimal is a fast drop-in replacement for the decimal module in Python's
standard library. Both modules provide complete implementations of the General
Decimal Arithmetic Specification.
Typical performance gains are between 30x for I/O heavy benchmarks and 80x for
numerical programs. In a database benchmark, cdecimal exhibits a speedup of
12x over decimal.py.
decimal cdecimal speedup
pi 42.75s 0.58s 74x
telco 172.19s 5.68s 30x
psycopg 3.57s 0.29s 12x
All Python versions from 2.5 up to 3.2 are supported. For the few remaining
differences, read the cdecimal documentation. cdecimal has been included in
Python-3.3.
Gnuplot.py is a Python package that interfaces to gnuplot, the popular plotting
program. It allows you to use gnuplot from within Python to plot arrays of data
from memory, data files, or mathematical functions. If you use Python to
perform computations or as `glue' for numerical programs, you can use this
package to plot data on the fly as they are computed. And the combination with
Python makes it is easy to automate things, including to create crude
`animations' by plotting different datasets one after another.
Commands are communicated to gnuplot through a pipe and data either through
the same pipe (as "inline" data) or through temporary files. It has been
written and tested on a Unix computer.
This package has an object-oriented design that allows the user flexibility to
set plot options and to run multiple gnuplot sessions simultaneously. If you
are more ambitious, it is not difficult to add entirely new types of plottable
items by deriving from the `PlotItem' class.
For a demonstration, run the python file by typing `python demo.py'.
Python interface to GNU Scientific Library
MathDOM is a set of Python modules (using PyXML or
lxml, and pyparsing) that import mathematical terms
as a Content MathML DOM. It currently parses MathML
and literal infix terms into a DOM document and writes
out MathML and literal infix/prefix/postfix/Python
terms. The DOM elements are enhanced by domain specific
methods that make using the DOM a little easier.
Implementations based on PyXML and lxml/libxml2 are
available.
The Numeric Extensions to Python give Python the number crunching
power of numeric languages like Matlab and IDL while maintaining all of the
advantages of the general-purpose programming language Python.
These extensions add two new object types to Python, and then include a
number of extensions that take advantage of these two new objects.
* Multidimensional Array Objects
+ Efficient arrays of homogeneous machine types
+ Arbitrary number of dimensions
+ Sophisticated structural operations
* Universal Function Objects
+ Supports mathematical functions on all python objects
+ Very efficient for Array Objects
* Simple interfaces to existing numerical libraries:
+ Linear Algebra (LAPACK)
+ Fourier Transforms (FFTPACK)
+ Random Numbers (RANLIB)
_____________
Note: Development for Numeric has ceased, and users should transisition to
NumPy as quickly as possible.
plasTeX is a LaTeX document processing framework written entirely in Python. It
currently comes bundled with renderers for XHTML, DocBook, man pages, plain
text, as well as a way to simply dump the document to a generic form of XML.
Other renderers can be added as well and are planned for future releases.