diff options
author | ROUVREAU Vincent <vincent.rouvreau@inria.fr> | 2019-11-20 09:29:27 +0100 |
---|---|---|
committer | ROUVREAU Vincent <vincent.rouvreau@inria.fr> | 2019-11-20 09:29:27 +0100 |
commit | 7008061749a52e9717d550b44efe60173f4128b5 (patch) | |
tree | f0d53c7a5cb849e3d12d03c45935673969cb4fcb /src/Persistent_cohomology/include/gudhi/Persistent_cohomology.h | |
parent | 8227cd68d5aa7c9eeda5dd474f2536b896b6f491 (diff) | |
parent | 445a217f4869c62888a20302491b085fbcaabd1b (diff) |
Merge branch 'master' into persistence_graphical_tool_improvements
Diffstat (limited to 'src/Persistent_cohomology/include/gudhi/Persistent_cohomology.h')
-rw-r--r-- | src/Persistent_cohomology/include/gudhi/Persistent_cohomology.h | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/Persistent_cohomology/include/gudhi/Persistent_cohomology.h b/src/Persistent_cohomology/include/gudhi/Persistent_cohomology.h index 944b6d35..0f1876d0 100644 --- a/src/Persistent_cohomology/include/gudhi/Persistent_cohomology.h +++ b/src/Persistent_cohomology/include/gudhi/Persistent_cohomology.h @@ -600,8 +600,10 @@ class Persistent_cohomology { * @return A vector of Betti numbers. */ std::vector<int> betti_numbers() const { + // Don't allocate a vector of negative size for an empty complex + int siz = std::max(dim_max_, 0); // Init Betti numbers vector with zeros until Simplicial complex dimension - std::vector<int> betti_numbers(dim_max_, 0); + std::vector<int> betti_numbers(siz); for (auto pair : persistent_pairs_) { // Count never ended persistence intervals @@ -639,8 +641,10 @@ class Persistent_cohomology { * @return A vector of persistent Betti numbers. */ std::vector<int> persistent_betti_numbers(Filtration_value from, Filtration_value to) const { + // Don't allocate a vector of negative size for an empty complex + int siz = std::max(dim_max_, 0); // Init Betti numbers vector with zeros until Simplicial complex dimension - std::vector<int> betti_numbers(dim_max_, 0); + std::vector<int> betti_numbers(siz); for (auto pair : persistent_pairs_) { // Count persistence intervals that covers the given interval // null_simplex test : if the function is called with to=+infinity, we still get something useful. And it will |