This site is devoted to mathematics and its applications. Created and run by Peter Saveliev.

Homology software

From Mathematics Is A Science
Jump to navigationJump to search

The software listed below compute homology groups of cell complexes, simplicial complexes etc in a variety of applied scenarios, including persistence.

Unfortunately, most of them are purely academic: poor documentation, no support, etc. Proceed at your own risk. The commercial ones are Alpha Shapes by GeoMagic and Iris by Ayasdi.


Computational Homology Project, Rutgers University and Computer Assisted Proofs in Dynamics group, Jagiellonian University, Krakow, Poland

CHomP runs on Windows and consists of 38 individual programs for homology computations in n-dimensions. CHomP can compute the Betti numbers and homology of a simplicial and cubical complexes as well as the maps induced in homology. All the algorithms are also explained in detail in Computational Homology by Kaczynski, Mischaikow, and Mrozek.



CompTop, Stanford University

PLEX is a set of routines written for MATLAB, developed by Vin de Silva at Stanford University with the help of Gunnar Carlson. Plex computes the Betti numbers of simplicial complexes as well as the Betti numbers of maps. One may only enter data as a list of vertices. After defining an epsilon value (similar to the alpha-value in persistent homology), PLEX calculates the appropriate edges for the vertex set.

jPlex is a new version of PLEX written in Java. Persistent homology is computed for point clouds or filtrations of simplicial complexes.


Alpha Shapes

BioGeometry, Duke University

The package consists of several programs (Pdb2alf, Delcx, Mkalf, Alvis, Volbl) by the National Center for Supercomputing Applications and the Department of Computer Science at the University of Illinois at Urbana-Champaign. This program runs only in Linux/Unix/Sun. These programs have been used in the study of proteins, and have also been modified for commercial use in surface reconstruction by Geomagic.

Alpha Shapes can compute the Betti numbers of a simplicial complex, but only in dimension three. For the purpose of computing the Betti numbers, this software has a weakness in that you can only look at one Betti number at a time. This means that if you want to look at how the Betti number change as alpha grows (see Persistent homology), you must enter the values in another program by hand.


Computational Geometry Algorithms Library

This is a geometry software package created as a collaborative effort from several sites in Europe and Israel. CGAL is basically code to be used in C++ under IRIX/Linux/Unix/Windows. CGAL does not directly compute homology, but can provide the tools necessary to compute triangulations and alpha complexes from which homology can easily be calculated incrementally. However, CGAL can only be used in dimensions two and three.

GAP homology package


It runs only on Linux/Unix. The two purposes behind this project were to implement efficient algorithms for the calculation of Smith Normal Forms of sparse matrices with integer entries and simplicial homology of simplicial complexes. Three uses have been suggested for this program. 1. Calculation of homology groups for a large, complex simplicial complex. 2. Calculation of homology for many small simplicial complexes. 3. Use as a teaching aide in homology course.



A topology package for Maple.



To be investigated...

Image analysis software

Of course, Pixcavator is also homology software, for 2D. Same applies to parts of ImageJ and others from this list of image analysis software. Some on that list claim 3D image analysis, but... you can't analyze tunnels without homology.