Pweave Example - Frequency response of a moving average filter
========================================================================
:Author: Matti Pastell
:Website: http://mpastell.com
**Create 11 point moving average filter and plot its frequency response and print the values.**
::
from pylab import *
import scipy.signal as signal
#A function to plot frequency and phase response
def mfreqz(b,a=1):
w,h = signal.freqz(b,a)
h = abs(h)
return(w/max(w), h)
#Make the impulse response function
n = 11.
b = repeat(1/n, n)
#Print impulse response of the filter
print(b)
::
[ 0.09090909 0.09090909 0.09090909 0.09090909 0.09090909 0.09090909
0.09090909 0.09090909 0.09090909 0.09090909 0.09090909]
**Calculate the frequency response and plot it:**
::
w, h = mfreqz(b)
#Plot the function
plot(w,h,'k')
ylabel('Amplitude')
xlabel(r'Normalized Frequency (x$\pi$rad/sample)')
title('Frequency response of an 11 point \n moving average filter')
.. image:: Fig1.png