From 0df3c9bcca4345b8be27ca2fd90eb5137072740c Mon Sep 17 00:00:00 2001 From: vrouvrea Date: Thu, 15 Dec 2016 20:50:56 +0000 Subject: New pairs in dimension function in Persistence cohomology git-svn-id: svn+ssh://scm.gforge.inria.fr/svnroot/gudhi/trunk@1887 636b058d-ea47-450e-bf9e-a15bfbe3eedb Former-commit-id: 76bc9a951d752a6ca0f62244012965b5b6597a17 --- .../include/gudhi/Persistent_cohomology.h | 15 +++++++++++++++ 1 file changed, 15 insertions(+) (limited to 'src/Persistent_cohomology/include/gudhi/Persistent_cohomology.h') diff --git a/src/Persistent_cohomology/include/gudhi/Persistent_cohomology.h b/src/Persistent_cohomology/include/gudhi/Persistent_cohomology.h index b31df6a4..d3a8acc0 100644 --- a/src/Persistent_cohomology/include/gudhi/Persistent_cohomology.h +++ b/src/Persistent_cohomology/include/gudhi/Persistent_cohomology.h @@ -690,6 +690,21 @@ class Persistent_cohomology { return persistent_pairs_; } + /** @brief Returns persistence pairs for a given dimension. + * @param[in] dimension Dimension to get the birth and death pairs from. + * @return A vector of persistence intervals (birth and death) on a fixed dimension. + */ + std::vector< std::pair< Filtration_value , Filtration_value > > + pairs_in_dimension( unsigned dimension ) { + std::vector< std::pair< Filtration_value , Filtration_value > > result; + for (auto pair : persistent_pairs_) { + if (cpx_->dimension( get<0>(pair)) == dimension ) { + result.push_back(std::pair(cpx_->filtration(get<0>(pair)), + cpx_->filtration(get<1>(pair)))); + } + } + return result; + } private: /* * Structure representing a cocycle. -- cgit v1.2.3