10. IIR Filters Labs - MATLAB 6

The objective for this lab is to build an intuitive understanding of the relationship between the location of poles and zeros in the z-domain, the impulse response \(h[n]\) in the \(n\)-domain, and the frequency response \(H(e^{j\hat\omega})\) (the \(\hat\omega\)-domain). A graphical user interface (GUI) called PeZ was written in MATLAB for doing interactive explorations of the three domains.
The goal of this lab is to explore the connection between the time domain (n), the frequency domain (\(\hat\omega\)), and the z-transform domain, using the GUI PeZ in MATLAB.
  1. Placing Zeros: When placed on the unit circle, zeros of \(A(z)\) will force the frequency response to be zero which can then be used to null out sinusoids at one frequency.
  2. Placing Poles: When placed near the unit circle (but inside), roots of \(B(z)\) will create peaks in the frequency response which can be used to form BPFs.
  3. Designing IIR Notch Filters: requires conjugate zeros on the unit circle (UC) with a poles at the same angle, just inside the UC. The frequency response of the notch is much sharper than a nulling filter which is an FIR filter formed only from the conjugate zeros on the UC.
In this mini-project you will experiment with PeZ to learn the connection between pole-zero placement and frequency response. Given this information you will redo the Tone Removal Mini-Project using an IIR.
For this mini project you will write a simple function that listens to a tone and identifies what note it is. [Files]
For this mini project you will write a simple function that listens to a wav file of a simple song and identifies the notes being played. The wav files have some simple songs on which you can practice. [Files]
You have gotten to the point in your studies that you can understand DSP papers that appear in IEEE publications. The purpose of this project is to read one such paper and reproduce some of its results.