Esempio n. 1
0
    def test_fftfilt(self):
        f = 10000.0
        b = si.firwin(50, f / self.fs)

        u_lfilter = si.lfilter(b, 1, self.u)
        u_fftfilt = s.fftfilt(b, self.u)
        assert_almost_equal(u_lfilter, u_fftfilt)
Esempio n. 2
0
    def test_fftfilt(self):
        f = 10000.0
        b = si.firwin(50, f/self.fs)

        u_lfilter = si.lfilter(b, 1, self.u)
        u_fftfilt = s.fftfilt(b, self.u)
        assert_almost_equal(u_lfilter, u_fftfilt)
Esempio n. 3
0
Demo of fftfilt function.
"""

# Copyright (c) 2009-2015, Lev Givon
# All rights reserved.
# Distributed under the terms of the BSD license:
# http://www.opensource.org/licenses/bsd-license

import scipy.signal as si

import bionet.utils.signal_extras as s
import bionet.utils.band_limited as bl

print 'creating test signal..'
dur = 0.2
dt = 1e-6
fs = 1 / dt
fmax = 50000.0
u = bl.gen_band_limited(dur, dt, fmax, nc=10)

print 'creating filter..'
f1 = 10000.0
a = 1
b = si.firwin(50, f1 / fs)

print 'filtering with lfilter..'
u_lfilter = si.lfilter(b, a, u)

print 'filtering with fftfilt..'
u_fftfilt = s.fftfilt(b, u)
Esempio n. 4
0
# Distributed under the terms of the BSD license:
# http://www.opensource.org/licenses/bsd-license

from numpy.fft import fft
from scipy.signal import lfilter, remez

import bionet.utils.signal_extras as s
import bionet.utils.band_limited as bl

print 'creating test signal..'
dur = 0.2
dt = 1e-6
fs = 1/dt
fmax = 5000.0
u = bl.gen_band_limited(dur, dt, fmax, nc=10)
uf = fft(u)

print 'creating filter..'
f1 = 1000.0
f2 = 2000.0
a = 1
[numtaps, bands, desired, weight] = s.remezord([f1, f2], [1, 0],
                                               [0.01, 0.01], fs)
b = remez(numtaps, bands, desired, weight)

print 'filtering signal with lfilter..'
u_lfilter = lfilter(b, a, u)

print 'filtering signal with fftfilt..'
u_fftfilt = s.fftfilt(b, u)