On Jan 5, 2012, at 10:00 AM, josef.pktd@gmail.com wrote:
On Thu, Jan 5, 2012 at 10:32 AM, Neal Becker <ndbecker2@gmail.com> wrote:
Some comments on signal processing:
Correct me if I'm wrong, but I think scipy signal (like matlab) implement only a general purpose filter, which is an IIR filter, single rate. Efficiency is very important in my work, so I implement many optimized variations.
Most of the time, FIR filters are used. These then come in variations for single rate, interpolation, and decimation (there is also another design for rational rate conversion). Then these have variants for scalar/complex input/output, as well as complex in/out with scalar coefficients.
IIR filters are seperate.
FFT based FIR filters are another type, and include both complex in/out as well as scalar in/out (taking advantage of the 'two channel' trick for fft).
just out of curiosity: why no FFT base IIR filter?
It looks like a small change in the implementation, but it is slower than lfilter for shorter time series so I mostly dropped fft based filtering.
I think he is talking about filter design, correct? lfilter can be used to implement FIR and IIR filters -- although an FIR filter is easily computed with convolve/correlate as well. FIR filter design is usually done in the FFT-domain. But, this picks the coefficients for the actual filtering itself done with something like convolve If you *do* filtering in the FFT-domain than it's usually going to be IIR. What are you referring to when you say "small change in the implementation" -Travis
Josef
_______________________________________________ SciPy-Dev mailing list SciPy-Dev@scipy.org http://mail.scipy.org/mailman/listinfo/scipy-dev
_______________________________________________ SciPy-Dev mailing list SciPy-Dev@scipy.org http://mail.scipy.org/mailman/listinfo/scipy-dev