summaryrefslogtreecommitdiff
path: root/src/Collapse
diff options
context:
space:
mode:
authorROUVREAU Vincent <vincent.rouvreau@inria.fr>2020-04-10 07:55:30 +0200
committerROUVREAU Vincent <vincent.rouvreau@inria.fr>2020-04-10 07:55:30 +0200
commit050fde353b73da4e93aaee2beab1291cc044be42 (patch)
tree528724ddb252bc65a61efcf5fb4c50d45f9266b3 /src/Collapse
parentbdcb50a167702a4649d866fd11dab6976ec9b3db (diff)
All in a Gudhi::collapse namespace
Diffstat (limited to 'src/Collapse')
-rw-r--r--src/Collapse/doc/intro_edge_collapse.h4
-rw-r--r--src/Collapse/include/gudhi/Flag_complex_sparse_matrix.h19
-rw-r--r--src/Collapse/test/collapse_unit_test.cpp2
-rw-r--r--src/Collapse/utilities/distance_matrix_edge_collapse_rips_persistence.cpp4
-rw-r--r--src/Collapse/utilities/point_cloud_edge_collapse_rips_persistence.cpp2
5 files changed, 17 insertions, 14 deletions
diff --git a/src/Collapse/doc/intro_edge_collapse.h b/src/Collapse/doc/intro_edge_collapse.h
index b42b5e65..70c816f4 100644
--- a/src/Collapse/doc/intro_edge_collapse.h
+++ b/src/Collapse/doc/intro_edge_collapse.h
@@ -13,7 +13,7 @@
namespace Gudhi {
-namespace edge_collapse {
+namespace collapse {
/** \defgroup edge_collapse Edge collapse
*
@@ -91,7 +91,7 @@ namespace edge_collapse {
*/
/** @} */ // end defgroup strong_collapse
-} // namespace edge_collapse
+} // namespace collapse
} // namespace Gudhi
diff --git a/src/Collapse/include/gudhi/Flag_complex_sparse_matrix.h b/src/Collapse/include/gudhi/Flag_complex_sparse_matrix.h
index 4862c1b0..0d5f37a4 100644
--- a/src/Collapse/include/gudhi/Flag_complex_sparse_matrix.h
+++ b/src/Collapse/include/gudhi/Flag_complex_sparse_matrix.h
@@ -35,27 +35,28 @@
#include <ctime>
#include <fstream>
+namespace Gudhi {
+
+namespace collapse {
+
+
typedef std::size_t Vertex;
using Edge = std::pair<Vertex, Vertex>; // This is an ordered pair, An edge is stored with convention of the first
// element being the smaller i.e {2,3} not {3,2}. However this is at the level
// of row indices on actual vertex lables
using EdgeFilt = std::pair<Edge, double>;
-using edge_list = std::vector<Edge>;
using MapVertexToIndex = std::unordered_map<Vertex, std::size_t>;
-using Map = std::unordered_map<Vertex, Vertex>;
using sparseRowMatrix = Eigen::SparseMatrix<double, Eigen::RowMajor>;
-using rowInnerIterator = sparseRowMatrix::InnerIterator;
using doubleVector = std::vector<double>;
-using vertexVector = std::vector<Vertex>;
using boolVector = std::vector<bool>;
using EdgeFiltVector = std::vector<EdgeFilt>;
-typedef std::vector<std::tuple<double, Vertex, Vertex>> Filtered_sorted_edge_list;
-typedef std::unordered_map<Edge, std::size_t, boost::hash<Edge>> u_edge_to_idx_map;
+using Filtered_sorted_edge_list = std::vector<std::tuple<double, Vertex, Vertex>>;
+using u_edge_to_idx_map = std::unordered_map<Edge, std::size_t, boost::hash<Edge>>;
//! Class SparseMsMatrix
/*!
@@ -266,7 +267,7 @@ class Flag_complex_sparse_matrix {
#endif // DEBUG_TRACES
if (not domination_indicator[indx]) {
// Iterate over the non-zero columns
- for (rowInnerIterator it(sparse_row_adjacency_matrix, indx); it; ++it) {
+ for (sparseRowMatrix::InnerIterator it(sparse_row_adjacency_matrix, indx); it; ++it) {
v = it.index();
// If the vertex v is not dominated and the edge {u,v} is still in the matrix
if (not domination_indicator[v] and u_set_removed_redges.find(std::minmax(u, v)) == u_set_removed_redges.end() and
@@ -432,4 +433,8 @@ class Flag_complex_sparse_matrix {
};
+} // namespace collapse
+
+} // namespace Gudhi
+
#endif // FLAG_COMPLEX_SPARSE_MATRIX_H_
diff --git a/src/Collapse/test/collapse_unit_test.cpp b/src/Collapse/test/collapse_unit_test.cpp
index 88af53e8..8cfa7d5f 100644
--- a/src/Collapse/test/collapse_unit_test.cpp
+++ b/src/Collapse/test/collapse_unit_test.cpp
@@ -40,7 +40,7 @@ void trace_and_check_collapse(const Filtered_sorted_edge_list& edges, const Filt
}
std::cout << "COLLAPSE - keep edges: " << std::endl;
- Flag_complex_sparse_matrix flag_complex_sparse_matrix(edges);
+ Gudhi::collapse::Flag_complex_sparse_matrix flag_complex_sparse_matrix(edges);
Filtered_sorted_edge_list collapse_edges;
flag_complex_sparse_matrix.filtered_edge_collapse(
[&collapse_edges](std::pair<std::size_t, std::size_t> edge, double filtration) {
diff --git a/src/Collapse/utilities/distance_matrix_edge_collapse_rips_persistence.cpp b/src/Collapse/utilities/distance_matrix_edge_collapse_rips_persistence.cpp
index 98a90892..b937a8ff 100644
--- a/src/Collapse/utilities/distance_matrix_edge_collapse_rips_persistence.cpp
+++ b/src/Collapse/utilities/distance_matrix_edge_collapse_rips_persistence.cpp
@@ -78,8 +78,6 @@ int main(int argc, char* argv[]) {
program_options(argc, argv, csv_matrix_file, filediag, threshold, dim_max, p, min_persistence);
- Map map_empty;
-
Distance_matrix distances;
Distance_matrix sparse_distances;
@@ -103,7 +101,7 @@ int main(int argc, char* argv[]) {
// Now we will perform filtered edge collapse to sparsify the edge list edge_t.
std::cout << "Filtered edge collapse begins" << std::endl;
- Flag_complex_sparse_matrix mat_filt_edge_coll(edge_t);
+ Gudhi::collapse::Flag_complex_sparse_matrix mat_filt_edge_coll(edge_t);
std::cout << "Matrix instansiated" << std::endl;
Simplex_tree stree;
diff --git a/src/Collapse/utilities/point_cloud_edge_collapse_rips_persistence.cpp b/src/Collapse/utilities/point_cloud_edge_collapse_rips_persistence.cpp
index 70d8d9c5..5fa24306 100644
--- a/src/Collapse/utilities/point_cloud_edge_collapse_rips_persistence.cpp
+++ b/src/Collapse/utilities/point_cloud_edge_collapse_rips_persistence.cpp
@@ -85,7 +85,7 @@ int main(int argc, char* argv[]) {
}
std::cout << "Filtered edge collapse begins" << std::endl;
- Flag_complex_sparse_matrix mat_filt_edge_coll(proximity_graph);
+ Gudhi::collapse::Flag_complex_sparse_matrix mat_filt_edge_coll(proximity_graph);
std::cout << "Computing the one-skeleton for threshold: " << threshold << std::endl;