changeset 262:9b07a28aefad

Fix window functions. We need tests for these.
author Chris Cannam
date Wed, 22 May 2013 22:19:48 +0100
parents 53ff481f1a41
children 772484665c5d
files yetilab/transform/window.yeti
diffstat 1 files changed, 8 insertions(+), 6 deletions(-) [+]
line wrap: on
line diff
--- a/yetilab/transform/window.yeti	Wed May 22 15:02:17 2013 +0100
+++ b/yetilab/transform/window.yeti	Wed May 22 22:19:48 2013 +0100
@@ -4,19 +4,21 @@
 vec = load yetilab.vector.vector;
 bf = load yetilab.vector.blockfuncs;
 
-cosinewin a0 a1 a2 a3 n =
+cosinewin a0 a1 a2 a3 n1 =
+   (n = n1 - 1;
     vec.fromList
        (map do i:
             a0
             - a1 * cos(2 * pi * i / n)
             + a2 * cos(4 * pi * i / n)
-            - a2 * cos(6 * pi * i / n)
-            done [0..n-1]);
+            - a3 * cos(6 * pi * i / n)
+            done [0..n]));
                   
 hann = cosinewin 0.5 0.5 0.0 0.0;
 hamming = cosinewin 0.54 0.46 0.0 0.0;
 blackman = cosinewin 0.42 0.50 0.08 0.0;
-nuttall = cosinewin 0.3635819 0.4891775 0.1365995 0.0106411;
+nuttall = cosinewin 0.355768 0.487396 0.144232 0.012604;
+blackmanNuttall = cosinewin 0.3635819 0.4891775 0.1365995 0.0106411;
 blackmanHarris = cosinewin 0.35875 0.48829 0.14128 0.01168;
 boxcar = vec.consts 0.5;
 
@@ -41,7 +43,7 @@
     esac;
 
 {
-cosinewin, hann, hamming, blackman, nuttall, blackmanHarris, boxcar, bartlett,
-windowed
+cosinewin, hann, hamming, blackman, nuttall, blackmanNuttall, blackmanHarris,
+boxcar, bartlett, windowed
 };