summaryrefslogtreecommitdiff
path: root/README.md
diff options
context:
space:
mode:
Diffstat (limited to 'README.md')
-rw-r--r--README.md14
1 files changed, 10 insertions, 4 deletions
diff --git a/README.md b/README.md
index 0a3f304..4aae03d 100644
--- a/README.md
+++ b/README.md
@@ -7,6 +7,8 @@ Copyright © 2015–2016 [Ulrich Bauer].
Ripser is a lean C++ code for the computation of Vietoris–Rips persistence barcodes. It can do just this one thing, but does it extremely well.
+To see a live demo of Ripser's capabilities, go to [live.ripser.org]. The computation happens inside the browser (using [PNaCl] on Chrome and JavaScript via [Emscripten] on other browsers).
+
The main features of Ripser:
- time- and memory-efficient
@@ -14,7 +16,7 @@ The main features of Ripser:
- support for coefficients in prime finite fields
- no external dependencies (optional support for Google's [sparsehash])
-Currently, Ripser outperforms other codes ([Dionysus], [DIPHA], [GUDHI], [Perseus], [PHAT]) by a factor of more than 40 in computation time and a factor of more than 15 in memory efficiency. (Note that [PHAT] does not contain code for generating Vietoris–Rips filtrations).
+Currently, Ripser outperforms other codes ([Dionysus], [DIPHA], [GUDHI], [Perseus], [PHAT]) by a factor of more than 40 in computation time and a factor of more than 15 in memory efficiency (for the example linked at [live.ripser.org]). (Note that [PHAT] does not contain code for generating Vietoris–Rips filtrations).
Input formats currently supported by Ripser:
@@ -57,7 +59,7 @@ Ripser supports several compile-time options. They are switched on by defining t
- `USE_COEFFICIENTS`: enable support for coefficients in a prime field
- `INDICATE_PROGRESS`: indicate the current progress in the console
- `PRINT_PERSISTENCE_PAIRS`: output the computed persistence pairs (enabled by default in the code; comment out to disable)
- - `USE_GOOGLE_HASHMAP`: enable support for Google's [sparsehash] data structure; may further reducue memory footprint
+ - `USE_GOOGLE_HASHMAP`: enable support for Google's [sparsehash] data structure; may further reduce memory footprint
For example, to build Ripser with support for coefficients:
@@ -72,7 +74,7 @@ The input is given either in a file whose name is passed as an argument, or thro
- `--format`: use the specified file format for the input. The following formats are supported:
- `lower-distance` (default if no format is specified): lower triangular distance matrix; a comma (or whitespace, or other non-numerical character) separated list of the distance matrix entries below the diagonal, sorted lexicographically by row index, then column index
- `upper-distance`: upper triangular distance matrix; similar to the previous, but for the entries above the diagonal; suitable for output from the MATLAB functions `pdist` or `seqpdist`, exported to a CSV file
- - `distances`: full distance matrix; similar to the above, but for all entries of the distance matrix
+ - `distance`: full distance matrix; similar to the above, but for all entries of the distance matrix
- `dipha`: DIPHA distance matrix as described on the [DIPHA] website
- `point-cloud`: point cloud; a comma (or whitespace, or other non-numerical character) separated list of coordinates of the points in some Euclidean space, one point per line
- `--dim k`: compute persistent homology up to dimension *k*
@@ -89,13 +91,17 @@ The following features are currently planned for future versions:
- computation of representative cycles for persistent homology (currenly only *co*cycles are computed)
- support for sparse distance matrices
+Prototype implementations are already avaliable; please contact the author if one of these features might be relevant for your research.
+
### License
Ripser is licensed under the [LGPL] 3.0. Please contact the author if you want to use Ripser in your software under a different license.
-
[Ulrich Bauer]: <http://ulrich-bauer.org>
+[live.ripser.org]: <http://live.ripser.org>
+[PNaCl]: <https://www.chromium.org/nativeclient/pnacl/>
+[Emscripten]: <http://emscripten.org>
[latest-release]: <https://github.com/Ripser/ripser/releases/latest>
[Dionysus]: <http://www.mrzv.org/software/dionysus/>
[DIPHA]: <http://git.io/dipha>