[SciPy-Dev] SciPy roadmap does not address limitations of current filter-related code

Phillip Feldman phillip.m.feldman at gmail.com
Sun Aug 6 13:10:54 EDT 2017


Some of us in the engineering community are unhappy with the SciPy roadmap.
>From our perspective, the main deficiency of scipy.signal is that the
filtering functionality is of limited practical utility. We would like to
see the following:

(1) support for lowpass, bandpass, and bandstop FIR filter design, with the
user specifying (a) the passband ripple, (b) the minimum stopband
rejection, and (c) the design method, with this last being optional. Rather
than forcing the user to specify the order of the filter, which requires
many iterations to determine the minimum filter order that will do the job,
we'd like to see the code automatically determine the minimum filter order
that can meet the user's specs.

(2) support for fixed-binary-point arithmetic.

(3) support for filtering and the design of filters that use
fixed-binary-point arithmetic.

Such changes would be a big step in the direction of making
Python+NumPy+SciPy a viable alternative to Matlab + the Matlab Signal
Processing Toolbox.

As an aside, I'd like to comment on the documentation for
`scipy.signal.kaiserord`, which says the following:

scipy.signal.kaiserord(ripple, width)[source]

<snip> ripple : float

Positive number specifying maximum ripple in passband (dB) and minimum
ripple in stopband.

When designing a lowpass digital filter, one normally specifies the maximum
ripple in the passband and the minimum rejection in the stopband. With this
function, there is no way to specify how much rejection one gets in the
stopband, and the filter design code is also apparently trying to limit
stopband ripple, which is something that no engineer would care about. The
documentation can't just be badly worded, because there would have to be
another parameter to specify the stopband rejection.

Phillip
--
Dr. Phillip M. Feldman
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/scipy-dev/attachments/20170806/38fb25ce/attachment.html>


More information about the SciPy-Dev mailing list