From 599d68cd916f533bdb66dd9e684dd5703233b6bb Mon Sep 17 00:00:00 2001 From: Gard Spreemann Date: Wed, 25 Sep 2019 14:29:41 +0200 Subject: Delete all files in order to incorporate upstream's move to git. --- doc/Witness_complex/COPYRIGHT | 19 - doc/Witness_complex/Witness_complex_doc.h | 122 -- .../Witness_complex_representation.ipe | 280 ----- .../Witness_complex_representation.png | Bin 21202 -> 0 bytes doc/Witness_complex/bench_Cy8.png | Bin 15254 -> 0 bytes doc/Witness_complex/bench_sphere.png | Bin 16614 -> 0 bytes doc/Witness_complex/swit.svg | 1303 -------------------- 7 files changed, 1724 deletions(-) delete mode 100644 doc/Witness_complex/COPYRIGHT delete mode 100644 doc/Witness_complex/Witness_complex_doc.h delete mode 100644 doc/Witness_complex/Witness_complex_representation.ipe delete mode 100644 doc/Witness_complex/Witness_complex_representation.png delete mode 100644 doc/Witness_complex/bench_Cy8.png delete mode 100644 doc/Witness_complex/bench_sphere.png delete mode 100644 doc/Witness_complex/swit.svg (limited to 'doc/Witness_complex') diff --git a/doc/Witness_complex/COPYRIGHT b/doc/Witness_complex/COPYRIGHT deleted file mode 100644 index 25a700cf..00000000 --- a/doc/Witness_complex/COPYRIGHT +++ /dev/null @@ -1,19 +0,0 @@ -The files of this directory are part of the Gudhi Library. The Gudhi library -(Geometric Understanding in Higher Dimensions) is a generic C++ library for -computational topology. - -Author(s): Siargey Kachanovich - -Copyright (C) 2015 Inria - -This program is free software: you can redistribute it and/or modify it under -the terms of the GNU General Public License as published by the Free Software -Foundation, either version 3 of the License, or (at your option) any later -version. - -This program is distributed in the hope that it will be useful, but WITHOUT -ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS -FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. - -You should have received a copy of the GNU General Public License along with -this program. If not, see . diff --git a/doc/Witness_complex/Witness_complex_doc.h b/doc/Witness_complex/Witness_complex_doc.h deleted file mode 100644 index 62203054..00000000 --- a/doc/Witness_complex/Witness_complex_doc.h +++ /dev/null @@ -1,122 +0,0 @@ -#ifndef WITNESS_COMPLEX_DOC_H_ -#define WITNESS_COMPLEX_DOC_H_ - -/** - \defgroup witness_complex Witness complex - - \author Siargey Kachanovich - - \image html "Witness_complex_representation.png" "Witness complex representation" - - \section witnessdefinitions Definitions - - Witness complex is a simplicial complex defined on two sets of points in \f$\mathbb{R}^D\f$: - - \li \f$W\f$ set of **witnesses** and - \li \f$L\f$ set of **landmarks**. - - Even though often the set of landmarks \f$L\f$ is a subset of the set of witnesses \f$ W\f$, it is not a requirement for the current implementation. - - Landmarks are the vertices of the simplicial complex - and witnesses help to decide on which simplices are inserted via a predicate "is witnessed". - - De Silva and Carlsson in their paper \cite de2004topological differentiate **weak witnessing** and **strong witnessing**: - - - *weak*: \f$ \sigma \subset L \f$ is witnessed by \f$ w \in W\f$ if \f$ \forall l \in \sigma,\ \forall l' \in \mathbf{L \setminus \sigma},\ d(w,l) \leq d(w,l') \f$ - - *strong*: \f$ \sigma \subset L \f$ is witnessed by \f$ w \in W\f$ if \f$ \forall l \in \sigma,\ \forall l' \in \mathbf{L},\ d(w,l) \leq d(w,l') \f$ - - where \f$ d(.,.) \f$ is a distance function. - - Both definitions can be relaxed by a real value \f$\alpha\f$: - - - *weak*: \f$ \sigma \subset L \f$ is \f$\alpha\f$-witnessed by \f$ w \in W\f$ if \f$ \forall l \in \sigma,\ \forall l' \in \mathbf{L \setminus \sigma},\ d(w,l)^2 \leq d(w,l')^2 + \alpha^2 \f$ - - *strong*: \f$ \sigma \subset L \f$ is \f$\alpha\f$-witnessed by \f$ w \in W\f$ if \f$ \forall l \in \sigma,\ \forall l' \in \mathbf{L},\ d(w,l)^2 \leq d(w,l')^2 + \alpha^2 \f$ - - which leads to definitions of **weak relaxed witness complex** (or just relaxed witness complex for short) and **strong relaxed witness complex** respectively. - - \image html "swit.svg" "Strongly witnessed simplex" - - In particular case of 0-relaxation, weak complex corresponds to **witness complex** introduced in \cite de2004topological, whereas 0-relaxed strong witness complex consists of just vertices and is not very interesting. - Hence for small relaxation weak version is preferable. - However, to capture the homotopy type (for example using Gudhi::persistent_cohomology::Persistent_cohomology) it is often necessary to work with higher filtration values. In this case strong relaxed witness complex is faster to compute and offers similar results. - - \section witnessimplementation Implementation - - The two complexes described above are implemented in the corresponding classes - - Gudhi::witness_complex::Witness_complex - - Gudhi::witness_complex::Euclidean_witness_complex - - Gudhi::witness_complex::Strong_witness_complex - - Gudhi::witness_complex::Euclidean_strong_witness_complex - - The construction of the Euclidean versions of complexes follow the same scheme: - 1. Construct a search tree on landmarks (for that Gudhi::spatial_searching::Kd_tree_search is used internally). - 2. Construct lists of nearest landmarks for each witness (special structure Gudhi::witness_complex::Active_witness is used internally). - 3. Construct the witness complex for nearest landmark lists. - - In the non-Euclidean classes, the lists of nearest landmarks are supposed to be given as input. - - The constructors take on the steps 1 and 2, while the function 'create_complex' executes the step 3. - - \section witnessexample1 Example 1: Constructing weak relaxed witness complex from an off file - - Let's start with a simple example, which reads an off point file and computes a weak witness complex. - - ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~{.cpp} - -#include -#include -#include -#include - -#include - -#include -#include - -typedef CGAL::Epick_d K; -typedef typename K::Point_d Point_d; -typedef typename Gudhi::witness_complex::Euclidean_witness_complex Witness_complex; -typedef std::vector< Vertex_handle > typeVectorVertex; -typedef std::vector< Point_d > Point_vector; - -int main(int argc, char * const argv[]) { - std::string file_name = argv[1]; - int nbL = atoi(argv[2]), lim_dim = atoi(argv[4]); - double alpha2 = atof(argv[3]); - Gudhi::Simplex_tree<> simplex_tree; - - // Read the point file - Point_vector point_vector, landmarks; - Gudhi::Points_off_reader off_reader(file_name); - point_vector = Point_vector(off_reader.get_point_cloud()); - - // Choose landmarks (one can choose either of the two methods below) - // Gudhi::subsampling::pick_n_random_points(point_vector, nbL, std::back_inserter(landmarks)); - Gudhi::subsampling::choose_n_farthest_points(K(), point_vector, nbL, Gudhi::subsampling::random_starting_point, std::back_inserter(landmarks)); - - // Compute witness complex - Witness_complex witness_complex(landmarks, - point_vector); - - witness_complex.create_complex(simplex_tree, alpha2, lim_dim); -} - - - ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - - \section witnessexample2 Example2: Computing persistence using strong relaxed witness complex - - Here is an example of constructing a strong witness complex filtration and computing persistence on it: - - \include Witness_complex/strong_witness_persistence.cpp - - \section witnessexample3 Example3: Computing relaxed witness complex persistence from a distance matrix - - In this example we compute the relaxed witness complex persistence from a given matrix of closest landmarks to each witness. - Each landmark is given as the couple (index, distance). - - \include Witness_complex/example_nearest_landmark_table.cpp - - */ - -#endif // WITNESS_COMPLEX_DOC_H_ diff --git a/doc/Witness_complex/Witness_complex_representation.ipe b/doc/Witness_complex/Witness_complex_representation.ipe deleted file mode 100644 index f9c45d5d..00000000 --- a/doc/Witness_complex/Witness_complex_representation.ipe +++ /dev/null @@ -1,280 +0,0 @@ - - - - - - - -0 0 m --1 0.333 l --1 -0.333 l -h - - - - -0 0 m --1 0.333 l --1 -0.333 l -h - - - - -0 0 m --1 0.333 l --0.8 0 l --1 -0.333 l -h - - - - -0 0 m --1 0.333 l --0.8 0 l --1 -0.333 l -h - - - - -0.6 0 0 0.6 0 0 e -0.4 0 0 0.4 0 0 e - - - - -0.6 0 0 0.6 0 0 e - - - - - -0.5 0 0 0.5 0 0 e - - -0.6 0 0 0.6 0 0 e -0.4 0 0 0.4 0 0 e - - - - - --0.6 -0.6 m -0.6 -0.6 l -0.6 0.6 l --0.6 0.6 l -h --0.4 -0.4 m -0.4 -0.4 l -0.4 0.4 l --0.4 0.4 l -h - - - - --0.6 -0.6 m -0.6 -0.6 l -0.6 0.6 l --0.6 0.6 l -h - - - - - --0.5 -0.5 m -0.5 -0.5 l -0.5 0.5 l --0.5 0.5 l -h - - --0.6 -0.6 m -0.6 -0.6 l -0.6 0.6 l --0.6 0.6 l -h --0.4 -0.4 m -0.4 -0.4 l -0.4 0.4 l --0.4 0.4 l -h - - - - - - --0.43 -0.57 m -0.57 0.43 l -0.43 0.57 l --0.57 -0.43 l -h - - --0.43 0.57 m -0.57 -0.43 l -0.43 -0.57 l --0.57 0.43 l -h - - - - - -0 0 m --1 0.333 l --1 -0.333 l -h - - - - -0 0 m --1 0.333 l --0.8 0 l --1 -0.333 l -h - - - - -0 0 m --1 0.333 l --0.8 0 l --1 -0.333 l -h - - - - --1 0.333 m -0 0 l --1 -0.333 l - - - - -0 0 m --1 0.333 l --1 -0.333 l -h --1 0 m --2 0.333 l --2 -0.333 l -h - - - - -0 0 m --1 0.333 l --1 -0.333 l -h --1 0 m --2 0.333 l --2 -0.333 l -h - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -48.8262 0 0 48.8262 288 672 e - -$\omega$ - -284 720 m -280 624 l -268 648 l -h - - - - -$\sigma$ - - - - - - - - - diff --git a/doc/Witness_complex/Witness_complex_representation.png b/doc/Witness_complex/Witness_complex_representation.png deleted file mode 100644 index 16e0504e..00000000 Binary files a/doc/Witness_complex/Witness_complex_representation.png and /dev/null differ diff --git a/doc/Witness_complex/bench_Cy8.png b/doc/Witness_complex/bench_Cy8.png deleted file mode 100644 index d9045294..00000000 Binary files a/doc/Witness_complex/bench_Cy8.png and /dev/null differ diff --git a/doc/Witness_complex/bench_sphere.png b/doc/Witness_complex/bench_sphere.png deleted file mode 100644 index ba6bb381..00000000 Binary files a/doc/Witness_complex/bench_sphere.png and /dev/null differ diff --git a/doc/Witness_complex/swit.svg b/doc/Witness_complex/swit.svg deleted file mode 100644 index 6ffb5fff..00000000 --- a/doc/Witness_complex/swit.svg +++ /dev/null @@ -1,1303 +0,0 @@ - - - - - - - - - - - - - - - - - image/svg+xml - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -- cgit v1.2.3