/*! \page installation GUDHI installation
* \tableofcontents
* As GUDHI is a header only library, there is no need to install the library.
*
* Examples of GUDHI headers inclusion can be found in \ref demos.
*
* \section compiling Compiling
* The library uses c++11 and requires Boost with version 1.48.0 or
* more recent. It is a multi-platform library and compiles on Linux, Mac OSX and Visual Studio 2015.
*
* \subsection demos Demos and examples
* To build the demos and examples, run the following commands in a terminal:
\verbatim cd /path-to-gudhi/
mkdir build
cd build/
cmake ..
make \endverbatim
* A list of examples is available here.
*
* \subsection testsuites Test suites
* To test your build, run the following command in a terminal:
* \verbatim make test \endverbatim
*
* \subsection documentationgeneration Documentation
* To generate the documentation, Doxygen is required.
* Run the following command in a terminal:
\verbatim
make doxygen
# Documentation will be generated in the folder YYYY-MM-DD-hh-mm-ss_GUDHI_X.Y.Z/doc/html/
# You can customize the directory name by calling `cmake -DUSER_VERSION_DIR=/my/custom/folder`
\endverbatim
*
* \section optionallibrary Optional third-party library
* \subsection gmp 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 example requires the GNU Multiple Precision Arithmetic
* Library (GMP) and will not be built if GMP is not installed:
* \li
* Persistent_cohomology/rips_multifield_persistence.cpp
*
* Having GMP version 4.2 or higher installed is recommended.
*
* \subsection cgal CGAL
* The \ref alpha_complex data structure, \ref bottleneck_distance, and few examples requires CGAL, which is a C++
* library which provides easy access to efficient and reliable geometric algorithms.
*
* \note There is no need to install CGAL, you can just cmake . && make
CGAL (or even
* cmake -DCGAL_HEADER_ONLY=ON .
for CGAL version ≥ 4.8.0), thereafter you will be able to compile
* GUDHI by calling cmake -DCGAL_DIR=/your/path/to/CGAL-X.Y .. && make
*
* Having CGAL version 4.4.0 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
*
* The following examples/utilities require the Computational Geometry Algorithms
* Library (CGAL \cite cgal:eb-15b) and will not be built if CGAL is not installed:
* \li
* Alpha_complex/alpha_complex_3d_persistence.cpp
* \li
* Alpha_complex/exact_alpha_complex_3d_persistence.cpp
* \li
* Alpha_complex/weighted_alpha_complex_3d_persistence.cpp
* \li
* Simplex_tree/example_alpha_shapes_3_simplex_tree_from_off_file.cpp
*
* The following examples/utilities require CGAL version ≥ 4.6.0:
* \li
* Witness_complex/strong_witness_persistence.cpp
* \li
* Witness_complex/weak_witness_persistence.cpp
* \li
* Witness_complex/example_strong_witness_complex_off.cpp
* \li
* Witness_complex/example_witness_complex_off.cpp
* \li
* Witness_complex/example_witness_complex_sphere.cpp
*
* The following example requires CGAL version ≥ 4.7.0:
* \li
* Alpha_complex/Alpha_complex_from_off.cpp
* \li
* Alpha_complex/Alpha_complex_from_points.cpp
* \li
* Alpha_complex/alpha_complex_persistence.cpp
* \li
* Alpha_complex/periodic_alpha_complex_3d_persistence.cpp
* \li
* Persistent_cohomology/custom_persistence_sort.cpp
*
* The following example requires CGAL version ≥ 4.8.1:
* \li
* Bottleneck_distance/alpha_rips_persistence_bottleneck_distance.cpp.cpp
* \li
* Bottleneck_distance/bottleneck_basic_example.cpp
* \li
* Bottleneck_distance/bottleneck_distance.cpp
* \li
* Nerve_GIC/CoordGIC.cpp
* \li
* Nerve_GIC/FuncGIC.cpp
* \li
* Nerve_GIC/Nerve.cpp
* \li
* Nerve_GIC/VoronoiGIC.cpp
* \li
* Spatial_searching/example_spatial_searching.cpp
* \li
* Subsampling/example_choose_n_farthest_points.cpp
* \li
* Subsampling/example_custom_kernel.cpp
* \li
* Subsampling/example_pick_n_random_points.cpp
* \li
* Subsampling/example_sparsify_point_set.cpp
* \li
* Tangential_complex/example_basic.cpp
* \li
* Tangential_complex/example_with_perturb.cpp
*
* \subsection eigen3 Eigen3
* The \ref alpha_complex data structure and few examples requires
* Eigen3 is a C++ template library for linear algebra:
* matrices, vectors, numerical solvers, and related algorithms.
*
* The following examples/utilities require the Eigen3 and will not be
* built if Eigen3 is not installed:
* \li
* Alpha_complex/Alpha_complex_from_off.cpp
* \li
* Alpha_complex/Alpha_complex_from_points.cpp
* \li
* Alpha_complex/alpha_complex_persistence.cpp
* \li
* Alpha_complex/periodic_alpha_complex_3d_persistence.cpp
* \li
* Bottleneck_distance/alpha_rips_persistence_bottleneck_distance.cpp.cpp
* \li
* Persistent_cohomology/custom_persistence_sort.cpp
* \li
* Spatial_searching/example_spatial_searching.cpp
* \li
* Subsampling/example_choose_n_farthest_points.cpp
* \li
* Subsampling/example_custom_kernel.cpp
* \li
* Subsampling/example_pick_n_random_points.cpp
* \li
* Subsampling/example_sparsify_point_set.cpp
* \li
* Tangential_complex/example_basic.cpp
* \li
* Tangential_complex/example_with_perturb.cpp
* \li
* Witness_complex/strong_witness_persistence.cpp
* \li
* Witness_complex/weak_witness_persistence.cpp
* \li
* Witness_complex/example_strong_witness_complex_off.cpp
* \li
* Witness_complex/example_witness_complex_off.cpp
* \li
* Witness_complex/example_witness_complex_sphere.cpp
*
* \subsection tbb Threading Building Blocks
* Intel® TBB lets you easily write parallel
* C++ programs that take full advantage of multicore performance, that are portable and composable, and that have
* future-proof scalability.
*
* Having Intel® TBB installed is recommended to parallelize and accelerate some GUDHI computations.
*
* The following examples/utilities are using Intel® TBB if installed:
* \li
* Alpha_complex/Alpha_complex_from_off.cpp
* \li
* Alpha_complex/Alpha_complex_from_points.cpp
* \li
* Alpha_complex/alpha_complex_3d_persistence.cpp
* \li
* Alpha_complex/alpha_complex_persistence.cpp
* \li
* Alpha_complex/exact_alpha_complex_3d_persistence.cpp
* \li
* Alpha_complex/periodic_alpha_complex_3d_persistence.cpp
* \li
* Alpha_complex/weighted_alpha_complex_3d_persistence.cpp
* \li
* Bitmap_cubical_complex/cubical_complex_persistence.cpp
* \li
* Bitmap_cubical_complex/periodic_cubical_complex_persistence.cpp
* \li
* Bitmap_cubical_complex/Random_bitmap_cubical_complex.cpp
* \li
* Nerve_GIC/CoordGIC.cpp
* \li
* Nerve_GIC/FuncGIC.cpp
* \li
* Nerve_GIC/Nerve.cpp
* \li
* Nerve_GIC/VoronoiGIC.cpp
* \li
* Simplex_tree/simple_simplex_tree.cpp
* \li
* Simplex_tree/example_alpha_shapes_3_simplex_tree_from_off_file.cpp
* \li
* Simplex_tree/simplex_tree_from_cliques_of_graph.cpp
* \li
* Simplex_tree/graph_expansion_with_blocker.cpp
* \li
* Persistent_cohomology/alpha_complex_3d_persistence.cpp
* \li
* Persistent_cohomology/alpha_complex_persistence.cpp
* \li
* Persistent_cohomology/rips_persistence_via_boundary_matrix.cpp
* \li
* Persistent_cohomology/persistence_from_file.cpp
* \li
* Persistent_cohomology/persistence_from_simple_simplex_tree.cpp
* \li
* Persistent_cohomology/plain_homology.cpp
* \li
* Persistent_cohomology/rips_multifield_persistence.cpp
* \li
* Persistent_cohomology/rips_persistence_step_by_step.cpp
* \li
* Persistent_cohomology/exact_alpha_complex_3d_persistence.cpp
* \li
* Persistent_cohomology/weighted_alpha_complex_3d_persistence.cpp
* \li
* Persistent_cohomology/custom_persistence_sort.cpp
* \li
* Rips_complex/example_one_skeleton_rips_from_points.cpp
* \li
* Rips_complex/example_rips_complex_from_off_file.cpp
* \li
* Rips_complex/rips_distance_matrix_persistence.cpp
* \li
* Rips_complex/rips_persistence.cpp
* \li
* Witness_complex/strong_witness_persistence.cpp
* \li
* Witness_complex/weak_witness_persistence.cpp
* \li
* Witness_complex/example_nearest_landmark_table.cpp
*
* \section Contributions Bug reports and contributions
* Please help us improving the quality of the GUDHI library. You may report bugs or suggestions to:
* \verbatim Contact: gudhi-users@lists.gforge.inria.fr \endverbatim
*
* GUDHI is open to external contributions. If you want to join our development team, please contact us.
*
*/
/*! \page Citation Acknowledging the GUDHI library
* We kindly ask users to cite the GUDHI library as appropriately as possible in their papers, and to mention the use
* of the GUDHI library on the web pages of their projects using GUDHI and provide us with links to these web pages.
* Feel free to contact us in case you have any question or remark on this topic.
*
* We provide \ref GudhiBibtex entries for the modules of the User and Reference Manual, as well as for publications
* directly related to the GUDHI library.
* \section GudhiBibtex GUDHI bibtex
* \verbinclude biblio/how_to_cite_gudhi.bib
*/