... direction.2.1
To determine whether a surface is effectively flat, it may first be smoothed so that variations less than a wavelength in size are ignored. That is, waves do not see'' variations on a scale much less than a wavelength.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

...2.2
In the code of Fig. 1.9, the first executable line changes the global STK sampling-rate from 44100 Hz (the default) to that of the input soundfile. If this is not done, there is a hidden sampling-rate conversion using linear interpolation when the input file is read, if its sampling rate is different from the global STK sampling-rate. This default rate conversion could alternatively be canceled by saying input.setRate(1.0); after the input file is opened.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

....2.3
It is easy to see that the exponential function has the property . To show that all differentiable functions with this property are exponentials, one can look at the definition of the derivative of with respect to :

Since , we must have . Therefore, the last limit above converges to some constant , and . In this way, it is shown that satisfies a differential equation whose solution space consists of exponential functions of the form , and to obtain , we must have .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... dispersion2.4
Dispersion occurs in a traveling wave whenever the propagation speed is different at two or more frequencies.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... as2.5
Note that Fig. 1.18 is given in direct form 2, so its describing equations are . To make the figure correspond exactly to the direct-form-1 difference equation, simply move from the output arrow to the input arrow. That is, commute the scaling by and the feedback loop so that is first.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... filter|textbf,2.6
Readers of this book are not expected to know linear algebra, but one does not have to learn much to follow the discussion in this section. See, for example, [422, available online] for the basic matrix operations. An excellent linear algebra text is [308].
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

....2.7
The superscript denotes matrix transposition (see any linear algebra text).
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... line.2.8
This structure may be quickly derived by forming a series combination of a feedback comb filter followed by a feedforward comb filter, and noticing that the two delay lines contain the same numbers at all times. Therefore, the two delay lines can be replaced by a single shared delay line.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

...causal|textbf2.9
A filter is said to be causal if its impulse response is zero for .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

...fbffcf.2.10
Gerzon's starting point was Schroeder's allpass which differs slightly from Eq. (1.13), having difference equation [386]

with required for stability. This structure can be derived from Eq. (1.13) on page  by moving the feedforward path to the other side of the input summer and deriving the new gain for . Gerzon's idea was to replace the -sample delay by a multi-input, multi-output (MIMO) allpass-filter matrix; Gerzon's unitary frequency-response matrices'' correspond to paraunitary matrix transfer functions [426, Appendix D].

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... response|textbf2.11
A (possibly complex) matrix is said to be unitary if , where the ' superscript denotes complex-conjugate transposition: (also called the Hermitian transpose). A real unitary matrix is said to be orthogonal, and this is the case most commonly used in practice.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... impedance2.12
See §J.1 for definitions and discussion regarding impedance.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... ear,3.1
It is also possible to use one delay line for a single source to multiple ears, or multiple sources to one ear.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... time3.2
Reverberation time is typically defined as , the time, in seconds, to decay by 60 dB.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... shown3.3
A simple proof for rectangular rooms can be based on considering a single spherical wave produced from a point source in the room. Imagine tesselating all of 3D space with copies of the original room (minus the source), all in the same orientation. As the spherical wave expands, it intersects a number of rooms that is roughly proportional to its radius squared. Since the radius is proportional to time for an expanding spherical wavefront (), the number of rooms containing a wave section grows as . By adding all the rooms together (flipping every other one along and ), we obtain the acoustic field in the original reverberant room at time , for the case of lossless wall reflections of pressure waves. (This is the dual of the usual image method for computing the impulse response of a room [14].) Since each wave-section traverses each point exactly once in each room image (disregarding reflections, which are accounted for by different room images), the number of echoes at any point in the room during the time it takes a plane wave to traverse the room is very close to the number of wave sections in the room at the beginning of that time interval.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... shown3.4
As described in virtually any acoustics textbook, the resonant modes of a rectangular room are given by (see, e.g., [327, pp. 284-286])

 (3.1)

where denotes the th harmonic frequency (radian/meter) of the fundamental standing wave in the direction ( being the length of the room along ), and similarly for the and directions. Thus, the mode frequencies of a room can be enumerated on a uniform 3D Cartesian grid indexed by . The grid spacings along , , and are taken to be , , and , respectively. From Eq. (2.1), the spatial frequency of mode is given by the distance from the origin of the grid to the point indexed by . Therefore, the number of room modes having spatial frequency between and is equal to the number of grid points lying in the spherical annulus between radius and . Since the grid is uniform, this number grows as .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

...3.5
One definition of when late reverberation begins is when it begins to look Gaussian, since a random sum of plane waves uniformly distributed over all angles of arrival yields a Gaussian distributed pressure field. (The fact that late reverberation in a rectangular room always approaches a superposition of plane waves traveling in all directions can be seen from the image-method dual'' argument in §2.2.1.) One way to test for Gaussianness is to form a histogram of impulse response sample values over a finite window (say 10ms, or roughly 500 samples), and compare the normalized histogram to a standard Gaussian bell curve computed using the measured sample variance. A threshold can be placed on , or some number of higher order sample moments can be compared. A simpler test is to determine when roughly 30% of the samples in a frame have magnitude larger than one standard deviation ( ) [2], since the probability of this occurring in truly Gaussian sequences is erf, where erf denotes the error function'' (integral from to of the Gaussian probability density function with normalized variance ). For a zero-mean signal , the sample standard deviation is given by the root-mean-square (RMS level). Another desired property of late reverb'' is that the remaining energy in the impulse response (Schroeder's Energy Decay Curve (EDC) [387]), has begun what appears to be an exponential decay. This can be ascertained by fitting an exponential to the EDC using, e.g., Prony's method.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

...MoorerReverb79.3.6
In computer music, an old trick for making a synthesized tone sound reverberated is to randomly modulate its amplitude envelope, and to append a low-level exponentially decaying tail to the amplitude envelope (also modulated). This can produce a very convincing illusion.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... filters,3.7
While allpass filters are colorless'' in theory, perceptually, their impulse responses are only colorless when they are extremely short (less than 10 ms or so). Longer allpass impulse responses sound similar to feedback comb-filters. For steady-state tones, however, such as sinusoids, the allpass property gives the same gain at every frequency, unlike feedback comb filters.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... integer.3.8
As an alternative to the output delay values shown in Fig. 2.5, the values have been used.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... matrix.3.9
A second-order Hadamard matrix may be defined by

with higher order Hadamard matrices defined by recursive embedding, e.g.,

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... diagonal.3.10
This is easy to show by performing an expansion by minors to calculate , always choosing to expand along the top row (for lower triangular) or first column (for upper triangular).
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

...3.11
This substitution was first applied to complete reverberators by Jot [200,201]. The idea is closely related to the approximate pole analysis in [294, p. 17], [404, pp. 170-172], and [194], and somewhat also to the allpass conformal maps used in [295,431].
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

....3.12
See [404, pp. 171-172] for a more detailed derivation which allows to have arbitrary phase, which results in shifting of the pole frequencies.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

...Kendall84.3.13
Of course, correct angles-of-arrival for early reflections are more straightforward to implement using an array of loudspeakers enclosing the listener.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... sound.4.1
For sound examples, see http://www.harmony-central.com/Effects/Articles/Flanging/.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

...notches4.2
The term notch here refers to the elimination of sound energy at a single frequency or over a narrow frequency interval. Another term for this is null''.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... notches.4.3
The author discovered this by looking at the circuit for the MXR phase shifter in 1975.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... filters,4.4
Moog has built a 12-stage phaser of this type [54] and up to 20 stages (10 notches) have been noted [228].
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

...JOSFP4.5
Available online at
http://ccrma.stanford.edu/~jos/filters/Analog_Allpass_Filters.html
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

...4.6
Saying that the frequency is the break frequency for the one-pole term is terminology from classical control theory. Below the break frequency, , and above, . On a log-log plot, the amplitude response may be approximated by a slope-zero line at height from dc to , followed by an intersecting line with negative slope of 20 dB per decade for all higher frequencies. At the break frequency, the true gain is down 3dB from , but far away from the break frequency, the piecewise-linear approximation is extremely accurate. Such an approximate amplitude response is called a Bode plot. Bode plots are covered in any introductory course on control systems design (also called the design of servomechanisms'').
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... first4.7
The first'' write-pointer is defined as the one writing farthest ahead in time; it must overwrite memory, instead of summing into it, when a circular buffer is being used, as is typical.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... Leslie,4.8
http://en.wikipedia.org/wiki/Leslie_speaker
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... inversion:5.1
All wave phenomena involve two physical state variables--one force-like and the other velocity-like. When one of these variables reflects from a termination with a sign inversion, the other reflects with no sign inversion, and vice versa. In acoustic systems, the force-like variable is pressure, and the velocity-like variable is either particle velocity (in open air) or volume velocity (in acoustic tubes--see §E.14 for definitions). In electromagnetic systems, the state variables are electric and magnetic field strengths or voltage and current. In a mass-spring oscillator, we may choose the velocity and acceleration of the mass as the coordinates of our state space, or position and velocity. For transverse waves on vibrating strings, it is usually preferable to use transverse force and velocity waves as described above.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

...fMovingTermb,5.2
This diagram can be seen animated along with Figure 4.3 at
http://ccrma.stanford.edu/~jos/swgt/movet.html .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

...,5.3
In somewhat more detail,

so that , and .

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

...fsstring5.4
We should use the notation for this loop-filter, since it depends on the string length (in samples). The dependence of on is suppressed for simplicity of notation.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

...JOSFP.5.5
http://ccrma.stanford.edu/~jos/filters/Allpass_Filters.html
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

...OppenheimAndSchafer,JOSFP.5.6
http://ccrma.stanford.edu/~jos/filters/Transposed_Direct_Forms.html
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

...JOSFP,5.7
http://ccrma.stanford.edu/~jos/filters/Filters_Preserving_Phase.html
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

...invfreqz5.8
In Matlab, the Signal Processing Tool Box is required, and in Octave, the Octave-Forge package is needed.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

...KlapuriMohonk05,KlapuriSAP03,Klapuri01.5.9
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... instrument.5.10
Electric guitars with magnetic pickups have nearly rigid terminations, but even then, coupling phenomena are clearly observed, especially above the sixth partial or so.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... be5.11
http://ccrma.stanford.edu/~jos/filters/Finding_Eigenvalues_Practice.html
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... law,5.12
A function is said to be odd if .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... function:5.13
See http://www.trueaudio.com/at_eetjlm.htm for further discussion.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

...SB.5.14
SynthBuilder is now a proprietary in-house tool at Analog Devices, Inc. See Appendix A for a description of the STK software prototyping environment that many of us use today. In particular, the Mandolin.cpp patch in the STK distribution is based on commuted synthesis. Some of us are also using the STK package in conjunction with pd [335] in order to obtain drag-and-drop graphical user interface support and a large library of MIDI processing tools.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... D.6.1
The PC88 stretching begins in the fourth octave, while the measured Steinway stretching is greatest in the first octave (reaching nearly -20 cents relative to nominal tuning'' for the first note A0) and picking up again, going sharp, in the sixth octave. See http://www.precisionstrobe.com/apps/stretchdata/stretchdata.html for the measured curves.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... impulse.6.2
We use the term pulse'' to refer to a filtered impulse, while the term impulse'' will always denote an isolated nonzero sample at some amplitude.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... excited.6.3
In other words, to obtain maximum signal-to-noise ratio in a finite dynamic range, it is better numerically to amplitude-scale at the final output rather than prior to any recursive digital filters (e.g., at the excitation before the string). However, such output scaling will distort the relative amplitude of one note with respect to a previous note that is still ringing in the string. For this reason, one might use some scaling both before and after the string, using powers of 2 scaling for one of them to avoid a second multiply.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... manner6.4
Implementation of a soft pedal'' can be done by suppressing the input to one of the delay lines, as if the hammer were shifted over'' a little so as to miss one of the strings.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... signals.6.5
In the Synthesis Tool Kit [86], vectorized signals are implemented by the tickFrame() member function, replacing the single-sample tick() function.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... complementary|textbf.7.1
To show this, let denote the reflection transfer function (reflectance'') of the bell for pressure waves, and the transmission transfer function (transmittance''). Then, as discussed in §K.2 and §G.8, linearity and energy conservation demand that

for pressure waves, and

for velocity waves. (For velocity waves, the transmittance is , while the reflectance is .) Thus, the sum of transmitted and reflected power at frequency is

where denotes the z transform of the pressure signal transmitted through the bell, and denotes the reflected pressure wave. Similarly, and denote the transmitted and reflected velocity waves ( flips the reflected velocity wave to that it flows in the same direction as the transmitted velocity wave), and and denote the pressure and velocity waves incident on the bell. All of these z transform have omitted arguments , where denotes the sampling interval in seconds.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... closure.7.2
For operation in fixed-point DSP chips, the independent variable is generally confined to the interval . Note that having the table go all the way to zero at the maximum negative pressure is not physically reasonable (0.8 would be more reasonable), but it has the practical benefit that when the lookup-table input signal is about to clip, the reflection coefficient goes to zero, thereby opening the feedback loop.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

...exponentially9.1
If the flare of the bell is expressed as , where denotes the horn radius at position along the bore axis, then is called the flare constant of the bell.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... pressure9.2
As always in this book, by air pressure'' we mean the excess air pressure above ambient air pressure. In the case of brass instruments, excess air pressure is created by the muscles of the lungs.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... mouthpiece.9.3
When the kinetic energy of a jet is converted back into air pressure, this is called pressure recovery. We assume, following [92] and others, that pressure recovery does not occur in this model. Instead, the kinetic energy of the ket is assumed to be dissipated in the form of turbulence (vortices and ultimately heat). Note that air flow is therefore assumed inviscid within the mouth and between the lips, but viscous around the jet in the mouthpiece.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

...Putland.9.4
For velocity waves, the flare may be hyperbolic [45].
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... below).A.1
A shorter method for unzipping and unpacking is
zcat delay.tar.gz | tar -xvf -
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

...MakefilesA.2
Only STK makefiles are regenerated by configure--the files myproj/Makefile and myproj/Makefile.proj must be edited by hand, if needed.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... option.A.3
If you encounter any missing statements'' or variables while single-stepping gdb, try turning optimization off altogether by removing the -O2 option from CFLAGS in the Makefile.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... <Enter>.A.4
The notation M-x, pronounced meta x,'' means to hold down the Alt key and press the x key. Alternatively, one can type the Esc key followed by the x key. In either case, emacs will prompt for a command line input. The notation <Enter> means, of course, the Enter key (sometimes labeled Return).
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... below.B.1
For further introductory information regarding compiling, linking, and debugging programs in the UNIX environment, see http://cslibrary.stanford.edu/107/.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... folder).B.2
It is good practice to use your own folder, e.g., myprojects instead of projects, so that you can simply copy myprojects into new releases of the STK (and start debugging all over again - ).
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... messageC.1
In C++, sending message to object '' amounts simply to executing function in struct . This is sometimes referred to static binding, as opposed to dynamic binding.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

...dAlembert.D.1
For a short biography of d'Alembert, see http: //www-groups.dcs.st-and.ac.uk/~history/Mathematicians/D'Alembert.html
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... (1685-1731)D.2
http: //<ibidem>/Taylor.html
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... (1707-1783)D.3
http: //<ibidem>/Euler.html
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... eyeglasses.D.4
http://www.mathphysics.com/pde/history.html
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... vibrations.D.5
http: //www.stetson.edu/~efriedma/periodictable/html/B.html
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

http://ccrma.stanford.edu/~jos/PianoString/
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

...strain.D.7
http://www.efunda.com/formulae/solid_mechanics/mat_mechanics/hooke.cfm
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... public.D.8
http: //cnx.rice.edu/content/m0050/latest/
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

...FettweisMain.D.9
Derivation: http://ccrma.stanford.edu/~jos/pasp/Wave_Digital_Filters.html
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... Belevitch.D.10
http://www.ieee.org/organizations/history_center/oral_histories/transcripts/fettweis.html
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

...Flanagan72,FlanaganAndRabinerEds,RabinerAndSchafer78,SchaferAndMarkel79,OShaughnessy87,DPH93,Keller94.D.11
The overview [285] of early speech production models is freely available online, thanks to the Smithsonian Speech Synthesis History Project.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... formulation.D.12
http: en.wikipedia.org/wiki/Oliver_Heaviside
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... phenomenon.D.13
http:www.microwaves101.com/encyclopedia/history.cfm
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

...D.14
Scattering theory: http://ccrma.stanford.edu/~jos/pasp/Scattering_Impedance_Changes.html
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... method.D.15
Bicycle Built for Two'' by Kelly, Lochbaum, and Matthews, 1961: http://ccrma.stanford.edu/~jos/wav/daisy-klm.wav
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... completion.D.16
http://www.bell-labs.com/news/1997/march/5/2.html
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

...PRCT.D.17
http: www.cs.princeton.edu/~prc/SingingSynth.html (includes sound examples)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

...SchellengA,SchellengB,CremerC.D.18
http://www.zainea.com/Oscilationsofbowedstring.htm
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... simpleE.1
While this formula seems fairly simple now, in Newton's day, it was necessary to invent calculus before it could be stated in this way.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... velocity.E.2
The only massless particles are the photon and graviton (presuming it exists), and massless particles can only travel at the speed of light. By Einstein's famous formula , we know that a particle's mass is proportional to its energy at rest.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... constant|textbf.E.3
The gravitation constant is given in International Standard Units (SI units'') by

where the following physical units abbreviations are used:

These physical units for come directly from Newton's second law of motion (§E.1).

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

...force|textbf.E.4
From a modern point of view, all forces are mediated'' by some particle, and there are only four basic forces: The electromagnetic force is mediated by the photon, the strong nuclear force is mediated by the gluon, the weak nuclear force is mediated the and bosons, and gravity is thought to be mediated by the graviton, although gravity is not yet incorporated into the Standard Model of theoretical physics. Only the electromagnetic and gravitational forces are encountered in everyday life, since the strong and weak nuclear forces decay exponentially on the scale of an atomic nucleus. The approximate relative strengths of the strong:weak:EM:gravity forces are . At very high energies, the weak and EM forces unify, according to the Standard Model.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... force.E.5
In this example, the mass-spring system is in equilibrium (not moving), so all forces in the system must sum to zero. Equilibrium also must hold if the whole system is traveling with a constant velocity; in other words, it is the lack of relative motion that matters.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... displacements.E.6
To show this quantitatively, consider two electrons, each having electric charge , separated by meters. Then the Coulomb force between the electrons is proportional to . Adding a small perturbation to yields a new force proportional to

where we used the binomial expansion to obtain the approximation. (The notation means terms order of '', and such terms approach zero as fast as approaches zero.) Thus, the effective spring constant connecting the two electrons is , when .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... yieldingE.7
A more formal methodology for arriving at differential equations by applying Newton's law and Hooke's law is described in Appendix N. In the present example, consideration of the underlying physics should convince you that the signs in Eq. (E.4) are correct. For example, when is positive, the spring must push the mass back to the left. Therefore, means the mass will be accelerated to the left.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... time:E.8
See, e.g., [426, p. 235-236] for a derivation, and Appendix N, specifically §N.3.6, for related analysis.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... object.E.9
In SI units, work is in units called Joules (abbreviated J). Thus, Joules are Newtons times meters.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... considered.E.10
Ok, there does exist energy fluctuation on the scale of Heisenberg uncertainty''. That is, it is possible to have a violation in energy conservation by an amount over a time duration , provided is sufficiently small (on the order of Planck's constant ). This can be considered a form of the Heisenberg uncertainty principle.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... potential:E.11
This was first pointed out by Rayleigh [327, p. 39].
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... gases:E.12
http://www.grc.nasa.gov/WWW/K-12/airplane/sound.html
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

...G.1
Any function of , where denotes time and denotes position along a waveshape'', may be interpreted as a fixed waveshape traveling to the right (positive direction), with speed . Similarly, any function of may be seen as a waveshape traveling to the left (negative direction) at speed meters per second. In both cases, denotes a position along the waveshape, and denotes time. For any fixed , a snapshot'' of the waveshape may be seen by evaluating along .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... velocity|textbfG.2
The term phase velocity is normally used when it differs from the group velocity, as in stiff, dispersive strings (§G.6). In the present context, the phase velocity and group velocity are the same, so the term wave velocity'' is unambigous here. See the analogous terms phase delay and group delay in [426] for more details about the difference.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... scattering.G.3
Here it is assumed that and in the Kelly-Lochbaum junction can be computed exactly from in the number system being used. This is the case in two's complement arithmetic as is typically used in practice.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... right-going.''G.4
In the acoustic tube literature which involves only a cascade chain of acoustic waveguides, is taken to be traveling to the right along the axis of the tube [275]. In classical network theory [33] and in circuit theory, velocity (current) at the terminals of an -port device is by convention taken to be positive when it flows into the device.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... foundG.5
http://ccrma.stanford.edu/~jos/filters/Similarity_Transformations.html
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... magnitude:G.6
While the literature seems to mention this property only for prime numbers , it is straightforward to show that it holds in fact for all positive odd integers . Prime values of have advantages, however, when harmonics of the design frequency'' are considered.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... samples.I.1
Classically, an interpolation of discrete data points always required ; that is, the interpolating function must always pass through the given data points. More recently, however, particularly in the field of computer graphics, interpolation schemes such as Bezier splines have been defined which do not always pass through the known points.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

....I.2
Of course, all derivatives of must be calculated from the underlying continuous signal represented by the samples and then evaluated at .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

...JOSFP.I.3
To see this, note that the integral of the group delay around the unit circle is simply minus the winding number of the phase response (the number of zeros minus the number of poles inside the unit circle):

By the graphical method for phase response calculation [426, Chapter 8], each zero contributes radians to , and each pole contributes radians. Thus, the average group delay around the unit circle is

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... kHz.I.4
We arbitrarily define the % guard band as a percentage of half the sampling rate actually used, not as % of the desired kHz bandwidth which would call for a kHz sampling rate.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... transform|textbf,J.1
For a short online introduction to Laplace transforms, see, e.g., http://ccrma.stanford.edu/~jos/filters/Laplace_Transform_Analysis.html.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... mass.''J.2
We say that the driving point of every mechanical system must looks like a mass'' at sufficiently high frequency because every mechanical system has at least some mass, and the driving-point impedance of a mass goes to infinity with frequency. However, in a completely detailed model, the contact force between objects should really be the Coulombe force, which looks like a spring''. In other words, mechanical interactions are ultimately electromagnetic interactions, and it is theoretically possible for a driving force on an atom to be so small and fast that it can vibrate the outermost electron orbital without moving the nucleus appreciably, thus looking like a spring'' in the high-frequency limit. We will not be concerned with atomic-scale models in this book, and will persist in treating masses and springs in idealized form.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

....J.3
To avoid the introduction of half a sample of delay by the approximation, the first-order finite difference may be defined instead as .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

....J.4
Note that the matched transformation would be more precisely scaled if it were defined as

This can be seen by taking the first-order Taylor series expansion of the right-hand side. (It also makes more sense in terms of physical units.) However, scale factors are very often dropped.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... case.J.5
In the case of complex impedances, the matched impedance case becomes .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... output.K.1
So-called electric-acoustic'' guitars, such as the Godin electric-acoustic, use piezoelectric crystals in the bridge to measure string force at the string endpoint. Electric violins, such as the Zeta Violin, typically use this approach as well.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... measurements,K.2
The Matlab function cohere() can be used to compute the coherence function between two sampled spectra.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... phase.K.3
Zero-phase filters can normally be implemented in practice because there are pure delay lines preceding and following the reflectance filter, and taps can be introduced in the delay-line preceding the reflectance to implement noncausal terms in the impulse response.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

....K.4
To prove this, note that the roots of are the reciprocals of the roots of , since the conformal map exchanges interior of the unit circle with the exterior of the unit circle.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... disk.K.5
The strict outer disk is defined as the region in the extended complex plane.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... wave.N.1
When there are more than two ports at a junction, the ' superscript will denote a wave traveling into the junction.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... network.N.2
Wave digital filters are not the same thing as digital waveguide networks, however, because the wave variables in a wave digital filter have a compressed frequency spectrum (from the bilinear transform), while the signals in a digital waveguide network have a bandlimited spectrum which is not warped.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... waveguideN.3
Here, it is perhaps most concrete to think in terms of electrical equivalent circuits, so that the mass is an inductor and a waveguide'' is a transmission line.''
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... mass,N.4
The phase delay, for example, of the reflectance of an ideal spring is given by

At rad/sec, in particular, the phase delay is . Since the period is when , this is a quarter-cycle of delay.

After the bilinear transform , the phase delay becomes

where is defined by (the relationship between continuous-time frequency and discrete-time frequency imposed by the bilinear transform). Thus, the phase delay comes out to exactly one sample at each frequency. Checking the point , i.e., four samples per period, we find that one sample of delay does in fact correspond to a quarter-cycle of delay.

The same holds true for the group delay of the spring reflectance:

We see that the frequency-warping under the bilinear transform serves to move each frequency to the unique point along the unit circle at which the reflectance of a mass or spring happens to be exactly one sample. The mass reflectance additionally inverts.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

...tankwdf.N.5
Note that the wave variables are now labeled in element-centric notation as opposed to adaptor-centric notation:

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... limit.N.6
Note that the mass and velocity limits are tied together such that constant. This information is lost in the final limits because the expression is indeterminate''.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... algorithms.O.1
See [97] for discussion of a wider variety of digital sine generation methods.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... algorithm,O.2
The magic circle'' algorithm is so named because it generates closed curves in the plane even when numerical precision is very low. For this reason, it has long been used as an algorithm for drawing circles'' (actually ellipses) in computer graphics. The algorithm is derived naturally by numerically integrating the derivative relationships between sine and cosine:

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... amplitude),O.3
When is constant, the time constant of the ensuing exponential growth or decay may be found by solving for to obtain ln, where denotes the sampling interval, and ln denotes the natural logarithm of .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... analysisO.4
http://ccrma.stanford.edu/~jos/filters/State_Space_Models.html
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... modeling,P.1
The general field in which transfer function descriptions are estimated for physical systems is called system identification'' [268,404], and it is used extensively in industrial automatic control applications.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

....P.2
For convenience, we typically define the discrete-time counterpart of a continuous-time function as though the sampling interval were .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

...SmithCommutedFromPASP,MattiGuitar,MattiAndSmith96.Q.1
Extracts of this material were published previously in [213].
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... volume.Q.2
These remarks apply to playback of the excitation only. The string provides further filtering which could be taken into account. However, to a first approximation, the string filtering is like a sampling'' of the excitation spectrum, with a gentle roll-off at high frequencies due to the lowpass loop filtering. Also, the string is a highly variable filter with many settings. It is therefore reasonable to ignore the string filtering when determining an optimal preemphasis for excitation-table quantization.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... parts.R.1
It is not necessary to perform a Taylor series expansion to separate out the even and odd parts of a function. Instead, the even part of can be computed as and the odd part as . It is easily checked that is even, is odd, and .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... mapping.R.2
Note that memoryless nonlinearities used for distortion simulation are typically odd functions of instantaneous amplitude, such as . (A good practical choice is given in Eq. (R.3).) However, in guitar-amplifier distortion simulation, even-order terms are considered quite important [367].
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

...R.3
The convolution theorem for Fourier transforms states that convolution in the time domain corresponds to pointwise multiplication in the frequency domain [426]. The dual of the convolution theorem states just the opposite: Pointwise multiplication in the time domain corresponds to convolution in the frequency domain. Thus, if the spectrum of is , then the spectrum of is , where '' denotes the convolution operation.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

... spectra.R.4
The basilar membrane of the ear (which is rolled up inside the snail-shaped cochlea of the ear) effectively performs a real-time Fourier analysis which is felt'' by nerve cells leading to the brain.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.