changeset 21:37917af73ae9 spect

Some tidying
author Chris Cannam
date Thu, 04 Oct 2018 14:46:41 +0100
parents 7964cc5ad98f
children a1879532385e
files FChTransformF0gram.cpp FChTransformUtils.h
diffstat 2 files changed, 14 insertions(+), 9 deletions(-) [+]
line wrap: on
line diff
--- a/FChTransformF0gram.cpp	Thu Oct 04 13:32:47 2018 +0100
+++ b/FChTransformF0gram.cpp	Thu Oct 04 14:46:41 2018 +0100
@@ -26,7 +26,7 @@
 
 using namespace breakfastquay;
 
-#define DEBUG
+//#define DEBUG
 
 #define MAX(x, y) (((x) > (y)) ? (x) : (y))
 
@@ -600,11 +600,8 @@
 
     // total number & initial quantity of f0s
 
-    cerr << "per oct = " << m_f0_params.num_f0s_per_oct << ", octs = " << m_f0_params.num_octs << endl;
     m_glogs_init_f0s = (int)(((double)m_f0_params.num_f0s_per_oct)*log2(5.0))+1;
-    cerr << "init_f0s = " << m_glogs_init_f0s << endl;
     m_glogs_num_f0s = (m_f0_params.num_octs+1)*m_f0_params.num_f0s_per_oct + m_glogs_init_f0s;
-    cerr << "num_f0s = " << m_glogs_num_f0s << endl;
 
     // Initialize arrays
     m_glogs_f0 = allocate<double>(m_glogs_num_f0s);
@@ -1023,7 +1020,6 @@
         Utils::interp1q(m_glogs + i_warp*m_glogs_num_f0s, m_glogs_fifth_harmonic_posint, m_glogs_fifth_harmonic_posfrac, m_glogs_fifth_harmonic, (m_f0_params.num_octs+1)*m_f0_params.num_f0s_per_oct);
         for (int i = m_glogs_num_f0s-1; i >= m_glogs_init_f0s; i--) {
             m_glogs[i + i_warp*m_glogs_num_f0s] -= MAX(MAX(m_glogs[i-m_f0_params.num_f0s_per_oct + i_warp*m_glogs_num_f0s],m_glogs_third_harmonic[i-m_glogs_init_f0s]),m_glogs_fifth_harmonic[i-m_glogs_init_f0s]);
-            //m_glogs[i] -= MAX(m_glogs[i-m_f0_params.num_f0s_per_oct],m_glogs_third_harmonic[i-m_glogs_init_f0s]);
         }
         for (int i = m_glogs_init_f0s; i < m_glogs_num_f0s-m_f0_params.num_f0s_per_oct; i++) {
             m_glogs[i + i_warp*m_glogs_num_f0s] -= 0.3*m_glogs[i+m_f0_params.num_f0s_per_oct + i_warp*m_glogs_num_f0s];
--- a/FChTransformUtils.h	Thu Oct 04 13:32:47 2018 +0100
+++ b/FChTransformUtils.h	Thu Oct 04 14:46:41 2018 +0100
@@ -20,15 +20,24 @@
 
 #include <string.h>
 
+#include "bqvec/Restrict.h"
+
 class Utils
 {
 public:
     static void interp1(const double *x1,const double *y1, int N1, const double *x2, double *y2, int N2);
 
-    static void interp1q(const double *y1, const int *x2_int, const double *x2_frac, double *y2, int N2){
-        for(int i=0;i<N2;i++){
-            y2[i] = y1[x2_int[i]]*(1.0-x2_frac[i])+y1[x2_int[i]+1]*x2_frac[i];
-        } // for
+    static void interp1q(const double *const BQ_R__ y1,
+                         const int *const BQ_R__ x2_int,
+                         const double *const BQ_R__ x2_frac,
+                         double *const BQ_R__ y2,
+                         int const n2)
+    {
+        for (int i = 0; i < n2; ++i) {
+            double f = x2_frac[i];
+            int j = x2_int[i];
+            y2[i] = y1[j] * (1.0-f) + y1[j+1] * f;
+        }
     }
 
     static void cumtrapz(const double *x, const double *y, int N, double *accum);