miller-book/node195.html

155 lines
5.9 KiB
HTML
Raw Normal View History

<!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>Sneaky triangle waves</TITLE>
<META NAME="description" CONTENT="Sneaky triangle waves">
<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="node196.html">
<LINK REL="previous" HREF="node194.html">
<LINK REL="up" HREF="node193.html">
<LINK REL="next" HREF="node196.html">
</HEAD>
<BODY >
<!--Navigation Panel-->
<A NAME="tex2html3485"
HREF="node196.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="tex2html3479"
HREF="node193.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="tex2html3473"
HREF="node194.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="tex2html3481"
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="tex2html3483"
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="tex2html3486"
HREF="node196.html">Transition splicing</A>
<B> Up:</B> <A NAME="tex2html3480"
HREF="node193.html">Predicting and controlling foldover</A>
<B> Previous:</B> <A NAME="tex2html3474"
HREF="node194.html">Over-sampling</A>
&nbsp; <B> <A NAME="tex2html3482"
HREF="node4.html">Contents</A></B>
&nbsp; <B> <A NAME="tex2html3484"
HREF="node201.html">Index</A></B>
<BR>
<BR>
<!--End of Navigation Panel-->
<H2><A NAME="SECTION001442000000000000000">
Sneaky triangle waves</A>
</H2>
<P>
For low fundamental frequencies, over-sampling is an easy way to get adequate
foldover protection. If we wish to allow higher frequencies, we will need a
more sophisticated approach. One possibility is to replace discontinuities by
ramps, or in other words, to replace component sawtooth waves by triangle
waves, as treated in Section <A HREF="node192.html#sect10.gentriangle">10.3.4</A>,
with values of <IMG
WIDTH="41" HEIGHT="32" ALIGN="MIDDLE" BORDER="0"
SRC="img1356.png"
ALT="$M/N$"> small enough
that the result sounds like a sawtooth wave, but large enough to control
foldover.
<P>
Returning to Figure <A HREF="node194.html#fig10.08">10.8</A>, suppose for example we imitate a sawtooth
wave with a triangle wave with <IMG
WIDTH="20" HEIGHT="14" ALIGN="BOTTOM" BORDER="0"
SRC="img86.png"
ALT="$M$"> equal to two samples, so that the first
notch falls on the Nyquist frequency. Partials above the first notch (the 17th
partial in the figure) will fold over; the worst of them is about 40 dB below
the fundamental. On the other hand, the partial strengths start dropping faster
than those of a true sawtooth wave at about half the Nyquist frequency. This
is acceptable in some, but not all, situations.
<P>
The triangle wave strategy can be combined with over-sampling to improve the
situation further. Again in the context of Figure <A HREF="node194.html#fig10.08">10.8</A>, suppose we
over-sample by a factor of 4, and set the first notch at the original sample
rate. The partials up to the Nyquist frequency (partial 8, at the fundamental
frequency shown in the figure) follow those of the true sawtooth wave fairly
well. Foldover sets in only at partial number 48, and is 52 dB below the
fundamental. This overall behavior holds for any fundamental frequency up to
about one quarter the sample rate (after which <IMG
WIDTH="20" HEIGHT="14" ALIGN="BOTTOM" BORDER="0"
SRC="img86.png"
ALT="$M$"> exceeds <IMG
WIDTH="32" HEIGHT="32" ALIGN="MIDDLE" BORDER="0"
SRC="img1265.png"
ALT="$N/2$">). Setting the
notch frequency to the original sample rate is equivalent to setting the
segment of length <IMG
WIDTH="28" HEIGHT="14" ALIGN="BOTTOM" BORDER="0"
SRC="img1361.png"
ALT="$2M$"> to one sample (at the original sample rate).
<P>
<HR>
<!--Navigation Panel-->
<A NAME="tex2html3485"
HREF="node196.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="tex2html3479"
HREF="node193.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="tex2html3473"
HREF="node194.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="tex2html3481"
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="tex2html3483"
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="tex2html3486"
HREF="node196.html">Transition splicing</A>
<B> Up:</B> <A NAME="tex2html3480"
HREF="node193.html">Predicting and controlling foldover</A>
<B> Previous:</B> <A NAME="tex2html3474"
HREF="node194.html">Over-sampling</A>
&nbsp; <B> <A NAME="tex2html3482"
HREF="node4.html">Contents</A></B>
&nbsp; <B> <A NAME="tex2html3484"
HREF="node201.html">Index</A></B>
<!--End of Navigation Panel-->
<ADDRESS>
Miller Puckette
2006-12-30
</ADDRESS>
</BODY>
</HTML>