author Dmitriy Morozov <>
Thu, 18 Dec 2008 16:43:42 -0800
changeset 97 0a9bd3f34419
parent 96 f283106e8124
child 111 958dec48d946
permissions -rw-r--r--
Intermediate commit while converting to the new architecture * Converted Filtration into StaticPersistence and DynamicPersistenceTrails (both right now work with the underlying std::vector rather than std::list order) * Filtration is now just an auxilliary glue (a map between Complex and Persistence) * Whether chains are vectors or lists can be interchanged * Added PersistenceDiagram with a simple bottleneck_distance() function * Converted triangle, alphashapes3d, and cech-complex examples * Lots of organizational changes (factoring utilities out into containers.h, indirect.h, property-maps.h) * Trying to document along the way with NaturalDocs-type comments

% Dionysus README
% Dmitriy Morozov

## Dependencies

  * [CGAL]-3.3 ---  for alpha-shapes and kinetic data structures
  * [DSR-PDB] ---   for reading in PDB files (if use_dsrpdb is turned on in cmake)
  * [CMake] ---     for controlling the build process
  * [boost] ---     great set of C++ libraries
  * [Doxygen] ---   for building documentation
  * [rlog] ---      for logging only (is not needed by default)
  * [SYNAPS] ---    for solving polynomials (for kinetic kernel), which in turn requires GMP


## Configuration
  The path to CGAL's Makefile is expected to be set in `$CGAL_MAKEFILE`, the rest
  is just the usual CMake configuration

## Building
  To build examples, create a directory build (to keep everything in one place),
  go to that directory and run cmake and make:

    mkdir build
    cd build
    cmake ..   (or "ccmake .." if you want a curses interface)
  In the cmake line you can provide `-Ddebug:bool=on` to turn on debugging,
  `-Dcounters:bool=on` to turn on counters, `-Doptimize:bool=on` to turn on
  optimization, `-Duse_dsrpdb:bool=on` to turn on reading PDB files.  Depending on
  the combination of debugging and optimization, a particular `CMAKE_CXX_FLAGS*`
  is chosen.  All of this can be set using a text user interface by running
  `ccmake` instead of `cmake`.

  When compiling on a 64 bit platform (with Boost 1.34) add

## Author
  Dmitriy Morozov <>