# HG changeset patch # User Chris Cannam # Date 1399995727 -3600 # Node ID b218e23622462d706200ab2ae34fcd618f1878cd # Parent e9716e9a44e4d449ec593949ae681e06afa482b2 Fix dirac "window" length (and fix test) diff -r e9716e9a44e4 -r b218e2362246 src/may/signal/test/test_window.yeti --- a/src/may/signal/test/test_window.yeti Mon May 12 17:46:31 2014 +0100 +++ b/src/may/signal/test/test_window.yeti Tue May 13 16:42:07 2014 +0100 @@ -17,7 +17,8 @@ Bartlett () : win.bartlett, ]; -close aa bb = all id (map2 do a b: (abs (a - b) < 0.0001) done aa bb); +close aa bb = (length aa == length bb) and + all id (map2 do a b: (abs (a - b) < 0.0001) done aa bb); isSymmetric a = (len = (vec.length a); diff -r e9716e9a44e4 -r b218e2362246 src/may/signal/window.yeti --- a/src/may/signal/window.yeti Mon May 12 17:46:31 2014 +0100 +++ b/src/may/signal/window.yeti Tue May 13 16:42:07 2014 +0100 @@ -78,7 +78,8 @@ if n < 2 then vec.ones n else n0 = if n % 2 == 0 then n/2 else (n-1)/2 fi; - vec.concat [ vec.zeros n0, vec.ones 1, vec.zeros n0 ] + n2 = if n % 2 == 0 then n/2-1 else (n-1)/2 fi; + vec.concat [ vec.zeros n0, vec.ones 1, vec.zeros n2 ] fi; /**