diff options
Diffstat (limited to 'src/Persistence_representations/utilities/persistence_intervals/compute_birth_death_range_in_persistence_diagram.cpp')
-rw-r--r-- | src/Persistence_representations/utilities/persistence_intervals/compute_birth_death_range_in_persistence_diagram.cpp | 67 |
1 files changed, 30 insertions, 37 deletions
diff --git a/src/Persistence_representations/utilities/persistence_intervals/compute_birth_death_range_in_persistence_diagram.cpp b/src/Persistence_representations/utilities/persistence_intervals/compute_birth_death_range_in_persistence_diagram.cpp index 2e0d680f..750d0a55 100644 --- a/src/Persistence_representations/utilities/persistence_intervals/compute_birth_death_range_in_persistence_diagram.cpp +++ b/src/Persistence_representations/utilities/persistence_intervals/compute_birth_death_range_in_persistence_diagram.cpp @@ -20,8 +20,6 @@ * along with this program. If not, see <http://www.gnu.org/licenses/>. */ - - #include <gudhi/reader_utils.h> #include <gudhi/Persistence_intervals.h> @@ -29,43 +27,38 @@ #include <vector> #include <limits> - - using namespace Gudhi; using namespace Gudhi::Persistence_representations; +int main(int argc, char** argv) { + std::cout << "This program compute the range of birth and death times of persistence pairs in diagrams provided as " + "an input. \n"; + std::cout << "The first parameter of the program is the dimension of persistence to be used. If your file contains "; + std::cout << "the information about dimension of persistence pairs, please provide here the dimension of persistence " + "pairs you want to use. If your input files consist only "; + std::cout << "of birth-death pairs, please set this first parameter to -1 \n"; + std::cout << "The remaining parameters of the program are the names of files with persistence diagrams. \n"; + + int dim = atoi(argv[1]); + unsigned dimension = std::numeric_limits<unsigned>::max(); + if (dim >= 0) { + dimension = (unsigned)dim; + } + std::vector<const char*> filenames; + for (int i = 2; i < argc; ++i) { + filenames.push_back(argv[i]); + } + + double min_ = std::numeric_limits<double>::max(); + double max_ = -std::numeric_limits<double>::max(); -int main( int argc , char** argv ) -{ - std::cout << "This program compute the range of birth and death times of persistence pairs in diagrams provided as an input. \n"; - std::cout << "The first parameter of the program is the dimension of persistence to be used. If your file contains "; - std::cout << "the information about dimension of persistence pairs, please provide here the dimension of persistence pairs you want to use. If your input files consist only "; - std::cout << "of birth-death pairs, please set this first parameter to -1 \n"; - std::cout << "The remaining parameters of the program are the names of files with persistence diagrams. \n"; - - int dim = atoi( argv[1] ); - unsigned dimension = std::numeric_limits<unsigned>::max(); - if ( dim >= 0 ) - { - dimension = (unsigned)dim; - } - std::vector< const char* > filenames; - for ( int i = 2 ; i < argc ; ++i ) - { - filenames.push_back( argv[i] ); - } - - double min_ = std::numeric_limits<double>::max(); - double max_ = -std::numeric_limits<double>::max(); - - for ( size_t file_no = 0 ; file_no != filenames.size() ; ++file_no ) - { - std::cout << "Creating diagram based on a file : " << filenames[file_no] << std::endl; - Persistence_intervals p( filenames[file_no] , dimension ); - std::pair<double,double> min_max_ = p.get_x_range(); - if ( min_max_.first < min_ )min_ = min_max_.first; - if ( min_max_.second > max_ )max_ = min_max_.second; - } - std::cout << "Birth-death range : min: " << min_ << ", max: " << max_ << std::endl; - return 0; + for (size_t file_no = 0; file_no != filenames.size(); ++file_no) { + std::cout << "Creating diagram based on a file : " << filenames[file_no] << std::endl; + Persistence_intervals p(filenames[file_no], dimension); + std::pair<double, double> min_max_ = p.get_x_range(); + if (min_max_.first < min_) min_ = min_max_.first; + if (min_max_.second > max_) max_ = min_max_.second; + } + std::cout << "Birth-death range : min: " << min_ << ", max: " << max_ << std::endl; + return 0; } |