Qhull computes convex hulls, Delaunay triangulations, halfspace
intersections about a point, Voronoi diagrams, furthest-site Delaunay
triangulations, and furthest-site Voronoi diagrams. It runs in 2-d,
3-d, 4-d, and higher dimensions. It implements the Quickhull algorithm
for computing the convex hull. Qhull handles roundoff errors from
floating point arithmetic. It computes volumes, surface areas, and
approximations to the convex hull.
Paraphrasing the website:
Gato - the Graph Animation Toolbox - is software [toolkit] which visualizes
algorithms on graphs.
- Graphs are mathematical objects consisting of vertices, and edges
connecting pairs of vertices.
- Algorithms might find a shortest path - the fastest route - or a minimal
spanning tree or solve one of other interesting problems on graphs:
maximal-flow, weighted and non-weighted matching and min-cost flow.
- Visualisation means linking cause - the statements of an algorithm -
immediately to an effect - changes to the graph the algorithm has as its
input - by terms of blinking, changing colors and other visual effects.
CGAL is a collaborative effort of several sites in Europe and Israel. The goal
is to make the most important of the solutions and methods developed in
computational geometry available to users in industry and academia in a C++
library. The goal is to provide easy access to useful, reliable geometric
algorithms.
The CGAL library contains:
* the Kernel with geometric primitives such as points, vectors, lines,
predicates for testing things such as relative positions of points, and
operations such as intersections and distance calculation.
* the Basic Library which is a collection of standard data structures and
geometric algorithms, such as convex hull in 2D/3D, (Delaunay)
triangulation in 2D/3D, planar map, polyhedron, smallest enclosing
circle, and multidimensional query structures.
* the Support Library which offers interfaces to other packages, e.g., for
visualisation, and I/O, and other support facilities.
Graphillion is a Python software package on search, optimization, and
enumeration for a graphset, or a set of graphs.
- Lightweight data structures for handling x-illions of graphs
- Search, optimization, and enumerate large and complex graph sets
- Efficient implementation extending Python with C/C++
- Working with existing graph tools like NetworkX
- Open source MIT license
- Well tested: more than 600 unit tests
- Fast prototyping, easy to teach, and multi-platform
matplotlib is a python 2D plotting library which produces publication quality
figures using in a variety of hardcopy formats (PNG, JPG, PS, SVG) and
interactive GUI environments (WX, GTK, Tkinter) across platforms. matplotlib
can be used in python scripts, interactively from the python shell (ala matlab
or mathematica), in web application servers generating dynamic charts, or
embedded in GTK, Tk or WX applications; see backends.
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.
The fundamental package needed for scientific computing with Python is
called NumPy. This package contains:
* a powerful N-dimensional array object
* sophisticated (broadcasting) functions
* basic linear algebra functions
* basic Fourier transforms
* sophisticated random number capabilities
* tools for integrating Fortran code.
NumPy derives from the old Numeric code base and can be used as a
replacement for Numeric. It also adds the features introduced by numarray
and can also be used to replace numarray.
Note: Development for Numeric has ceased, and users should transisition to
NumPy as quickly as possible.
pandas is a Python package providing fast, flexible, and expressive
data structures designed to make working with "relational" or
"labeled" data both easy and intuitive. It aims to be the
fundamental high-level building block for doing practical, real
world data analysis in Python.
pyfst provides a Python interface to the excellent OpenFst library.
Most of the essential functionality of the library is exposed through a
simplified API, allowing quick prototyping of algorithms using finite-state
methods and easy visual debugging of the results obtained by applying
FST operations.
SpeedCrunch is a multiplatform desktop calculator for power users.
It is designed to be enjoyed using keyboard. Result is shown in
scrollable display, history of expressions is available with up
and down arrow.
Some other features:
optional keypad, syntax highlight, matched parenthesis indicator,
just-in-time calculation (show result even before you finish typing)
and autocomplete for variables.