[http://inst.eecs.berkeley.edu/~ee123/fa11/docs/FastConv.pdf Fast Convolution Based on the FFT] This reference shows how end effects are dealt with. To use the FFT for convolution, you need to do it in blocks, which leads to end effects, and more latency, but if your blocks are big enough, it speeds up the convolution.
[http://inst.eecs.berkeley.edu/~ee123/fa11/docs/FastConv.pdf Fast Convolution Based on the FFT] This reference shows how end effects are dealt with. To use the FFT for convolution, you need to do it in blocks, which leads to end effects, and more latency, but if your blocks are big enough, it speeds up the convolution.
[http://itee.uq.edu.au/~elec4600/elec4600_lectures/1perpage/lectremez.pdf The Parks-Mclellan] (Remez) iterative algorithm gives equal ripple in the pass band and stop band. MATLAB/octave have automated functions to do that. See [http://octave.sourceforge.net/signal/function/remez.html remez() in the Signals package of octave.]
The truncated Fourier series or DFT method of FIR filter design gives the best approximation of the desired frequency response, but it is not very good near discontinuities. [http://itee.uq.edu.au/~elec4600/elec4600_lectures/1perpage/lectremez.pdf The Parks-Mclellan] (Remez) iterative algorithm gives equal ripple in the pass band and stop band. MATLAB/octave have automated functions to do that. See [http://octave.sourceforge.net/signal/function/remez.html remez() in the Signals package of octave.]
Fast Convolution Based on the FFT This reference shows how end effects are dealt with. To use the FFT for convolution, you need to do it in blocks, which leads to end effects, and more latency, but if your blocks are big enough, it speeds up the convolution.
The truncated Fourier series or DFT method of FIR filter design gives the best approximation of the desired frequency response, but it is not very good near discontinuities. The Parks-Mclellan (Remez) iterative algorithm gives equal ripple in the pass band and stop band. MATLAB/octave have automated functions to do that. See remez() in the Signals package of octave.
HW #6 - Pick a property of the Fourier Transform & present it on the Wiki. Make a table with all your properties. Interpret your property. (Ben Henry)(Chris Lau)(Victor Shepherd)
HW #9 - Add to #8 writeup how to do a decimating filter and figure out how many multiply & adds are needed for a n/2 decimating low pass filter.(Jodi S. Hodge)(Chris Lau)(Victor Shepherd)
HW #10 - Use Octave (or Mathlab or Silab) to plot the frequency response of low pass filters with cut off frequencies of 1/32T, 1/8T, and 1/4T and compare how many coeffficients are needed with an eye to answer the question "Is it less calculation to decimate and then filter, or better to put the filter in the pre-decimation filter?" (Jodi S. Hodge)(Victor Shepherd)
HW #11 - Is our method the same as Mark Fowler's? See
HW #12 - Experiment with a variety of signals having a 3Khz bandwidth to determine the resolution you can get when doing a cross correlation . You can generate the signals randomly and filter them to obtain the band-limited signals. (Jodi S. Hodge)