From 6a6651c5a097f5024a42c9912723fe09ba714fe7 Mon Sep 17 00:00:00 2001 From: salinasd Date: Mon, 15 Dec 2014 17:44:43 +0000 Subject: doc git-svn-id: svn+ssh://scm.gforge.inria.fr/svnroot/gudhi/trunk@353 636b058d-ea47-450e-bf9e-a15bfbe3eedb --- src/Skeleton_blocker/doc/ds_representation.png | Bin 42558 -> 36412 bytes src/Skeleton_blocker/doc/ds_representation.svg | 470 +++++++++++++++++++++ .../include/gudhi/Skeleton_blocker.h | 18 +- .../include/gudhi/Skeleton_blocker_complex.h | 1 + .../gudhi/Skeleton_blocker_geometric_complex.h | 2 +- .../include/gudhi/Skeleton_blocker_link_complex.h | 1 + .../gudhi/Skeleton_blocker_simplifiable_complex.h | 1 + 7 files changed, 483 insertions(+), 10 deletions(-) create mode 100644 src/Skeleton_blocker/doc/ds_representation.svg (limited to 'src/Skeleton_blocker') diff --git a/src/Skeleton_blocker/doc/ds_representation.png b/src/Skeleton_blocker/doc/ds_representation.png index bb224038..8136621a 100644 Binary files a/src/Skeleton_blocker/doc/ds_representation.png and b/src/Skeleton_blocker/doc/ds_representation.png differ diff --git a/src/Skeleton_blocker/doc/ds_representation.svg b/src/Skeleton_blocker/doc/ds_representation.svg new file mode 100644 index 00000000..981b2874 --- /dev/null +++ b/src/Skeleton_blocker/doc/ds_representation.svg @@ -0,0 +1,470 @@ + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Simplicial complex + Encoding + Graph + Blockers + + + = + + diff --git a/src/Skeleton_blocker/include/gudhi/Skeleton_blocker.h b/src/Skeleton_blocker/include/gudhi/Skeleton_blocker.h index 3d3910bf..00e1935b 100644 --- a/src/Skeleton_blocker/include/gudhi/Skeleton_blocker.h +++ b/src/Skeleton_blocker/include/gudhi/Skeleton_blocker.h @@ -35,18 +35,18 @@ -/** \defgroup skbl Skeleton-blocker Package +/** \defgroup skbl Skeleton-Blocker Package \author David Salinas \section Introduction -The Skeleton-blocker data-structure had been introduced in the two papers +The Skeleton-Blocker data-structure had been introduced in the two papers [\cite skbl_socg2011,\cite skbl_ijcga2012]. It proposes a light encoding for simplicial complexes by storing only an *implicit* representation of its simplices. Intuitively, it just stores the 1-skeleton of a simplicial complex with a graph and the set of its "missing faces" that is very small in practice (see next section for a formal definition). -This data-structure handles every classical operations used for simplicial complexes such as +This data-structure handles all simplicial complexes operations such as as simplex enumeration or simplex removal but operations that are particularly efficient are operations that do not require simplex enumeration such as edge iteration, link computation or simplex contraction. @@ -58,7 +58,7 @@ An abstract simplex is a finite non-empty set and its dimension is its number of Whenever \f$\tau \subset \sigma\f$ and \f$\tau \neq \emptyset \f$, \f$ \tau \f$ is called a face of \f$ \sigma\f$ and \f$ \sigma\f$ is called a coface of \f$ \tau \f$ . Furthermore, when \f$ \tau \neq \sigma\f$ we say that \f$ \tau\f$ is a proper-face of \f$ \sigma\f$. -An abstract simplicial complex is a set of simplices that contains all the faces of its simplices. +An abstract simplicial complex is a set of simplices that contains all the faces of their simplices. The 1-skeleton of a simplicial complex (or its graph) consists of its elements of dimension lower than 2. *\image html "ds_representation.png" "Skeleton-blocker representation" width=20cm @@ -78,7 +78,7 @@ in topological data-analysis. In practice, the set of blockers of a simplicial complex remains also small when simplifying a Rips complex with edge contractions but also for most of the simplicial complexes used in topological data-analysis such as Delaunay, Cech or Witness complexes. -For instance, the numbers of blockers is depicted for a random 3 dimensional sphere embedded into \f$R^4\f$ +For instance, the numbers of blockers is depicted for random 3 dimensional spheres embedded into \f$R^4\f$ in figure X. @@ -93,11 +93,11 @@ in figure X. Four classes define a simplicial complex namely : -\li Skeleton_blocker_complex : a simplicial complex with basic operations such as vertex/edge/simplex enumeration and construction -\li Skeleton_blocker_link_complex : the link of a simplex in a parent complex. It is represented as a sub complex +\li Skeleton_blocker_complex : a simplicial complex with basic operations such as vertex/edge/simplex enumeration and construction +\li Skeleton_blocker_link_complex : the link of a simplex in a parent complex. It is represented as a sub complex of the parent complex -\li Skeleton_blocker_simplifiable_complex : a simplicial complex with simplification operations such as edge contraction or simplex collapse -\li Skeleton_blocker_geometric_complex : a simplicial complex who has access to geometric points in \f$R^d\f$ +\li Skeleton_blocker_simplifiable_complex : a simplicial complex with simplification operations such as edge contraction or simplex collapse +\li Skeleton_blocker_geometric_complex : a simplicial complex who has access to geometric points in \f$R^d\f$ The two last classes are derived classes from the Skeleton_blocker_complex class. The class Skeleton_blocker_link_complex inheritates from a template passed parameter that may be either Skeleton_blocker_complex or Skeleton_blocker_geometric_complex (a link may store points coordinates or not). diff --git a/src/Skeleton_blocker/include/gudhi/Skeleton_blocker_complex.h b/src/Skeleton_blocker/include/gudhi/Skeleton_blocker_complex.h index 88c777ee..61ee8684 100644 --- a/src/Skeleton_blocker/include/gudhi/Skeleton_blocker_complex.h +++ b/src/Skeleton_blocker/include/gudhi/Skeleton_blocker_complex.h @@ -57,6 +57,7 @@ namespace skbl { /** *@class Skeleton_blocker_complex *@brief Abstract Simplicial Complex represented with a skeleton/blockers pair. + *@ingroup skbl */ template class Skeleton_blocker_complex diff --git a/src/Skeleton_blocker/include/gudhi/Skeleton_blocker_geometric_complex.h b/src/Skeleton_blocker/include/gudhi/Skeleton_blocker_geometric_complex.h index 03be7990..4dbabd60 100644 --- a/src/Skeleton_blocker/include/gudhi/Skeleton_blocker_geometric_complex.h +++ b/src/Skeleton_blocker/include/gudhi/Skeleton_blocker_geometric_complex.h @@ -36,7 +36,7 @@ namespace skbl { /** * @brief Class that represents a geometric complex that can be simplified. * The class allows access to points of vertices. - * + * @ingroup skbl */ template class Skeleton_blocker_geometric_complex : public Skeleton_blocker_simplifiable_complex diff --git a/src/Skeleton_blocker/include/gudhi/Skeleton_blocker_link_complex.h b/src/Skeleton_blocker/include/gudhi/Skeleton_blocker_link_complex.h index 62f827b7..f3ebfa60 100644 --- a/src/Skeleton_blocker/include/gudhi/Skeleton_blocker_link_complex.h +++ b/src/Skeleton_blocker/include/gudhi/Skeleton_blocker_link_complex.h @@ -36,6 +36,7 @@ template class Skeleton_blocker_sub_complex; * \brief Class representing the link of a simplicial complex encoded by a skeleton/blockers pair. * It inherits from Skeleton_blocker_sub_complex because such complex is a sub complex of a * root complex. + * \ingroup skbl */ template class Skeleton_blocker_link_complex : public Skeleton_blocker_sub_complex diff --git a/src/Skeleton_blocker/include/gudhi/Skeleton_blocker_simplifiable_complex.h b/src/Skeleton_blocker/include/gudhi/Skeleton_blocker_simplifiable_complex.h index 4fbad532..968e8be4 100644 --- a/src/Skeleton_blocker/include/gudhi/Skeleton_blocker_simplifiable_complex.h +++ b/src/Skeleton_blocker/include/gudhi/Skeleton_blocker_simplifiable_complex.h @@ -31,6 +31,7 @@ namespace skbl { /** * \brief Class that allows simplification operation on a simplicial complex represented * by a skeleton/blockers pair. + * \ingroup skbl */ template class Skeleton_blocker_simplifiable_complex : public Skeleton_blocker_complex -- cgit v1.2.3