From 7cc9ef3e7d660f5b2c082a6b162614faeebc7419 Mon Sep 17 00:00:00 2001 From: "Joachim Wuttke (l)" <j.wuttke@fz-juelich.de> Date: Sun, 18 Jan 2015 16:54:44 +0100 Subject: [PATCH] trivial embelishments of libtrivia. --- pub/lib/manip.cpp | 2 +- pub/trivia/vector_ops.cpp | 14 +++++++------- pub/trivia/vector_ops.hpp | 4 ++-- 3 files changed, 10 insertions(+), 10 deletions(-) diff --git a/pub/lib/manip.cpp b/pub/lib/manip.cpp index 416e5031..51978b11 100644 --- a/pub/lib/manip.cpp +++ b/pub/lib/manip.cpp @@ -643,7 +643,7 @@ void NManip::ScaExch() for ( int i=0; i<fin->VS(j)->size(); ++i ) xcommon.push_back( fin->VS(j)->x[i] ); sort( xcommon.begin(), xcommon.end() ); - triv::unique(&xcommon, 1e-180, 1e-20); + triv::make_unique(&xcommon, 1e-180, 1e-20); printf("group of spectra %u .. %u has %i different x\n", ji, jf-1, (int)xcommon.size()); diff --git a/pub/trivia/vector_ops.cpp b/pub/trivia/vector_ops.cpp index 3ba48f92..96075baa 100644 --- a/pub/trivia/vector_ops.cpp +++ b/pub/trivia/vector_ops.cpp @@ -20,9 +20,9 @@ using namespace std; //* vector operations *// //***************************************************************************// -//! Insert val into vector *V, presuming the latter is sorted. +//! Inserts val into vector *V, presuming the latter is sorted. -void triv::merge( vector<double> *V, double val ) +void triv::insert_in_sorted( vector<double> *V, double val ) { for (size_t i=0; i<V->size(); ++i) { if (val>(*V)[i]) continue; @@ -33,9 +33,9 @@ void triv::merge( vector<double> *V, double val ) V->push_back(val); } -//! Eliminate double entries from vector V. +//! Eliminates double entries from vector V. -void triv::unique( vector<double> *V, double tolabs, double tolrel ) +void triv::make_unique( vector<double> *V, double tolabs, double tolrel ) { // tolrel z.Zt. nicht benutzt vector<double> aux; @@ -48,7 +48,7 @@ void triv::unique( vector<double> *V, double tolabs, double tolrel ) *V = aux; } -//! True unless V[i]<=V[i-1] for some i. +//! Returns rue unless V[i]<=V[i-1] for some i. bool triv::is_ascending( const vector<double>& V ) { @@ -58,7 +58,7 @@ bool triv::is_ascending( const vector<double>& V ) return true; } -//! Detect equidistant grid, set *step. +//! Returns true if grid is equidistant, sets *step. bool triv::is_equidist( double *step, const vector<double>& V ) { @@ -72,7 +72,7 @@ bool triv::is_equidist( double *step, const vector<double>& V ) return true; } -//! Compute array of sorted indices. +//! Returns array of indices sorted according to V. vector<size_t> triv::sorted_indices(vector<double> const& V) { diff --git a/pub/trivia/vector_ops.hpp b/pub/trivia/vector_ops.hpp index 0bc75a55..d2cb3d0b 100644 --- a/pub/trivia/vector_ops.hpp +++ b/pub/trivia/vector_ops.hpp @@ -9,8 +9,8 @@ namespace triv { using namespace std; - void merge( vector<double> *V, double val ); - void unique( vector<double> *V, + void insert_in_sorted( vector<double> *V, double val ); + void make_unique( vector<double> *V, double tolabs=1e-100, double tolrel=1e-10 ); bool is_ascending( const vector<double>& V ); bool is_equidist( double *step, const vector<double>& V ); -- GitLab