No BSD License  

Highlights from
Regalia-Mitra EQ filter

from Regalia-Mitra EQ filter by Davide Renzi
Regalia-Mitra allpass filter cell used to design a multiple bandpass filters structure ...

regalia_mitra(X, w0, k, bw)
function [Y] = regalia_mitra(X, w0, k, bw)
%REGALIA_MITRA   Allpass filtering based on the Regalia-Mitra model.
%                This function can be used several times to build a
%                parallel EQ filtering system in a cascade.
%                (IEEE Trans. ASSP-35, no.1, January, 1987)
%
% Usage : [Y] = regalia_mitra(X, w0, k, bw)
%  X    input signal X[n]
%  w0   passband central freq. (rads/sample)
%  k    gain at fm for boost/cut (=1 original signal
%                                 >1 boost
%                                 <1 cut
%                                 =0 notch filter)
%  bw   bandpass at -3dB (rads/sample)
%  Y    output signal Y[n] after the regalia-mitra filtering operation on X[n]
%
%
% Author: Davide Renzi, d.renzi@infocom.uniroma1.it
%         INFOCOM Dept. University of Rome "La Sapienza"

% driving parameters
k0 = k/2;
k1 = (1-tan(bw/2))/(1+tan(bw/2));
k2 = -cos(w0);

% extract base function A(z)
b = [k1 k2*(1+k1) 1]; % num
a = [1 k2*(1+k1) k1]; % den

% operate the filtering
Y = filter(b,a,X);

Y = (0.5*X)+(0.5*Y) + (k0*X)-(k0*Y);

Contact us at files@mathworks.com