Source: http://doctord.webhop.net/Courses/Textbooks/Smith_DSP/dsp_book_Ch31.pdf