What applied topology software options do I have?
This list undoubtably has unintentional omissions; please email Henry with updates to this list!
This list was originally created to accompany the tutorial https://github.com/henryadams/Charleston-TDA-ML for the NSF-CBMS Conference and Software Day on Topological Methods in Machine Learning and Artificial Intelligence.
- Mapper
- Ayasdi.
- giotto-tda is a library combining applied topology software with machine learning algorithms.
- Mapper Interactive. A web-based framework for interactive analysis built upon the Mapper algorithm.
- Scikit-TDA: Kepler Mapper. A flexible Python implementation of the Mapper algorithm.
- TDA Mapper. An R package for using the Mapper algorithm.
- Python Mapper. A python implementation of the Mapper algorithm.
- Persistent homology
- CHomP. Computational Homology Project. C++; Cubical homology.
- DIPHA. A Distributed Persistent Homology Algorithm; C++.
- Dionysus and Dionysus 2. Dionysus is a C++ library for computing persistent homology, equipped with python bindings. It provides implementations of the following algorithms: persistent (co)homology, vineyards, zigzag persistence, etc.
- Eirene. Julia platform for computational topology.
- Javaplex. Java and Matlab code, equipped with a tutorial with real-life data examples.
- giotto-tda is a library combining applied topology software with machine learning algorithms.
- GUDHI. The GUDHI library is a generic open source C++ library, with a Python interface, for Topological Data Analysis (TDA) and Higher Dimensional Geometry Understanding. The library offers state-of-the-art data structures and algorithms to construct simplicial complexes and compute persistent homology. The library comes with data sets, demos, examples and test suites.
- Perseus. A C++ software project for the rapid computation of persistent homology. Includes cubical and simplicial complexes.
- PHAT. C++ code.
- R-TDA. Tools for the statistical analysis of persistent homology and for density clustering. For that, this package provides an R interface for the efficient algorithms of the C++ libraries GUDHI, Dionysus, and PHAT. This package also implements methods for analyzing the statistical significance of persistent homology features.
- Scikit-TDA. A home for Topological Data Analysis Python libraries intended for non-topologists. This project aims to provide a curated library of TDA Python tools that are widely usable and easily approachable. Contains Ripser.py as one subcomponent.
- Ripser: efficient computation of Vietoris-Rips persistence barcodes. It is possible to run a beginner's version of Ripser in your html browser, for which no installation is required.
- Ripser++: a GPU-accelerated version of Ripser
- Rivet. Extends the usual persistent homology pipeline for topological data analysis to the two-parameter setting.
- SimBa. C++ software for approximating Rips filtration persistence via simplicial batch-collapse.
- Vectorizations of persistent homology
- Persistence Landscape Toolbox. Code for computing persistence landscapes.
- Persistence Images
- Scikit-TDA: PerSim. A Python package for many tools used in analyzing Persistence Diagrams, including persistence images, bottleneck distance, sliced Wasserstein kernel, and then heat kernel.
- CSU-TDA: PersistenceImages in Python. A Python package for persistence images.
- CSU-TDA: PersistenceImages in Matlab. A Matlab package for persistence images.
- PersistenceImage.jl. A Julia implementation of persistence images.
- Other
- CliqueTop. Topological data analysis tools for cross correlation matrices and neuroscience.
- Hera. Contains fast C++ code for distances between barcodes.
- Flagser. Computing homology of directed flag complexes (based on Ripser).
- Time series analysis with TDA. Also contains python wrappers to various persistent homology software packages.
- Topology ToolKit.
- SimPers. C++ software for topological persistence under simplicial maps.
- UMAP. Uniform Manifold Approximation and Projection.
- In September 2019 I gave a survey talk on the above software available at the time; see the video and my slides.
- Similar software lists are kept by Peter Bubenik, Chad Giusti, and this survey paper.