Sophocles J. Orfanidis
Email: orfanidi@ece.rutgers.edu
Date: June 15, 2005
ECE Department, Rutgers University
94 Brett Road, Piscataway, NJ 08854-8058, USA
Tel: 732-445-5017
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.
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