diff options
author | ROUVREAU Vincent <vincent.rouvreau@inria.fr> | 2019-12-10 11:44:21 +0100 |
---|---|---|
committer | ROUVREAU Vincent <vincent.rouvreau@inria.fr> | 2019-12-10 11:44:21 +0100 |
commit | ad0131187e70657b699eb205de901e50ab36a5d9 (patch) | |
tree | bb8e721258a8ce034e0f7d0de87cf041a5e0d8f1 /src/Persistence_representations | |
parent | 10e7b9ff243260887c54c5ca49d92a27c281c68f (diff) |
Fix #118 for persistence_intervals
Diffstat (limited to 'src/Persistence_representations')
-rw-r--r-- | src/Persistence_representations/include/gudhi/Persistence_intervals.h | 5 | ||||
-rw-r--r-- | src/Persistence_representations/test/persistence_intervals_test.cpp | 4 |
2 files changed, 6 insertions, 3 deletions
diff --git a/src/Persistence_representations/include/gudhi/Persistence_intervals.h b/src/Persistence_representations/include/gudhi/Persistence_intervals.h index e2db4572..ea4220ea 100644 --- a/src/Persistence_representations/include/gudhi/Persistence_intervals.h +++ b/src/Persistence_representations/include/gudhi/Persistence_intervals.h @@ -6,6 +6,8 @@ * * Modification(s): * - YYYY/MM Author: Description of the modification + * - 2019/12 Vincent Rouvreau: Fix #118 - Make histogram_of_lengths and cumulative_histogram_of_lengths + * return the exact number_of_bins (was failing on x86) */ #ifndef PERSISTENCE_INTERVALS_H_ @@ -335,6 +337,9 @@ std::vector<size_t> Persistence_intervals::histogram_of_lengths(size_t number_of getchar(); } } + // we want number of bins equals to number_of_bins (some unexpected results on x86) + result[number_of_bins-1]+=result[number_of_bins]; + result.resize(number_of_bins); if (dbg) { for (size_t i = 0; i != result.size(); ++i) std::cerr << result[i] << std::endl; diff --git a/src/Persistence_representations/test/persistence_intervals_test.cpp b/src/Persistence_representations/test/persistence_intervals_test.cpp index 3b7a2049..a29dcbee 100644 --- a/src/Persistence_representations/test/persistence_intervals_test.cpp +++ b/src/Persistence_representations/test/persistence_intervals_test.cpp @@ -85,8 +85,7 @@ BOOST_AUTO_TEST_CASE(check_histogram_of_lengths) { template_histogram.push_back(6); template_histogram.push_back(1); template_histogram.push_back(7); - template_histogram.push_back(1); - template_histogram.push_back(1); + template_histogram.push_back(2); for (size_t i = 0; i != histogram.size(); ++i) { BOOST_CHECK(histogram[i] == template_histogram[i]); } @@ -105,7 +104,6 @@ BOOST_AUTO_TEST_CASE(check_cumulative_histograms_of_lengths) { template_cumulative_histogram.push_back(35); template_cumulative_histogram.push_back(36); template_cumulative_histogram.push_back(43); - template_cumulative_histogram.push_back(44); template_cumulative_histogram.push_back(45); for (size_t i = 0; i != cumulative_histogram.size(); ++i) { |