miller-book/node139.html

217 lines
7.5 KiB
HTML

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<!--Converted with LaTeX2HTML 2002-2-1 (1.71)
original version by: Nikos Drakos, CBLU, University of Leeds
* revised and updated by: Marcus Hennecke, Ross Moore, Herb Swan
* with significant contributions from:
Jens Lippmann, Marek Rouchal, Martin Wilck and others -->
<HTML>
<HEAD>
<TITLE>Designing filters</TITLE>
<META NAME="description" CONTENT="Designing filters">
<META NAME="keywords" CONTENT="book">
<META NAME="resource-type" CONTENT="document">
<META NAME="distribution" CONTENT="global">
<META NAME="Generator" CONTENT="LaTeX2HTML v2002-2-1">
<META HTTP-EQUIV="Content-Style-Type" CONTENT="text/css">
<LINK REL="STYLESHEET" HREF="book.css">
<LINK REL="next" HREF="node151.html">
<LINK REL="previous" HREF="node132.html">
<LINK REL="up" HREF="node127.html">
<LINK REL="next" HREF="node140.html">
</HEAD>
<BODY >
<!--Navigation Panel-->
<A NAME="tex2html2649"
HREF="node140.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next"
SRC="file:/usr/local/share/lib/latex2html/icons/next.png"></A>
<A NAME="tex2html2643"
HREF="node127.html">
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up"
SRC="file:/usr/local/share/lib/latex2html/icons/up.png"></A>
<A NAME="tex2html2637"
HREF="node138.html">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous"
SRC="file:/usr/local/share/lib/latex2html/icons/prev.png"></A>
<A NAME="tex2html2645"
HREF="node4.html">
<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents"
SRC="file:/usr/local/share/lib/latex2html/icons/contents.png"></A>
<A NAME="tex2html2647"
HREF="node201.html">
<IMG WIDTH="43" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="index"
SRC="file:/usr/local/share/lib/latex2html/icons/index.png"></A>
<BR>
<B> Next:</B> <A NAME="tex2html2650"
HREF="node140.html">One-pole low-pass filter</A>
<B> Up:</B> <A NAME="tex2html2644"
HREF="node127.html">Filters</A>
<B> Previous:</B> <A NAME="tex2html2638"
HREF="node138.html">Two recirculating filters for</A>
&nbsp; <B> <A NAME="tex2html2646"
HREF="node4.html">Contents</A></B>
&nbsp; <B> <A NAME="tex2html2648"
HREF="node201.html">Index</A></B>
<BR>
<BR>
<!--End of Navigation Panel-->
<H1><A NAME="SECTION001230000000000000000">
Designing filters</A>
</H1>
<P>
The frequency response of a series of elementary recirculating and
non-recirculating filters can be estimated graphically by plotting all the
coefficients <!-- MATH
${Q_1}, \ldots, {Q_j}$
-->
<IMG
WIDTH="77" HEIGHT="30" ALIGN="MIDDLE" BORDER="0"
SRC="img887.png"
ALT="${Q_1}, \ldots, {Q_j}$"> and <!-- MATH
${P_1}, \ldots, {P_k}$
-->
<IMG
WIDTH="74" HEIGHT="30" ALIGN="MIDDLE" BORDER="0"
SRC="img888.png"
ALT="${P_1}, \ldots, {P_k}$"> on the
complex plane and reasoning as in Figure <A HREF="node133.html#fig08.08">8.8</A>. The overall
frequency response is the product of all the distances from the point <IMG
WIDTH="15" HEIGHT="14" ALIGN="BOTTOM" BORDER="0"
SRC="img20.png"
ALT="$Z$">
to each of the <IMG
WIDTH="21" HEIGHT="30" ALIGN="MIDDLE" BORDER="0"
SRC="img898.png"
ALT="$Q_i$">, divided by the product of the distances to each of
the <IMG
WIDTH="19" HEIGHT="30" ALIGN="MIDDLE" BORDER="0"
SRC="img899.png"
ALT="$P_i$">.
<P>
One customarily marks each of the <IMG
WIDTH="21" HEIGHT="30" ALIGN="MIDDLE" BORDER="0"
SRC="img898.png"
ALT="$Q_i$"> with an ``o" (calling it a ``zero")
and each of the <IMG
WIDTH="19" HEIGHT="30" ALIGN="MIDDLE" BORDER="0"
SRC="img899.png"
ALT="$P_i$"> with an ``x" (a ``pole"); their names are borrowed
from the field of complex analysis. A plot showing the poles and zeroes
associated with a filter is unimaginatively called a <A NAME="10312"></A><I>pole-zero plot</I>.
<P>
When <IMG
WIDTH="15" HEIGHT="14" ALIGN="BOTTOM" BORDER="0"
SRC="img20.png"
ALT="$Z$"> is
close to a zero the frequency response tends to dip, and when it is close to
a pole, the frequency response tends to rise. The effect of a pole or a zero
is more pronounced, and also more local, if it is close to the unit circle
that <IMG
WIDTH="15" HEIGHT="14" ALIGN="BOTTOM" BORDER="0"
SRC="img20.png"
ALT="$Z$"> is constrained to lie on.
Poles must lie within the unit circle for a stable filter. Zeros may lie on
or outside it, but any zero <IMG
WIDTH="16" HEIGHT="30" ALIGN="MIDDLE" BORDER="0"
SRC="img42.png"
ALT="$Q$"> outside the unit circle may be replaced by one
within it, at the point <!-- MATH
$1/\overline{Q}$
-->
<IMG
WIDTH="32" HEIGHT="36" ALIGN="MIDDLE" BORDER="0"
SRC="img907.png"
ALT="$1/\overline{Q}$">, to give a constant multiple of the
same frequency response. Except in special cases we will keep the zeros
inside the circle as well as the poles.
<P>
In the rest of this section we will show how to construct several of the
filter types most widely used in electronic music. The theory of digital
filter design is vast, and we will only give an introduction
here. A deeper treatment is available online from Julius Smith at
ccrma.stanford.edu. See also [<A
HREF="node202.html#r-steiglitz96">Ste96</A>] for an introduction
to filter design from the more general viewpoint of digital signal
processing.
<P>
<BR><HR>
<!--Table of Child-Links-->
<A NAME="CHILD_LINKS"><STRONG>Subsections</STRONG></A>
<UL>
<LI><A NAME="tex2html2651"
HREF="node140.html">One-pole low-pass filter</A>
<LI><A NAME="tex2html2652"
HREF="node141.html">One-pole, one-zero high-pass filter</A>
<LI><A NAME="tex2html2653"
HREF="node142.html">Shelving filter</A>
<LI><A NAME="tex2html2654"
HREF="node143.html">Band-pass filter</A>
<LI><A NAME="tex2html2655"
HREF="node144.html">Peaking and stop-band filter</A>
<LI><A NAME="tex2html2656"
HREF="node145.html">Butterworth filters</A>
<LI><A NAME="tex2html2657"
HREF="node146.html">Stretching the unit circle with rational functions</A>
<LI><A NAME="tex2html2658"
HREF="node147.html">Butterworth band-pass filter</A>
<LI><A NAME="tex2html2659"
HREF="node148.html">Time-varying coefficients</A>
<LI><A NAME="tex2html2660"
HREF="node149.html">Impulse responses of recirculating filters</A>
<LI><A NAME="tex2html2661"
HREF="node150.html">All-pass filters</A>
</UL>
<!--End of Table of Child-Links-->
<HR>
<!--Navigation Panel-->
<A NAME="tex2html2649"
HREF="node140.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next"
SRC="file:/usr/local/share/lib/latex2html/icons/next.png"></A>
<A NAME="tex2html2643"
HREF="node127.html">
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up"
SRC="file:/usr/local/share/lib/latex2html/icons/up.png"></A>
<A NAME="tex2html2637"
HREF="node138.html">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous"
SRC="file:/usr/local/share/lib/latex2html/icons/prev.png"></A>
<A NAME="tex2html2645"
HREF="node4.html">
<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents"
SRC="file:/usr/local/share/lib/latex2html/icons/contents.png"></A>
<A NAME="tex2html2647"
HREF="node201.html">
<IMG WIDTH="43" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="index"
SRC="file:/usr/local/share/lib/latex2html/icons/index.png"></A>
<BR>
<B> Next:</B> <A NAME="tex2html2650"
HREF="node140.html">One-pole low-pass filter</A>
<B> Up:</B> <A NAME="tex2html2644"
HREF="node127.html">Filters</A>
<B> Previous:</B> <A NAME="tex2html2638"
HREF="node138.html">Two recirculating filters for</A>
&nbsp; <B> <A NAME="tex2html2646"
HREF="node4.html">Contents</A></B>
&nbsp; <B> <A NAME="tex2html2648"
HREF="node201.html">Index</A></B>
<!--End of Navigation Panel-->
<ADDRESS>
Miller Puckette
2006-12-30
</ADDRESS>
</BODY>
</HTML>