Note
Dionysus 2 is now available.
Dionysus is a C++ library for computing persistent homology. It provides implementations of the following algorithms:
Vineyards [CEM06] (C++ only)
Persistent cohomology computation (described in [dSVJ09])
Zigzag persistent homology [CdSM09]
Examples provide useful functionality in and of themselves:
Alpha shape construction in 2D and 3D
Cech complex construction (C++ only)
Todo
Document more examples.
Note
A Practical Guide to Persistent Homology (Dionysus edition)
and accomapnying examples
may be
a good place to get familiar with the library.
The C++ API is currently very poorly documented. One’s best source for its
documentation is its usage in various Examples (located in
examples/
).
The Python bindings provide both a simple interface to the low-level C++ functionality as well as high-level auxilliary routines. Their “thinness” is meant to provide the efficiency benefits of C++ together with the simplicity, elegance, and interactivity of Python. Since they mimick the C++ functionality, their documentation may be a helpful resource for the latter.
Download the software, or read a Brief Tutorial to get acquainted with its structure.
The library is distributed under the GPL license.