Gudhi  1.1.0
 All Classes Functions Typedefs Friends Groups Pages
Gudhi Documentation
Gudhi_banner.jpg

The Gudhi library (Geometric Understanding in Higher Dimensions) is a generic C++ library for topological analysis of high-dimensional data whose goal is to provide robust, efficient, flexible and easy to use implementations of state-of-the-art algorithms and data structures for computational topology.

The current release of the library allows to use several data-structures for simplicial complexes : simplex tree, Hasse diagram or skeleton-blocker. Several operations can then be done on top of these representations such as persistent homology computation or simplification. All data-structures are generic and several of their aspects (such as stored elements, policies) can be parameterized via template classes. We refer to [12] for a detailed description of the design of the library.

Compiling

The library uses c++11 and requires Boost with version 1.48.0 or more recent : http://www.boost.org/. It is a multiplaform library and compiles on Linux, Mac OSX and Visual Studio 2013.

GMP:

The multi-field persistent homology algorithm requires GMP which is a free library for arbitrary-precision arithmetic, operating on signed integers, rational numbers, and floating point numbers The following examples require The GNU Multiple Precision Arithmetic Library (GMP) http://gmplib.org/ and will not be built if GMP is not installed:

Having GMP version 4.2 or higher installed is recommended. This library can be obtained from http://gmplib.org/

CGAL:

CGAL is a C++ library which provides easy access to efficient and reliable geometric algorithms.

The following example requires CGAL https://www.cgal.org/ and will not be built if CGAL is not installed:

Having CGAL version 4.4 or higher installed is recommended. The procedure to install this library according to your operating system is detailed here http://doc.cgal.org/latest/Manual/installation.html

Demos and Examples

To build the library, run the following in a terminal:

cd /path-to-gudhi/
mkdir build
cd build/
cmake -DCMAKE_BUILD_TYPE=Release ..
make