Multirate Filtering for Digital Signal Processing: MATLAB Applications

This Appendix contains three MATLAB programs, which are used through the book.
Program halfbandiir.m computes the coefficients and poles and zeros of the IIR halfband filters.
Program qmflattice.m for computing the lattice coefficients of the power-complementary minimum-phase/maximum-phase FIR filter pair.
Program minphase.m for extracting minimum-phase factor from the separable linear-phase FIR filter.
halfbandiir: program for IIR halfband filter design
Lutovac, M. D., & To i?, D. V., & Evans, B. L. (2000). Filter design for signal processing using MATLAB and Mathematica. Upper Saddle River, NJ: Prentice Hall.
Mili?, L. D., & Lutovac, M.D. (2002). Efficient multirate filtering. In Gordana Jovanovi?-Dole?ek, (ed.), Multirate Systems: Design & Applications. Hershey, PA: Idea Group Publishing, 105-142.
Mili?, L. D., & Lutovac, M.D. (2003). Efficient algorithm for the design of high-speed elliptic IIR filters. AE Int. J. Electron. Commun., 57( 4), 255-262.
function [b,a,z,p,k] = halfbandiir(N,fp,varargin)%% HALFBANDIIR Halfband IIR filter design.% [B,A,Z,P,K] = HALFBANDIIR(N,Fp) designs a lowpass N-th order% halfband IIR filter with an equiripple characteristic.%% The filter order, N, must be selected such that N is an odd integer.% Fp determines the passband edge frequency that must satisfy% 0 < Fp < 1/2 where 1/2 corresponds to pi/2 [rad/sample].%% [B,A,Z,P,K] = HALFBANDIIR('minorder',Fp,Dev) designs the minimum% order IIR filter, with passband edge Fp and ripple Dev.<span class="beginpage"> pagenum="386"><a name="1080"></a><a name="IDX-386"></a></span>% Dev is a passband ripple that must satisfy 0 < Dev...