diff options
Diffstat (limited to 'src/Skeleton_blocker')
11 files changed, 24 insertions, 39 deletions
diff --git a/src/Skeleton_blocker/concept/SkeletonBlockerDS.h b/src/Skeleton_blocker/concept/SkeletonBlockerDS.h index 0c2014bd..23eb3670 100644 --- a/src/Skeleton_blocker/concept/SkeletonBlockerDS.h +++ b/src/Skeleton_blocker/concept/SkeletonBlockerDS.h @@ -29,7 +29,7 @@ struct SkeletonBlockerDS { /** * @brief Root_vertex_handle and Vertex_handle are similar to global and local vertex descriptor - * used in <a href="http://www.boost.org/doc/libs/1_38_0/libs/graph/doc/subgraph.html">boost subgraphs</a> + * used in <a href="https://www.boost.org/doc/libs/release/libs/graph/doc/subgraph.html">boost subgraphs</a> * and allow to localize a vertex of a subcomplex on its parent root complex. * * In gross, vertices are stored in a vector diff --git a/src/Skeleton_blocker/example/CMakeLists.txt b/src/Skeleton_blocker/example/CMakeLists.txt index 0e5d2f11..456612df 100644 --- a/src/Skeleton_blocker/example/CMakeLists.txt +++ b/src/Skeleton_blocker/example/CMakeLists.txt @@ -7,7 +7,3 @@ add_executable(Skeleton_blocker_example_link Skeleton_blocker_link.cpp) add_test(NAME Skeleton_blocker_example_from_simplices COMMAND $<TARGET_FILE:Skeleton_blocker_example_from_simplices>) add_test(NAME Skeleton_blocker_example_iteration COMMAND $<TARGET_FILE:Skeleton_blocker_example_iteration>) add_test(NAME Skeleton_blocker_example_link COMMAND $<TARGET_FILE:Skeleton_blocker_example_link>) - -install(TARGETS Skeleton_blocker_example_from_simplices DESTINATION bin) -install(TARGETS Skeleton_blocker_example_iteration DESTINATION bin) -install(TARGETS Skeleton_blocker_example_link DESTINATION bin) diff --git a/src/Skeleton_blocker/include/gudhi/Skeleton_blocker.h b/src/Skeleton_blocker/include/gudhi/Skeleton_blocker.h index 653a63fd..0fd56c67 100644 --- a/src/Skeleton_blocker/include/gudhi/Skeleton_blocker.h +++ b/src/Skeleton_blocker/include/gudhi/Skeleton_blocker.h @@ -52,8 +52,7 @@ when \f$ \tau \neq \sigma\f$ we say that \f$ \tau\f$ is a proper-face of \f$ \si An abstract simplicial complex is a set of simplices that contains all the faces of its 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 - +\image html "ds_representation.png" "Skeleton-blocker representation" To encode, a simplicial complex, one can encodes all its simplices. In case when this number gets too large, @@ -73,11 +72,7 @@ For instance, the numbers of blockers is depicted for random 3-dimensional spher in next figure. Storing the graph and blockers of such simplicial complexes is much compact in this case than storing their simplices. - - *\image html "blockers_curve.png" "Number of blockers of random triangulations of 3-spheres" width=10cm - - - +\image html "blockers_curve.png" "Number of blockers of random triangulations of 3-spheres" \section API diff --git a/src/Skeleton_blocker/include/gudhi/Skeleton_blocker/Skeleton_blocker_simple_traits.h b/src/Skeleton_blocker/include/gudhi/Skeleton_blocker/Skeleton_blocker_simple_traits.h index 0c0cc624..d091d7dd 100644 --- a/src/Skeleton_blocker/include/gudhi/Skeleton_blocker/Skeleton_blocker_simple_traits.h +++ b/src/Skeleton_blocker/include/gudhi/Skeleton_blocker/Skeleton_blocker_simple_traits.h @@ -28,7 +28,7 @@ namespace skeleton_blocker { */ struct Skeleton_blocker_simple_traits { /** - * @brief Global and local handle similar to <a href="http://www.boost.org/doc/libs/1_38_0/libs/graph/doc/subgraph.html">boost subgraphs</a>. + * @brief Global and local handle similar to <a href="https://www.boost.org/doc/libs/release/libs/graph/doc/subgraph.html">boost subgraphs</a>. * Vertices are stored in a vector. * For the root simplicial complex, the local and global descriptors are the same. * For a subcomplex L and one of its vertices 'v', the local descriptor of 'v' is its position in diff --git a/src/Skeleton_blocker/include/gudhi/Skeleton_blocker/Skeleton_blocker_simplex.h b/src/Skeleton_blocker/include/gudhi/Skeleton_blocker/Skeleton_blocker_simplex.h index 12fe6469..d83c0ab3 100644 --- a/src/Skeleton_blocker/include/gudhi/Skeleton_blocker/Skeleton_blocker_simplex.h +++ b/src/Skeleton_blocker/include/gudhi/Skeleton_blocker/Skeleton_blocker_simplex.h @@ -134,7 +134,7 @@ class Skeleton_blocker_simplex { } /** - * Substracts a from the simplex. + * Subtracts a from the simplex. */ void difference(const Skeleton_blocker_simplex & a) { std::vector<T> v; diff --git a/src/Skeleton_blocker/include/gudhi/Skeleton_blocker/Skeleton_blocker_sub_complex.h b/src/Skeleton_blocker/include/gudhi/Skeleton_blocker/Skeleton_blocker_sub_complex.h index 4c48ff31..4c0c7dad 100644 --- a/src/Skeleton_blocker/include/gudhi/Skeleton_blocker/Skeleton_blocker_sub_complex.h +++ b/src/Skeleton_blocker/include/gudhi/Skeleton_blocker/Skeleton_blocker_sub_complex.h @@ -76,8 +76,8 @@ class Skeleton_blocker_sub_complex : public ComplexType { public: /** * Add a vertex 'global' of K to L. When added to L, this vertex will receive - * another number, addresses(global), its local adress. - * return the adress where the vertex lay on L. + * another number, addresses(global), its local address. + * return the address where the vertex lay on L. * The vertex corresponding to 'global' must not be already present * in the complex. */ @@ -174,7 +174,7 @@ class Skeleton_blocker_sub_complex : public ComplexType { // /** // * Allocates a simplex in L corresponding to the simplex s in K - // * with its local adresses and returns an AddressSimplex. + // * with its local addresses and returns an AddressSimplex. // */ // boost::optional<Simplex> get_address(const Root_simplex_handle & s) const; @@ -196,10 +196,8 @@ class Skeleton_blocker_sub_complex : public ComplexType { }; /** - * @remark remarque perte de temps a creer un nouveau simplexe a chaque fois - * alors qu'on pourrait utiliser a la place de 'addresses_sigma_in_link' - * un simplex avec des valeurs sp�ciales ComplexDS::null_vertex par exemple - * pour indiquer qu'un vertex n'appartient pas au complex + * @remark waste of time to create a new simplex each time when we could use instead of addresses_sigma_in_link a + * simplex with special values (ComplexDS::null_vertex e.g.) to indicate that a vertex does not belong to the complex. */ template<typename ComplexType> bool proper_face_in_union( @@ -226,7 +224,7 @@ bool proper_face_in_union( } // Remark: this function should be friend in order to leave get_adresses private -// however doing so seemes currently not possible due to a visual studio bug c2668 +// however doing so seems currently not possible due to a visual studio bug c2668 // "the compiler does not support partial ordering of template functions as specified in the C++ Standard" // http://www.serkey.com/error-c2668-ambiguous-call-to-overloaded-function-bb45ft.html diff --git a/src/Skeleton_blocker/include/gudhi/Skeleton_blocker/internal/Trie.h b/src/Skeleton_blocker/include/gudhi/Skeleton_blocker/internal/Trie.h index a43fa034..116bc779 100644 --- a/src/Skeleton_blocker/include/gudhi/Skeleton_blocker/internal/Trie.h +++ b/src/Skeleton_blocker/include/gudhi/Skeleton_blocker/internal/Trie.h @@ -107,7 +107,7 @@ struct Trie { } /** - * Goes to the root in the trie to consitute simplex + * Goes to the root in the trie to constitute simplex */ void add_vertices_up_to_the_root(Simplex& res) const { res.add_vertex(v); @@ -150,7 +150,7 @@ struct Trie { ++s_pos; while (s_pos != s.end() && current != 0) { bool found = false; - for (const auto child : current->childs) { + for (const auto& child : current->childs) { if (child->v == *s_pos) { ++s_pos; current = child.get(); diff --git a/src/Skeleton_blocker/include/gudhi/Skeleton_blocker/iterators/Skeleton_blockers_triangles_iterators.h b/src/Skeleton_blocker/include/gudhi/Skeleton_blocker/iterators/Skeleton_blockers_triangles_iterators.h index 37c0b4d3..2c49a1b8 100644 --- a/src/Skeleton_blocker/include/gudhi/Skeleton_blocker/iterators/Skeleton_blockers_triangles_iterators.h +++ b/src/Skeleton_blocker/include/gudhi/Skeleton_blocker/iterators/Skeleton_blockers_triangles_iterators.h @@ -21,7 +21,7 @@ namespace skeleton_blocker { /** * \brief Iterator over the triangles that are * adjacent to a vertex of the simplicial complex. - * \remark Will be removed soon -> dont look + * \remark Will be removed soon -> don't look */ template<typename Complex, typename LinkType> class Triangle_around_vertex_iterator : public boost::iterator_facade @@ -95,7 +95,7 @@ class Triangle_around_vertex_iterator : public boost::iterator_facade /** * \brief Iterator over the triangles of the * simplicial complex. - * \remark Will be removed soon -> dont look + * \remark Will be removed soon -> don't look * */ template<typename SkeletonBlockerComplex> diff --git a/src/Skeleton_blocker/include/gudhi/Skeleton_blocker_complex.h b/src/Skeleton_blocker/include/gudhi/Skeleton_blocker_complex.h index 125c6387..b4ffc756 100644 --- a/src/Skeleton_blocker/include/gudhi/Skeleton_blocker_complex.h +++ b/src/Skeleton_blocker/include/gudhi/Skeleton_blocker_complex.h @@ -438,7 +438,7 @@ class Skeleton_blocker_complex { } /** - * return the id of a vertex of adress local present in the graph + * return the id of a vertex of address local present in the graph */ Root_vertex_handle get_id(Vertex_handle local) const { assert(0 <= local.vertex && local.vertex < boost::num_vertices(skeleton)); @@ -740,7 +740,7 @@ class Skeleton_blocker_complex { * complex to the smallest flag complex that contains it. */ void remove_blockers() { - // Desallocate the blockers + // Deallocate the blockers while (!blocker_map_.empty()) { delete_blocker(blocker_map_.begin()->second); } @@ -764,8 +764,8 @@ class Skeleton_blocker_complex { public: /** - * Removes the simplex s from the set of blockers - * and desallocate s. + * Removes the simplex sigma from the set of blockers + * and deallocate sigma. */ void delete_blocker(Blocker_handle sigma) { if (visitor) @@ -960,7 +960,7 @@ class Skeleton_blocker_complex { } /* - * @brief returnrs true iff the complex is empty. + * @brief returns true iff the complex is empty. */ bool empty() const { return num_vertices() == 0; @@ -1043,7 +1043,7 @@ class Skeleton_blocker_complex { if (num_vertices() == 1) return true; for (auto vi : vertex_range()) { - // xxx todo faire une methode bool is_in_blocker(Vertex_handle) + // xxx todo create a method: bool is_in_blocker(Vertex_handle) if (blocker_map_.find(vi) == blocker_map_.end()) { // no blocker passes through the vertex, we just need to // check if the current vertex is linked to all others vertices of the complex @@ -1071,7 +1071,6 @@ class Skeleton_blocker_complex { /** * Removes all the popable blockers of the complex and delete them. - * @returns the number of popable blockers deleted */ void remove_popable_blockers(); @@ -1103,7 +1102,6 @@ class Skeleton_blocker_complex { public: /** * Remove the star of the edge connecting vertices a and b. - * @returns the number of blocker that have been removed */ void remove_star(Vertex_handle a, Vertex_handle b); @@ -1293,7 +1291,7 @@ class Skeleton_blocker_complex { typedef boost::iterator_range<Complex_neighbors_vertices_iterator> Complex_neighbors_vertices_range; /** - * @brief Returns a Complex_edge_range over all edges of the simplicial complex that passes trough v + * @brief Returns a Complex_edge_range over all edges of the simplicial complex that passes through v */ Complex_neighbors_vertices_range vertex_range(Vertex_handle v) const { auto begin = Complex_neighbors_vertices_iterator(this, v); 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 a2637da3..b3bf0382 100644 --- a/src/Skeleton_blocker/include/gudhi/Skeleton_blocker_link_complex.h +++ b/src/Skeleton_blocker/include/gudhi/Skeleton_blocker_link_complex.h @@ -164,7 +164,7 @@ ComplexType> { Vertex_handle y_parent = *parent_complex.get_address( this->get_id(*y_link)); if (parent_complex.contains_edge(x_parent, y_parent)) { - // we check that there is no blocker subset of alpha passing trough x and y + // we check that there is no blocker subset of alpha passing through x and y bool new_edge = true; for (auto blocker_parent : parent_complex.const_blocker_range( x_parent)) { 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 404f04f9..e686aaec 100644..100755 --- a/src/Skeleton_blocker/include/gudhi/Skeleton_blocker_simplifiable_complex.h +++ b/src/Skeleton_blocker/include/gudhi/Skeleton_blocker_simplifiable_complex.h @@ -39,7 +39,6 @@ bool Skeleton_blocker_complex<SkeletonBlockerDS>::is_popable_blocker(Blocker_han /** * Removes all the popable blockers of the complex and delete them. - * @returns the number of popable blockers deleted */ template<typename SkeletonBlockerDS> void Skeleton_blocker_complex<SkeletonBlockerDS>::remove_popable_blockers() { @@ -160,7 +159,6 @@ void Skeleton_blocker_complex<SkeletonBlockerDS>::update_blockers_after_remove_s /** * Remove the star of the edge connecting vertices a and b. - * @returns the number of blocker that have been removed */ template<typename SkeletonBlockerDS> void Skeleton_blocker_complex<SkeletonBlockerDS>::remove_star(Vertex_handle a, Vertex_handle b) { @@ -269,7 +267,7 @@ void Skeleton_blocker_complex<SkeletonBlockerDS>::remove_blocker_include_in_simp template<typename SkeletonBlockerDS> void Skeleton_blocker_complex<SkeletonBlockerDS>::tip_blockers(Vertex_handle a, Vertex_handle b, std::vector<Simplex> & buffer) const { - for (auto const & blocker : this->const_blocker_range(a)) { + for (auto const blocker : this->const_blocker_range(a)) { Simplex beta = (*blocker); beta.remove_vertex(a); buffer.push_back(beta); |