[Scipy-tickets] [SciPy] #1615: filter_design.py removing useful coefficients in normalize()

SciPy Trac scipy-tickets@scipy....
Tue Apr 3 20:26:27 CDT 2012


#1615: filter_design.py removing useful coefficients in normalize()
--------------------------+-------------------------------------------------
 Reporter:  waywardgeek   |       Owner:  cdavid     
     Type:  defect        |      Status:  new        
 Priority:  normal        |   Milestone:  Unscheduled
Component:  scipy.signal  |     Version:  0.10.0     
 Keywords:                |  
--------------------------+-------------------------------------------------

Comment(by ldsalins):

 I had the same issues trying to generate 6th order butterworth
 coefficients on some data I was trying to filter.  Adding atol=1e-14 as
 the last argument to the allclose function in the section of the
 filterdesign.py script described previously fixes this problem also.  The
 problem occurs because atol is set to 1e-8 by default.  See below.

     if allclose(outb[:,0], 0, rtol=1e-14, atol=1e-14):

         warnings.warn("Badly conditioned filter coefficients (numerator):
 the "

             "results may be meaningless", BadCoefficients?)

         while allclose(outb[:,0], 0, rtol=1e-14, atol=1e-14) and
 (outb.shape[-1] > 1):

             outb = outb[:,1:]

 After I made the changes above, I compared scipy's output to Matlab's
 output on the same data that I was previously having trouble generating
 the coefficients for in Python and the output was identical.  Python and
 Scipy handle large datasets much better than Matlab.  I hope this helps.
 Thank you!

-- 
Ticket URL: <http://projects.scipy.org/scipy/ticket/1615#comment:2>
SciPy <http://www.scipy.org>
SciPy is open-source software for mathematics, science, and engineering.


More information about the Scipy-tickets mailing list