Sophocles J. Orfanidis
ECE Department, Rutgers University
94 Brett Road, Piscataway, NJ 08854-8058, USA
Email: orfanidi@ece.rutgers.edu
Tel: 732-445-5017
Date: June 15, 2005
This toolbox contains a collection of MATLAB functions for designing high-order digital parametric equalizer filters based on Butterworth, Chebyshev, and elliptic analog prototypes, and for their implementation in frequency-shifted transposed, normalized lattice, and optimum state-space forms. High-order equalizers provide flatter passbands and sharper bandedges at the expense of higher computational cost. The conventional biquadratic equalizer is obtained as a special case, and its optimum minimum roundoff-noise state-space form is included. The functions may also be used to design conventional lowpass, highpass, bandpass, and bandstop filters.
A subset of this toolbox includes functions for the computation of the Jacobian elliptic functions at complex arguments based on the Landen transformation, the computation of their inverses, elliptic integrals, solutions of the degree equation, and evaluation of the elliptic rational function.
Several of these functions have been incorporated into recent (2006+) versions of MATLAB's Filter Design Toolbox.
Reference: Sophocles J. Orfanidis, "High-Order Digital Parametric Equalizer Design," J. Audio Eng. Soc., vol. 53, pp. 1026-1046, Nov. 2005.
Please put all files in the same directory and add the directory to the matlabpath. To get help, just type a function's name at the command prompt. See the links below for some design examples. Equalizer Design Functions -------------------------- hpeq - high-order digital parametric equalizer design hpeq1 - same as hpeq, but uses explicit design equations hpeqbw - bandwidth remapping for high-order digital parametric equalizer hpeqex0 - example output from hpeq hpeqex1 - example output from hpeq hpeqex2 - example output from hpeq hpeqord - order determination of digital parametric equalizer bandedge - calculate left and right bandedge frequencies from bilinear transformation blt - bilinear transformation of analog second-order sections octbw - iterative solution of the octave bandwidth equation bandwidth - calculate bandwidth at any level Elliptic Function Computations ------------------------------ acde - inverse of cd elliptic function asne - inverse of sn elliptic function cde - cd elliptic function with normalized complex argument cne - cn elliptic function with normalized real argument dne - dn elliptic function with normalized real argument sne - sn elliptic function with normalized complex argument ellipdeg - solves the degree equation (k from N,k1) ellipdeg1 - solves the degree equation (k1 from N,k) ellipdeg2 - solves the degree equation using nomes ellipk - complete elliptic integral K(k) of first kind elliprf - elliptic rational function landen - Landen transformations of an elliptic modulus Realizations and Filtering -------------------------- cas2dir - cascade to direct form coefficients dir2decoup - direct form to decoupled form coefficients dir2latt - direct form to normalized lattice form dir2state - direct form to optimum state-space form for second-order filters decoupfilt - filtering in frequency-shifted 2nd-order cascaded decoupled form, block diagram df2filt - filtering in frequency-shifted 2nd-order cascaded direct form II, block diagram nlattfilt - filtering in frequency-shifted 2nd-order cascaded normalized lattice sections, block diagram statefilt - filtering in frequency-shifted cascaded state-space form, block diagram transpfilt - filtering in frequency-transformed 2nd-order cascaded transposed direct-form-II, block diagram stpeq - minimum-noise state-space realization of biquadratic digital parametric equalizer, block diagram cascfilt - filtering in cascade form (uses the built-in function filter) Analog Equalizer Design Functions --------------------------------- bandedge_a - bandedge frequencies for analog equalizer designs fresp_a - frequency response of cascaded analog filter hpeq_a - high-order analog parametric equalizer design hpeqbw_a - remap bandwidth of high-order analog parametric equalizer hpeqex1_a - example output from hpeq_a hpeqex2_a - example output from hpeq_a hpeqord_a - order determination of analog parametric equalizer Figures from the above Paper ---------------------------- fig10 - Butterworth design example fig11 - Chebyshev-1 design example fig12 - Chebyshev-2 design example fig13 - elliptic design example fig14 - designs with common 3-dB widths fig15 - time-varying center frequency and bandwidth fig16a - step gain, linear bandwidth fig16b - four-step gain, linear bandwidth fig16c - linear gain, linear bandwidth Test Scripts ------------ testfilt - test of seven filtering realizations testoctbw - test of the iterative solution of the bandwidth equation using octbw teststpeq - testing of the biquad state-space form Miscellaneous ------------- srem - symmetrized version of REM (used by ACDE) ellipap2 - substitute for the built-in function ellipap fresp - frequency response of a cascaded IIR filter at a frequency vector w ripple - calculate ripple factors from gains zt - evaluates z-transform of finite-duration sequence