[med-svn] [aghermann] 09/60: sigproc::histogram() functions

andrei zavada hmmr-guest at alioth.debian.org
Mon Nov 4 23:49:52 UTC 2013


This is an automated email from the git hooks/post-receive script.

hmmr-guest pushed a commit to branch WIP
in repository aghermann.

commit 13a62a487bec9780809d3649019f6c7cbb19a262
Author: Andrei Zavada <johnhommer at gmail.com>
Date:   Tue Oct 8 02:19:43 2013 +0300

    sigproc::histogram() functions
---
 upstream/src/libsigproc/sigproc.hh |   25 +++++++++++++++++++++++++
 1 file changed, 25 insertions(+)

diff --git a/upstream/src/libsigproc/sigproc.hh b/upstream/src/libsigproc/sigproc.hh
index c1a0674..cc498db 100644
--- a/upstream/src/libsigproc/sigproc.hh
+++ b/upstream/src/libsigproc/sigproc.hh
@@ -124,6 +124,22 @@ raw_signal_profile( const SSignalRef<T>& sigref,
         return move(ret);
 }
 
+template <typename T>
+valarray<T>
+envelope_breadth_histogram( const SSignalRef<T>& sigref,
+                            double env_dh, double env_dt,
+                            double range_min, double binsize, size_t bins)
+{
+        valarray<T>
+                X {raw_signal_profile(
+                        sigref, env_dh, env_dt)};
+        valarray<size_t>
+                ret (bins);
+        for ( size_t i = 0; i < X.size(); ++i )
+                ++ret[ agh::alg::value_within( (X[i] - range_min) / binsize) ];
+        return ret;
+}
+
 
 template <typename T>
 valarray<T>
@@ -193,6 +209,15 @@ struct SCachedEnvelope
                         operator()( scope_);
                         return const_cast<const valarray<T>&>(mid);  // move() is *not* appropriate here
                 }
+
+        valarray<size_t>
+        histogram( double range_min, double binsize, size_t bins)
+                {
+                        auto X = breadth( binsize);
+                        valarray<size_t> ret(bins);
+                        for ( size_t i = 0; i < X.size(); ++i )
+                                ++ret[ agh::alg::value_within( (X[i] - range_min) / binsize) ];
+                        return ret;
                 }
 
     private:

-- 
Alioth's /git/debian-med/git-commit-notice on /srv/git.debian.org/git/debian-med/aghermann.git



More information about the debian-med-commit mailing list