From a74748bbef7b77a14bbd5d09621ee6e9e2b1c4db Mon Sep 17 00:00:00 2001 From: Jesse McDonald Date: Mon, 11 Nov 2013 04:40:28 -0600 Subject: [PATCH] Include alternate band-pass kernel as difference of low-pass kernels. --- LowPass.hs | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/LowPass.hs b/LowPass.hs index 7ef88e1..08d712e 100644 --- a/LowPass.hs +++ b/LowPass.hs @@ -50,6 +50,10 @@ bandPassKernel :: Double -> (Double, Double) -> Int -> Vector Double bandPassKernel sr (lfc, hfc) ksize = invertSpectrum $ bandRejectKernel sr (lfc, hfc) ksize +bandPassKernel' :: Double -> (Double, Double) -> Int -> Vector Double +bandPassKernel' sr (lfc, hfc) ksize = + lowPassKernel sr hfc ksize - lowPassKernel sr lfc ksize + -- convolution = integral(kernel(t-tau)*input(tau),tau) -- t is output vector index (j); products and summation are done with dot product (<.>) convolve :: Vector Double -> Vector Double -> Vector Double