Sign in

Not a member? | Forgot your Password?

Search blogs

Search tips


Free PDF Downloads

A Quadrature Signals Tutorial: Complex, But Not Complicated

Understanding the 'Phasing Method' of Single Sideband Demodulation

Complex Digital Signal Processing in Telecommunications

Introduction to Sound Processing

C++ Tutorial

Articles by category

IIR Filter Design Software

See Also

Embedded SystemsFPGA

Blogs > Christopher Felton > Python scipy.signal IIR Filter Design Cont.

Christopher Felton (contact)
Christopher Felton's current favorite projects are implementing DSP digital circuits with MyHDL for FPGAs. More information @ LinkedIn. Follow @FeltonChris !func...show full bio

Would you like to be notified by email when cfelton publishes a new blog?

  




Pageviews: 1451

Python scipy.signal IIR Filter Design Cont.

Posted by Christopher Felton on Jun 19 2012 under Basics | Python   

In the previous post the Python scipy.signal iirdesign function was disected.  We reviewed the basics of filter specification and reviewed how to use the iirdesign function to design IIR filters.  The previous post I only demonstrated low pass filter designs.  The following are examples how to use the iirdesign function for highpass, bandpass, and stopband filters designs.

Highpass Filter

The following is a highpass filter design for the different filter types.  Refer to the previous post for information on the iirdesign function arguements and usage.

1iir_ex2_highpass 2iir_ex2_highpass_zoom 3iir_ex2_highpass_zoom 4iir_ex2_highpass_phase

Again, similiar to the approach in the previous post tighter specifications can be given for the ellip and cheyb2 filter design.

5iir_ex2_highpass2 6iir_ex2_highpass2_phase

Bandpass Filter

As mentioned, a bandpass filter coefficients can be created with the iirdesign function as well.  Since the iirdesign function is similiar for the different filter types we will only use the ellip and cheby2 for the rest of the examples.

7iir_ex2_bandpass 8iir_ex2_bandpass_phase

Stopband Filter

And lastely here is an example to create a stopband filter.

9iir_ex2_stoppass 10iir_ex2_stoppass_phase
 
The scipy.signal iirdesign function, similiar to other signal processing packages, is a flexible tool to design and generate filter coefficients for an IIR filter.
 
 
 
 
 
 
 
 
 
 
 
 


Rate this article:
4
Rating: 4 | Votes: 1
 
   
 
posted by Christopher Felton
Christopher Felton's current favorite projects are implementing DSP digital circuits with MyHDL for FPGAs. More information @ LinkedIn.


Previous post by Christopher Felton: Python scipy.signal IIR Filter Design
Next post by Christopher Felton: Python scipy.signal IIR Filtering: An Example
all articles by Christopher Felton

Comments / Replies


fwkz
Said:
How exactly do you compute phase response?
1 year ago
+1
Reply
Sorry, you need javascript enabled to post any comments.
cfelton
Said:
In this case I am using the signal.freqz to generate the *complex* response. The phase is the angle of the complex values. I can say w,H = signal.freqz(b,a) and plot(w, angle(H))
1 year ago
+1
Reply
Sorry, you need javascript enabled to post any comments.
cfelton
Replied:
This code snippet includes and example using the signal.freqz and plotting the response, http://www.dsprelated.com/showcode/270.php
1 year ago
+2
fwkz
Replied:
What about phase response in previous post? Phase characteristic is completely different, much more smooth. I execute code from previous example and I get completely different shape.
w,H = signal.freqz(b,a) and plot(w, angle(H)) doesn't make sense there. How do you compute it?
1 year ago
0
cfelton
Replied:
Asking the question in one post is sufficient. If you look at the other post I attempted to answer the question.
1 year ago
0
fwkz
Replied:
I'm really sorry for redundancy but when I post my comment and come back here in couple of hours to see If someone replied I can't really see my comment so I just don't know if it's up here anymore. Right now I can only see your posts Chris. :
1 year ago
0
cfelton
Replied:
@fwkz, my apologies, for non-register users I have to approve the comments. I forgot to hit the "approve" and only hit the "reply". Thanks for pointing this out.
1 year ago
0
Sorry, you need javascript enabled to post any comments.