Page  308 ï~~ Synthesis of Bowed Strings Julius Orion Smith III Center for Computer Research in Music and Acoustics Department of Music, Stanford University Stanford, California 94805 Abstract An approach is given for the computational modeling of bowed strings such as violins, cellos, and their generalizations. The model is practical for digital synthesis and provides the capability for simulating realistic bowing styles. In addition, methods for calibrating the model to recordings of live instruments are proposed. 308

Page  309 ï~~ 1. Introduction Bowed strings have received considerable attention in the recent physics and acoustics literature [8,9,10,20,25,26,31,32,33,34,35,41,42,43,44,45J. Most of this work has been concerned primarily with a theoretical description of bowed-string dynamics. Very little work, however, has been aimed at developing computational models which are intended for digital sound synthesis. In this paper, a simple computational model for bowed strings and techniques for its calibration are presented. The bowed-string simulator consists of a linear digital filter which models the vibrating string, together with a means of exciting the string like a bow. Two approaches to driving the string model are considered. The first is similar to that used in linear predictive speech coding, and consists only of a series of impulses which convey pitch and amplitude information. A more elaborate method yields a much improved model of bow-string interaction; specifically, the input variables are the pressure, velocity, and position of the bow on the string. A vibrating string has, in principle, an infinite number vibrational modes. A straightforward attempt to model the string as a linear system results in extremely high computational complexity. Thus ways have been found to reduce this complexity while retaining the characteristics of vibrating strings which are musically important. The resulting model is similar to the efficient computational procedure proposed by McIntyre and Woodhouse in [32], although it was developed independently [47]. The string model can also be viewed as a generalization of the Karplus-Strong algorithm [22,23]. When the string model is used with an impulse-train excitation, the bowed-string waveforms observed by Helmholtz [20] are possible. This is due to fact that the firstorder behavior of bowed strings is in some ways the simplest possible mode of periodic string vibration. This simplicity is revealed when acceleration waves are considered. It is interesting to note that historically, Helmholtz first considered displacement waves, then Raman [411 extended the Helmholtz theory by working with velocity waves, and now, in a linear systems setting, acceleration waves appear to be most fundamental. A key fact about bowed strings is that the action of the bow depends not only on the player, but also on the reaction of the string. Without this two-way coupling between the bow and string, natural musical attacks are difficult to obtain, especially in the more vigorous bowing styles. It was found that the most serious limitations of the impulse-train excitation were alleviated by incorporating a two-way bow-string interaction based on the (recently developed) basic physics of the bowing process. The improved bowing mechanism is an adaptation of the McIntyre-Woodhouse description of bow-string dynamics [32] and is based on Friedlander-Keller diagrams [15,24]. In the next section, the string model is derived. In section 3, it is shown how this model can be conjoined with the classic Helmholtz description of bowed strings. In section 4, McIntyre-Woodhouse excitation of the string model is described. Finally, section 5 discusses techniques for automatically calibrating the string model to recorded data. 309

Page  310 ï~~ 2 A PARAMETRIC MODEL FOR THE VIBRATING STRING 2. A Parametric Model for the Vibrating String In this section the string model is derived from both a classical physics and linear systems point of view. Essentially, the simple traveling-wave model of an ideal doublyterminated string is represented as a loop where the upper rail carries right-going waves, and the lower rail carries left-going waves. At the extreme left and right of the ideal string, there are rigid terminations at which perfect reflection takes place. In the loop representation, these are merely multiplications by -1. For a generalized string model, a termination is replaced by a more general digital filter having a frequency-response which is close to -I at all frequencies. A linear filter placed in the string loop can provide largely independent control of the decay and tuning of the various partials of the freely vibrating string. It also affects significantly the action of the bowing mechanism described in section 4. 2.1. The Wave Equation for an Ideal String The wave equation and its solution in terms of "traveling waves" were derived by d'Alembert in 1747 [11]. Eight years later, Daniel Bernoulli demonstrated the solution in terms of "standing waves" [11]. Bernoulli claimed that any displacement of the string could be expressed as an infinite sum of sinusoidal harmonics-or standing waves. Euler objected to this claim on the grounds that a sum of sinusoids could not express an arbitrary curve (since, for example, sinusoids have continuous derivatives of all orders). In this way, a controversy was born which led to Fourier theory and the foundations of modern analysis. For an ideal string, we have the following wave equation. wtt(z, t) = c2Wt(x, t), (1) where w(x, t) denotes the transverse displacement of the string at the point x along the string at time t in seconds. If the length of the string is L, then x is taken to lie between o and L. The partial derivative notation used above is defined by A ( 8w no =a3u \lV), (The symbol " A " means "is defined as.") The constant c is given by c = \/Tp where T is the string tension, and p is the mass per unit length of the string. An elegant derivation of the wave equation is given by Morse [361. The wave equation implies that the transverse acceleration of a point on the string (wtt) is proportional to the curvature* of the string at that point (w). * Actually, curvature is defined as Â~w../(i1+ w")5/* [48J. However, when the maximum slope on the string is much less than unity (1w,!|< 1), the curvature and the second derivative in x are approximately equal. We will refer to w0:, as the curvature mainly for descriptive convenience. 310

Page  311 ï~~ 2 A PARAMETRIC MODEL FOR THE VIBRATING STRING The general traveling-wave solution to (1) is given by w(x,t)=p(x - et)+tf(x + et). (2) This solution form is interpreted as the sum of two fixed wave-shapes traveling in opposite directions along the string. The specific waveshapes are determined by the initial shape w(x, 0) and the initial velocity vt(x, 0) of the whole string. Given any solution of the form (2), we may successively differentiate the terms of the equation to obtain a solution in terms of traveling velocity waves, acceleration -waves, etc. It turns out that for bowed and plucked strings, acceleration waves are a convenient choice. This is because a pluck gives rise to a pair of acceleration (or curvature) impulses propagating outward from the pluck-point. A bowed string may be described, to the first order, as a plucked string in which one of these two curvature impulses is eliminated. If the string is rigidly fixed to w = 0 at x =0, say, then in equation (1) the constraint w(0, t) = 0 holds for all t. The traveling displacement waves of (2) must then satisfy p(-ct)= -t(ct), (3) If p(-) is chosen arbitrarily, then (-) must be the same waveform flipped about the horizontal and vertical axes. An equivalent point of view is that 0 is the reflection of V from the termination. At a rigid termination, an arbitrary incident wave is reflected such that it emerges negated and time-reversed. A curvature impulse merely changes sign upon reflection from a rigid termination since it has negligible width. In the case of termination on both ends, at x = 0 and x = L, the left-going and right-going waves are eternally reflected back and forth between the ideal terminations. A useful computational model for this situation is shown in Fig. la. In a typical digital implementation, only delay lines and sign changing hardware are needed to simulate the string. Forming the output (by summing the upper and lower rails) requires an addition, and injection of an input requires two additions (cf. section 4). 2.2. A Description of One-Dimensional Propagating Waves An analytical approach will be described which is well-suited to modeling vibrating strings as linear filters. We desire an input-output representation of the string, because we wish to drive the string with a simple function, such as an impulse train, to produce natural waveforms. In this subsection, the basic mathematical notation used in deriving the string model will be established. The notation is based on Fourier and linear systems theory. The reader not comfortable with one or both of these areas may wish to consult [6,37,38,40,46] for a more detailed discussion. Assume that the string is driven at the point z; on the string by the acceleration function t~t). Let the output acceleration, observed at the point z0, be denoted y(t). Then we have u(t) = tvu(z;, t) and y$t)= reL(x,, t). 311

Page  312 ï~~ 2 A PARAMETRIC MODEL FOR THE VIBRATING STRING a) b) Figure 1. Computational model for vibrating strings. Right-going waves travel along the top rail of the loop while left-going waves travel along the lower rail. At each end of the string, the incoming wave is reflected. The output is formed by summing the upper and lower rails, taking the contents of the delay lines at points the same distance from the string endpoints. Similarly, an input signal is summed into the upper and lower rails at places corresponding to the excitation point on the string. a) The ideal string model. Perfect reflections are simply sign changes. b) The generalized string model. Reflections include linear filtering. Let u(t) be an acceleration impulse with amplitude A at time t = 0. This is expressed by writing u(t) = A6(t), where 6(t) is defined by its so-called "sifting" property: f(f)6(t - r)dt = f(r), for all r, f continuous. (The impulse may be thought of as zero everywhere but at t = 0 where it is infinite, and the area under it is 1.) Assume for the moment that the string is ideal which means the curvature impulse does not attenuate or "spread" as it propagates along the string. To be 312

Page  313 ï~~ 2 A PARAMETRIC MODEL FOR THE VIBRATING STRING complete, we must account for waves traveling to the left and right along the string as a result of input at a single point. By superposition, we can consider each case separately and sum the results. Consider the left-going impulse for the case x0 <xa;. Then the left-going impulse travels a distance d = z; - x from the point of input to the observation point. Therefore, at time t = d/c there will be an output impulse. This is written as y(t) = A6(t -- d, where 6(t - d) denotes an impulse occurring at time d, and d A d/c. In this paper, a tilda placed above a distance value denotes division by c which gives the time it takes to travel that distance at speed c. In the frequency domain, the Laplace transform of the first output impulse is 00 Y(s) A y(t)e~"dt = Ae-d. 000 For discrete time, simply set t = nT where T is the sampling period, and define the x positions along the string to be at integer multiples of cT, the distance traversed during one sample period. If d = mcT, then (nT) = A(nT - mT), where the discrete-time unit impulse is defined by 1,n=o 6(n) A. to, is9A 0 The frequency domain representation is given in the discrete-time case by the ztransform of the time-domain expression, 00 Y(z) A y(nT)r" = Az~d= Az-mT. The discrete-time and continuous-time representations are related in the frequency domain by the substitution z =.'. When working with discrete time, it is convenient to use the definitions y jn)= AS(n -m), Y(z)= Arm", where the sampling interval has been normalized to 1. In this situation, the substitution z =ce' converts properly to the unnormalized analog frequency domain. In particular, 313

Page  314 ï~~ 2 A PARAMETRIC MODEL FOR THE VIBRATING STRING the spectrum is obtained by setting z = ejT in the z-transform, where w = 2rf, and f is frequency in Hz. Let x(n) be an arbitrary waveform having the z-transform X(z). Then x(n)+ +X(z) means that x(n) and X(z) are z-transform pairs. By the shift theorem for z-transforms [6], x(n)l-.X(z) x(n - k)++ zkX(z). This implies that the term z-k may be interpreted as a delay operator which delays a signal by k time samples. In deriving the string model, the following delay-operator notation will be used. z rx(t) A x(t - r). Thus time is in seconds and the unnormalized notation for the z-transform is used. This notation facilitates writing down the string transfer function by inspection in simple cases. When discrete-time effects are of interest, the sampling rate can be normalized to unity so that the time indices and distances will be integers. (This will be done in section 5.) 2.3. Non-Rigid Terminations and Distributed Losses Non-rigid terminations and lossy, stiff strings are relatively difficult to analyze when the wave equation is used as a starting point [36]. Therefore, we take a simpler approach involving some approximations which are reasonable for audio applications. First, losses and phase-dispersion due to string imperfections are absorbed into termination losses. This causes little or no change in the perceived output signal. For example, if the string is exponentially damped, this can be provided by simple scaling by p < 1 at a termination point (in addition to the usual sign reversal); this replaces a continuously decaying exponential envelope by an exponential "staircase" which steps down once per "period." Similarly, if the string is dispersive, a variable delay (as a function of frequency) may be inserted at the string termination to alter the round-trip travel time as though the speed of propagation on the string were being changed as a function of frequency. The second approximation is that a yielding termination is represented as a linear time-invariant filter of low order. This termination filter includes all absorbed string imperfections. In general, as long as the transformation from one period to the next can be well approximated by a low-order filtering operation, this approach can be effective. Since the ear is not very sensitive to a rearrangement of phase in a quasi-periodic signal, lumping the losses and dispersiveness of a string into the terminations does not have serious audible consequences. The string model incorporating generalized terminations is shown in Fig. lb. The lumping of distributed losses into the terminations, and the modeling of the terminations as low-order linear filters, are the keys to economy in the string model. In general, the magnitude frequency response of the termination controls string damping as a function of frequency, and the phase delay of the termination adds to the effective 314

Page  315 ï~~ 2 A PARAMETRIC MODEL FOR THE VIBRATING STRING u O.J okXG T; L Figure 2. Initial acceleration (or curvature) impulse traveling to the left on the string. The point of input is rg, and the output is observed at position zo. string length as a function of frequency. Thus the ideal string can be perturbed in a par simonious fashion to provide harmonics which decay at different rates and/or overtones which are not harmonically related to the fundamental. More details on this subject can be found in [22]. We will now pose a general expression representing the effects of filtering due to yielding terminations and string imperfections. For a doubly-terminated, ideal string of length L, the period of oscillation is P = 2L/c. When a filtering operation is introduced on the string, the signal is no longer periodic, but we assume that this filtering is so "mild" that the signal is close to periodic. Let the total round-trip filtering be denoted by H1(z). Then each "period" is the previous period filtered by H(z). If P(z) equals the Fourier transform of the first period, then the next period has the Fourier transform z9'Hj(z)P(z). Thus the output transform for all time is given by Y(z) = P(z) + z~'H(z)P(z) + z'2PH2(z)P(z) + --- P(z) (4) 1 - z-'H('z)ti 2.4. Transfer Function for the Non-Ideal String Using the above concepts, a transfer function for the doubly-terminated linear string will be derived which includes frequency-dependent damping and inharmonic overtones. For convenience, the "left" termination (at z = 0) will be called the bridge, and the "right" termination (at x = L) will be called the nut. The nut and bridge reflection transfer functions will be denoted Hn(z) and H(z), respectively. Suppose that the string is initialized with a solitary acceleration impulse of amplitude A traveling, say, toward the bridge (z = 0) from the point x = x at time t = 0 as shown 315

Page  316 ï~~ 2 A PARAMETRIC MODEL FOR THE VIBRATING STRING in Fig. 2. Then u(t) = A6(t). Let the observation point on the string be at x = xo, where for definiteness x0 is assumed to lie to the left of x; (i.e., x0 < x). As before, we define x = x/c for an arbitrary distance x, in order that distance be normalized to correspond to time in seconds. The first output impulse occurs when the impulse has traveled from x; to zo. This will be at time t = (x; - x)/c &=0z;- X,. Thus, the first contribution to the output is the term Az-(xi--i2)6(t). The impulse continues left until it reaches the bridge, where it is filtered and reflected (a change of sign is typically included in H6(z)). Next it propagates to the right with "amplitude" AHb(z), and when it reaches the point Â~o, the term AHb(z)z-(zi-~X)z-2x6(t) - AHb(z)zI( +zo)6(t) appears at the output. The pulse continues to the right, reflects at the nut, and returns to x at time P = 2L/c with amplitude AH(z)Ha(z). Thus the first period of the output waveform is y(t) = Az~(' ~5*)6{t )+ AHb(z)z-('i+o) 6(t), 0 < t < P. For the remaining periods, we invoke (4) to obtain z~( j -o) + Ho(z)z-F1(ij+iÂ~ y(t) = z ) zS )A6(t), t > 0. 1 - zHb(z)Hn(z) The transfer function of the string is therefore Y(z) ( z-f'--o) + Hb(z)z-(i+o) Hfi(x;, XZz) Q (5 '- U(z) 1 - z-PH(z)Hn(z) An analogous derivation yields the string transfer function for the case of an acceleration impulse traveling initially toward the nut, again for the case x < x;. H H + z +zÂ~ + H6( z)zsi-~** H xzi z, z) A Hn(z)Cz iXo+ dz.X (6) 1 - z-PH(z)H(z) If an impulse is input to the string without an initial velocity of propagation equal to Â~c, then the transfer function is a linear combination of H4(x;, xo, z) and H8(x;, x, z). Thus the general transfer function is given by H,(x;, zo,, z) A J+(z; xo, z) + (1 - 7)H,(x;, xo, z), (7) where -1 is determined by the initial position and velocity of the input impulse. In the next section it will be shown that for the plucked string, observed between the bridge and the pick, we simply set 1 -7= -, (Plucked String), 2 and for the steady-state Helmholtz description of the bowed string, observed between the bridge and the bow, we set 1,(p-Bow). 316

Page  317 ï~~ 3 APPLICATION TO BOWED STRINGS 0E..Si 7 5 a) d) S0.25.5 6.7s Â~ STRING PSITI8N Figure 3. a) Initial string displacement for the ideal plucked string. b) Corresponding initial acceleration distribution. 3. Application to Bowed Strings In this section, the description of bowed-string motion due to Helmholtz will be used to derive a model for bowed strings which uses the string model of the previous section along with an impulse-train excitation. The ideal plucked string is treated also, because it turns out to be simply the superposition of a "down-bow" and an "up-bow" of Helmholtz bowed-string waveforms. 3.1. The Plucked String A diagram for the ideal plucked string is shown in Fig. 3a. Prior to time 0, the string is pulled away from equilibrium by a point force at z = z;, to give two straight string segments of equal tension meeting at a corner. Let D denote the maximum initial displacement of the string, D = w(z;,0). The initial velocity of the string is assumed zero. 317

Page  318 ï~~ 3 APPLICATION TO BOWED STRINGS Twice differentiating the initial string shape with respect to z gives the initial curvature distribution,* wvz(x, 0) = 6(x - z;). From the wave equation (1), the equivalent acceleration input is A DLc2 u(t) Awt(X;,0)6(t)= -6(t) A 2A6(t). T;(L-z;) This initial acceleration is shown schematically in Fig. 3b. hr 1.5.ja a 8.5 S4 I 4-C g) 9 6.25 8I 5 9.75 [ STP[~ mNa"st Tr0N Figure 4. Plucked-string displacement and corresponding ac celeration distribution at time t = P/8 = (1/8)2L/c. a) Displacement. b) Acceleration. Since the initial velocity of the string is zero, the curvature impulse is also initially at rest. Therefore, for t > 0, the impulse splits into a left-going and a right-going impulse, each with amplitude A. The string displacement and corresponding acceleration distribution for a time one-eighth period after t = 0 are shown in Fig. 4. * w,(x,0) 4 im&..o[w.(z + h, 0) - w,(x - h, 0)]/(2h). 318

Page  319 ï~~ 3 APPLICATION TO BOWED STRINGS The transfer function of the string (7) can be used to write the output acceleration, observed at x = x, as y(t) = H,(xi, z,1/2, z)2A6(t), and therefore the transfer function of the plucked string is given by z-( i* + Ha(z)z-+)+ Hn(z)z;+o-P +H(z)z H,(zi, z0, 1/2, z) =_,,-8 1 - z H(z) where Ht(z) A H(z)HH(z). 140 2 - *t 4 ret S 6.2s 6.3 8.75 1 s57'< 05: T!ON Figure 5. a) String displacement for the ideal bowed string. b) Corresponding acceleration distribution on the string. 3.2. The Helmholtz Bowed-String Model The first-order model of bowed string motion derived by Helmholtz [20] is as shown in Fig. 5. The string consists of two straight linear segments at all times. The corner at the intersection of the two segments propagates along a parabolic arc with speed c. Since the linear string segments have zero curvature, the wave equation implies that the acceleration must be zero everywhere except at the corner where it is impulsive. This impulse simply shuttles back and forth on the string. In the plucked string there were two such impulses. Thus in terms of acceleration waves, the model for the bowed string is even simpler than that of the plucked string. 319

Page  320 ï~~ 3 APPLICATION TO BOWED STRINGS Let D be the peak displacement of the string when the corner is at the midpoint x = L/2, and let t = 0 correspond to this configuration. Then the curvature distribution is given by 4D wrX(x, 0) = -j-6(x -L/2), L which is the same as the plucked string for x; = L/2. By requiring the curvature to propagate with constant magnitude, one obtains the peak displacement D(x) = 4D(L/2)x(L - x)|L2 at each point x E [0,L] on the string-a parabola, in agreement with Helmholtz. The acceleration input is then 4Dc2 U(t) tA wt(x;,0)6(t) = L6(t) 4. Ab(t). L For t > 0, there is either a left-going or a right-going impulse, depending on the direction of bowing. This is necessary to produce the steady-state string motion described by Helmholtz. We arbitrarily assume that the bowing is "down" and that the impulse is initially left-going. The transfer function of the string for "down-bowing" is then z-(zi--zo) + Hb(z)z-(i+iO) y(t) = Ii(zi, x, 0, z) = H;~(Xi, x0, z) =+.o (9) 1 - z-,Hj(z) The transfer function for "up-bowing" (the impulse initially traveling to the right) is found by subtracting (9) from the transfer function of the plucked string (8). 3.3. Bowed Strings as Periodically Plucked Strings Helmholtz bowed-string behavior amounts to a single curvature impulse traversing the string, while a plucked string entails two such impulses. A simple physical description of the bowed string based on this idealized picture is as follows. Imagine the string drawn from rest by the bow until the tension in the string overcomes the static friction force, and the string releases from the bow. Assume the dynamic coefficient of friction is zero. Then the string has been "plucked" and two curvature impulses propagate outward from the bowing point, just as in Fig. 4. Assume the bow is closer to the bridge than to the nut. Then the impulse traveling initially toward the bridge returns first to the bow. Consider the time just after this impulse has returned and passed under the bow. Then the string is moving in the direction of the bow at a constant velocity (still behaving as an ideal plucked string). If the bow velocity happens to be the same as that of the string, then they move together as if the string were stuck to the bow. Thus, with no 320

Page  321 ï~~ 3 APPLICATION TO BOWED STRINGS work whatever done by the bow (and therefore no new "pluck"), the string has returned to a "stuck" condition, where now the static coefficient of friction applies. But now when the impulse from the nut returns to the bow, it finds the string terminated by the bow. If this termination is absorptive, then the secondary impulse disappears. Now there is only one impulse on the string which continues on to the nut, reflects, and returns to the bow. Since the string is back to the initial displacement, the static friction cannot hold, and the string slips free once again, repeating the process. If the string attenuates (nondispersively) the propagating curvature impulse, then the bow can compensate by providing a small pluck once per period. This means that the excitation function is simply an impulse train. Our first-order model for bowed strings is based on this idealization. The transfer function (9) is simply driven by an impulse train at the desired pitch and amplitude. Note that if the impulse train has constant amplitude (a "rectangular envelope"), then the string output has an "exponential attack" followed by a sustain, and then an "exponential release." When the impulse train ceases suddenly, the resulting effect is like lifting the bow from the string. 3.4. Helmholtz Crumples Helmholtz described the main deviations from the simple mode of bowed-string operation as "crumples". By twice integrating the acceleration waveform to get transverse string displacement, one obtains the "leaning sawtooth" waveform as observed by Helmholtz. Crumples appear as little ripples in the sawtooth which correspond to those harmonics having nodes at the bowing point. Helmholtz recognized crumples as missing Fourier components, and reasoned that losses in the string can explain them. When the string waveform is considered as a steady-state natural-mode oscillation of the string, it seems clear that the bow cannot replenish energy in those modes having a node under the bow. It is interesting to observe that these missing harmonics are the same as those in the ideal plucked string. (To see this, replace all termination filters in the numerator of (8) with -1 and compute the frequency response of the numerator, which reduces to 4 sin(w4g)sin(wzo).) Thus one can simulate the effect of crumples by interpolating between the extremes of plucked-string and bowed-string in the general transfer function (7). The parameter y in-H,(x;, z0,, z) is selected between 0 and 1/2 for a down-bow, and between 1/2 and 1 for an up-bow. It should be born in mind that the Helmholtz description applies only to the steadystate behavior of the bowed string, and that to obtain a complete range of musical attacks a more elaborate string excitation is required, as discussed in the next section. 321

Page  322 ï~~ 4 BOWING THE STRING 4. Bowing the String "There is no problem, no matter how complex, which cannot, when viewed in the right way, become still more complex." - Anderson's Law For plucked-string instruments, the model is somewhat complete. For bowed strings, however, the interaction between the bow and string plays a crucial role in the quality of transient sounds. Even for steady-state tones, the model as it now stands accounts for only a few of the characteristics that are observed with bowed strings. For more realistic behavior, covering a wide range of bowing styles, a more accurate modeling of the bowing process is required. As discussed in the previous section, driving the string model with an impulse train provides Helmholtz-type behavior. The main improvement needed for realistic transient behavior is an input to the string which behaves more like a bow. This input is an additive component which models the effect of a bow with a given pressure, differential velocity, and position. The basic physical mechanism is the friction of the bow against the string, and its relation to the characteristic wave impedance of the string. The most convenient choice of string simulation quantities is now transverse velocity, obtainable by one time-integration of the acceleration waves considered previously. The operation of the "bow" is as follows: The variables sensed are the incoming leftgoing and right-going velocity waves which are denoted v;(n) and vir(n), respectively. Let vi(n) = vzi(n) + vir(n) denote their sum (which is interpreted as the incoming transverse string velocity at the bowing point). We must solve for the change in velocity Ai{n) as a function of the bow pressure, the relative velocity between the bow and string, and the string wave impedance. The velocity correction will be distributed equally in left-going and right-going directions to produce outward velocities v01 = v;j + av(n)/2 and Vor = vi, + Av(n)/2. The net instantaneous string velocity under the bow is v(n)= v;(n) +,Av(n). The force of the bow applied at time-sample n will be f(n) = F(v(n) - vb(n)), where F is the friction curve which relates force and velocity under the bow, at a given bow pressure and bow velocity vb. This force must also correspond to a velocity shift of the amount Av(n)= Yf(n), where Y is the characteristic wave-admittance of the string. These last two equations are solved simultaneously in practice by finding the intersection of the functions f = F(nv +v;-vb) A qualitative example of the relation between the friction curve and the wave-admittance line is shown in the Friedlander-Keller diagram of Fig. 8. If bow force is held constant, then 322

Page  323 ï~~ 4 BOWING THE STRING 4 LI. DrFERE~rXr4L Figure 6. Friedlander-Keller diagram showing the bow-string friction curve and the wave-admittance line of the vibrating string. It is convenient to scale the variables so that the wave-admittance line has unit slope, and the z-intercept of the line is differential velocity vi - vi. The solution of the diagram is the distance nv from the z-intercept of the wave-admittance line to an z-value where the line intersects the friction curve. To resolve ambiguities, it is usually adequate to choose the solution which yields minimum av. the intersection of the curves can be pre-computed and stored in a table look-up. Typical values of Y and F(v) can be found in [351. The bow force can be approximately represented by a vertical scaling of the friction curve. Bow position, of course, is represented by the sizes of the delay-lines to the left and right of the bowing point. It is straightforward to extend the above model to include torsional string waves, multiple bow-hairs, and realistic bow-hair dynamics [35]. Figure 7 shows a diagram of the bowed string which more accurately reflects the physics of bowing. The string is driven by the Friedlander-Keller diagram [32] solver, and the incoming string velocity at the bowing point is required for this solution. The inputs to the model are now bow-pressure, bow-velocity, and an "innovations" term which provides statistical fluctuations not accounted for by the model. From a physical point of view, each termination filter should be placed at the midpoint of its associated delay line. However, the performance of the model is exactly equivalent when the termination filter is moved outside 323

Page  324 ï~~. 6.STRING-LOOP IDENTIFICATION Figure 7. System diagram of the string model with the McIntyre-Woodhouse bowing unit. the pure delay. (Time-invariant linear filters are commutative.) Thus the left delay line is the "delay to the nut and back" while the right delay line is the "delay to the bridge and back." For completeness, the string model is shown with a body simulator. In the case of the violin, for example, the body simulator is a linear filter which serves the same function as the body of the violin in transducing the vibration at the bridge to the surrounding air. The body filter must include terms due to bridge-string coupling and bridge-filtering effects in addition to the air and wood resonances of the violin body proper. Effects of body coupling on the string are included in the string-loop filter. 6. String-Loop Identification Assuming the model for bowed strings is reasonable, one may wonder if there is an effective way to use measurements of real instruments to set the various model parameters. This would provide a good start in setting up musically interesting cases. The variables to be specified include: * String-loop filter coefficients. * The bow-string friction curve. * String wave impedance. 324

Page  325 ï~~ 5 STRING-LOOP IDENTIFICATION " An innovations signal. * Body-filter coefficients. This section treats the problem of identifying the string-loop filter Hg(z), which represents the total filtering accumulated in the propagation once up and down the string (one period). This filter is assumed to be lumped at the "bridge" in the final model. The identification of the body filter is treated in [47J. The identification of the bowing parameters and innovations signal remain as topics of future research. It is most convenient in this context to use the normalized z-transform notation defined in section 2. That is, the sampling period T is set to 1 so that all time indices are integervalued. As was discussed in the derivation of equation (4), the string transfer function can be expanded in a formal power series to yield 11(z) -= U(z) = U(z) + zHj(z)U(z) + z 2H2(z)U(z) + 1 - Hz) where U(z) may be thought of as the numerator of H(z), or as the z-transform of the initial period of vibration (in which case H(z) is the output transform). This expression illustrates the interpretation of I(z) as a filter which is applied successively at periodic intervals to generate the output waveform from the initial conditions. 5.1. Error Criterion In any model-calibration problem, we must first think about the error criterion. The basic approach is to state what error measure would be ideal to minimize, and then whittle it down by various sensible approximations until it is tractable with known approximation techniques. Magnitude Error An important role of the magnitude response IHg(e'i) in the string loop is to provide frequency-dependent damping in the string. Such damping causes different decay rates of the various partials when the string is left to vibrate freely. A natural choice of error would then be the error in the time-constant of decay. In [22], it was shown that the decay time-constant is given by P -ZH;(ei")|w r = P-- L w (8amples), ln J H(eJW)t where P is the loop bulk-delay in samples. The time-constant error is then defined by tpw A PjLgd&W)/w _ P - LII,(eW)/w Pi 1a HdceiI - Plinj/;elw)j Nn,()w)I,) lIdeilnHei~ (10) 325

Page  326 ï~~ 5 STRING-LOOP IDENTIFICATION where Hg(el") is the approximate frequency response, and H(eJW) is the true frequency response of the string-loop filter. We assume that P is known. Since P is typically much larger than the phase-delay of the string-loop filter, the terms LHI(eaw)/w, LH(eW)/w are both much less than P in magnitude, and they have been dropped in the approximation. The denominator of (10) may be interpreted as a weighting which approaches infinity as the loop gain approaches one. This is appropriate since such gains correspond to very long time constants, and a small change in magnitude produces a large change in the time constant. This weight function is still provided to a good extent if we approximate |fi(eiW)j by IHj(eJW)| in the denominator of (10). The advantage of this modification is that it will reduce the error criterion to one for which a solution is possible [47], viz., tn(wiIn H(e3w)!-llIf(td")I p lntHl(eI)- In g(e )I 5,(w) ~P.(11) in2| Hg(ew) 2 In2 Hg(eiw)( This error cfassifies as a weighted log-power frequency-response error, and a method is given in [47] which minimizes the L norm of its first-order Taylor-series approximation with respect to |Hgj. Thus, the final partial-decay error criterion is given by is given by JHg(e") - kA(eii) JM)11 11(12) H(eiw)121n2|jH(eiw) where 0 is the vector of filter coefficients for fIj(z). The final error inside the norm also happens to be the first-order term in the Taylor expansion of (10) with respect to Ij about |Hj, making the explicit approximation from (10) to (11) unnecessary. It is an important benefit that the final form (12) can be minimized by an algorithm which is guaranteed to converge monotonically to an optimum solution. Furthermore, this is true even for rational filters H1, which is typically rare in filter design [47J. Phase Error We have only arrived at a means for obtaining a good magnitude approximation. We now consider the phase-response error, and its importance. An important role of the loopfilter phase response is to provide inharmonic partials in the freely vibrating string. The ear is very sensitive to slight relative perturbations in the frequency of sinusoids, and so the "sound" of the string should he highly sensitive to errors in the phase-delay of the string-loop filter. Let wk denote the true radian frequency of the kth partial overtone of the string, and let cZ' denote the kth partial frequency of the string model. Also, let Dj~a)= /ix/ denote the phase-delay of lij(z). Then minimizing the worst-case relative deviation in 326

Page  327 ï~~ 5 STRING.LOOP IDENTIFICATION partial-tuning means to minimize b1() - Ddwk) ) - DL(wk) Wk d00 P+Da0) ok where we used the tuning formula rk = 2rkf,/(P + DI(wk)) derived in [221. Thus a good partial-tuning error criterion is given by LH (eim) -Z$I1(w) Jb)A |j b5(w) - D;(w) 110 - L.~J)~~Ljw (13) Minimizing the error in the tuning of the string overtones thus corresponds to minimizing the error in the phase delay of the string-loop filter. Assuming the magnitude response is obtained by log-power matching, as discussed above, one can then design an allpass filter having the optimum phase-delay approximation (see for example [49]). This does not produce an overall optimal solution since the phase and magnitude have been matched separately in two independent sections of the filter Hi(z). However, the increase in filter order required may be offset by the greater relevance of the two error criteria (12) and (13). A further advantage is that a trade-off in the relative accuracy of decay-rate and partial-tuning can be easily controlled. The ability to work with the error criteria (12) and (13) depends on having the true string-loop frequency response H(c"') to use as a desired. Methods for measuring HJW) are discussed in Â~5.4. Alternatively, it is possible to form string models directly from the recorded behavior of the freely vibrating string; in the next two subsections, methods of this kind are discussed. 5.2. A Linear Prediction Approach The structure 1 H(z) - (14) 1 - z--P11) where Hj(z) is a low order string-loop transfer function of the finite impulse-response (FIR) class I(z) A hi(O) + hi(1)z~' + - -.-+ h,(N)--N can be estimated from the behavior of a freely vibrating by means of a modified form of linear prediction. To see this, note that in the time domain, (14) implies y(n)= H(z)u(n)=,--=u(n)+ Hg(z)y(n -P). (15) 1 -z-fH(z) If the string is vibrating freely at time n, then the input t~n) is finished, i.e., u(n) = 0, which gives $~n) = Hg(z)y(n - P). 327

Page  328 ï~~ 5 STRING-LOOP IDENTIFICATION The modeling problem is then to find the coefficients of Hg(z). This can be done by minimizing the L2 norm of f(n) A (n) - Hff(zg(n - P). with respect to the coefficients A(i), i = 1,..., N. This is nothing more than a linear prediction problem in which the prediction takes place over a span of P samples instead of the usual one sample. The various styles of solution to the one-step linear prediction problem may be carried over to the P-step case with no particular surprises, and the reader is referred to Markel and Gray [29] for a comprehensive (though advanced) treatment of the one-step case. A "tutorial" review is also available by Makhoul [28]. Instead, we leave the P-step linear-prediction formulation as a special case of the system-identification approach, presented in the next subsection. The P-step linear-prediction formulation has not received a lot of attention in the literature, although forms closely related to it exist. In [2], a similar form was proposed for the purpose of eliminating the fine-structure from the spectrum of the residual output of a conventional linear predictor for voiced speech. Also, related models have been applied to scasonally varying time-series [5]. We have also applied it successfully to pitch tracking; in this application, the coefficients {h(i)}t exhibit a peak corresponding to the estimated period. Pitch tracking can also be based on the average phase-delay of H(z). 5.3. A System Identification Approach It can be shown that reflection transfer functions corresponding to passive terminations must have the same number of zeros as poles [47]. It is therefore desirable to allow polezero modeling of the string-loop transfer function, so that more physically accurate models are possible. Rational models can be estimated directly from string behavior by means of system identification methods [16,27,47]. The free vibration of the string is expressed by equation (15) with the input u(n) set to zero, giving $(n)_=H(z)y(n - P). Hj(z) is assumed to be a linear transfer function which is to be modeled with a rational transfer function of the form A B(z) ftg(z) A, (16) A(z) where B(z)Abo+ b1z~'+...+ Nz-N A()1A1+ ~+ - -+ N (17) and the order N is given. Applying the basic system-identiication formulation means to minimize equation error Z(n)= A(z)y$n) - b(z)y$n - P) (18) 328

Page  329 ï~~ 5 STRING-LOOP IDENTIFICATION in the time domain under the 1 norm. If we set A(z) - 1, then (18) reduces to the linear prediction formulation discussed in the previous subsection. In the more general case, the solution is given by a standard least-squares procedure which is derived in detail in Chapter 2 of [47], and also in the system-identification literature (e.g. [18,21]). 5.4. Practical issues In both string modeling formulations, the solution is at first sight independent of the initial excitation of the string. This occurs because one is really only comparing one "period" to the next to find the filtering operation which takes one to the other. In practice, however, the excitation is important. For example, if the string is initially excited only at its fundamental frequency, then the string-loop frequency response can only be measured at that frequency. Similarly, when all partials are present, the string-loop frequency response is "sampled" only at these frequencies. In the case of modeling the violin [47], for example, harmonic excitations are insufficient for identification because the resonance structure of the body cannot be outlined by the overtones of any single note in the range of the instrument, and the losses at the bridge have potentially the same general frequency-distribution as the body resonances. The ideal experiment consists of sending an impulse into the string, and measuring its shape after one trip around the string loop. This only works if the impulse response of the string loop is less than one period (a reasonable assumption), since otherwise the measured impulse response will be "time-aliased." Unfortunately, it is difficult to initialize a string with a single curvature impulse. Another possibility is the use of pizzicato recordings, i.e., the response to a pluck. In this case, two curvature impulses, traveling in opposite directions, are initialized in the string. Some information is lost since the measured spectrum will have nulls at all multiples of the first frequency having a node at the pluck-point. However, if the pluck-point is chosen very close to the bridge, then the first null will be at a very high frequency, e.g., above the 20th harmonic. A means for obtaining a non parametric estimate of the string-loop frequency response, to which the error criteria (12) and (13) can be applied, is as follows. In a recording of N samples of the freely vibrating string, $n),n = 1,...,N, take N - P samples in the time range [1, N - PJ and call the DFT* of this segment Y(cJW). Now take the same amount of data in the time range [P + 1, N] and call its DFT Y,(e''). Spectral smoothing should be used in these DFT's to reduce side-lobe oscillation and noise in the spectra. Now, the string-loop frequency response estimate is given by sft/(jw)1 A YO~cfW) -Y,(ei )~ * Discrete Fourier Transform 329

Page  330 ï~~ 5 STRING-LOOP IDENTIFICATION The prime on ft'(ci) is used to distinguish the nonparametric frequency response from the parametric representation It(z) in terms of a rational filter. H(/ciW) c an then be used as an ideal frequency response in a filter-design technique, and the error criteria (12) and (13) can be used. While this technique seems reasonable in principle, the nonparametric frequency response function obtained in this way can be extremely "noisy." Another practical issue is that of pre-emphasis. In both the system identification and linear prediction methods, there is an implicit weighting function on the frequency-response error which is proportional to the excitation power spectrum. This can be seen by looking at the definition of equation error in the frequency domain: Ex') =2 -#jA(eW)Y(e") i-(eJ)e-WPY(r) 12 SjA(eW) 1U(e) where U(c') is the spectrum of the initial string excitation. If there is significantly lessenergy at high frequencies (as is the case after a short time of free vibration) then the highfrequency error may be larger. This was found to be a real area of difficulty in practice. A means of counteracting this behavior is to apply pre-emphasis to the data, e.g., to work with Y,(e;w) A C(el")Y(c7"), where C(z) is a low-order polynomial obtained as the solution to one-step linear prediction modeling of Y. Thus Y,(cW) is a prediction error spectrum, and it's magnitude is therefore much "flatter" than IY(elii. Use of Y, in place of Y tends to even out the spectral weighting that occurs because of the initial excitation. 5.5. Performance on Violin Pizzicato Data Figure 8 shows a recording of a plucked violin G-string. The upper curve is the waveform at the bridge. Note that the main pulse decays and spreads over time. The loop filter Hg(z) must provide this behavior. To equalize the spectral content, the time-waveform of Fig. 8a was filtered by a thirdorder linear-prediction inverse filter. The resulting time-waveform and spectrum are shown in Fig. 9. This signal is the prediction error from the linear prediction. Note that at high frequencies the signal does not have sharply defined partials or harmonics. This proved to lead to a string-loop filter with excessive loss at high frequencies. The nonparametric method in which the FFT of one segment is divided by the FFT of a segment one period earlier gave unusable results due to excessive variance in the frequency-response estimate (even when heavy smoothing was used). For example, the loop-filter gain exceeded unity at many places in the spectrum. This was unfortunate since 330

Page  331 ï~~ 5 STRINC-LOOP IDENTIFICATION a) b). B.5 -0.5 5 FRES4a (C~N Figure 8. Time-domain input-output pair for the case of a plucked open violin G-string. a) Force derivative at the bridge. b) Sound pressure from the body. a good nonparametric estimate would allow the error criteria (12) and (13) to be used. The linear-prediction and system-identification methods, however, gave plausible results, as will be shown. The results of an order 8 and an order 20 string-loop filter estimate, obtained using the periodic linear prediction method, are overlayed in Figure 10. The plot shows the coefficients of the predictor, which can be interpreted as the appearance of an impulse after one round-trip on the string. The curves have been aligned to show the agreement obtained over their common delay range. Finally, the performance of the string model using the smaller filter is shown in 331

Page  332 ï~~.5 STRING-LOOP IDENTIFICATION a) J 6 wE GmES) rb FREaNcY a gr Figure 9. The same time-domain input-output pair as in Fig. 8 after applying third-order linear-predictive pre-emphasis. a) Force derivative at the bridge. b) Sound pressure from the body. Figure 11. It is evident that the overall exponential decay is reasonable, but that the high frequencies die out too quickly. This is thought to be due to the lack of high-frequency energy in the original recording. This type of trouble could be also be caused by stiffness; if the predictor does not span more than the range of effective string-length change over all frequencies, then those frequencies which are "out of reach" of the predictor appear uncorrelated and will be attenuated severely. Figure 12 shows an overlay of three string-loop frequency responses obtained using the system identification approach. Each filter has the same number of poles as zeros, and the three cases are orders 8, 7, and 8. In each case, the bulk delay was adjusted by 332

Page  333 ï~~ 8 CONCLUSIONS 3i J a -0 25 18 28 TIME (SAi1PLES) Figure 10. Two string-loop filter coefficients obtained by the linear prediction method. The loop filters are of order 8 and 20, respectively. trial and error to maximize the gain of the string-loop filter at 0 Hz (theoretically 0 dB). This was a very important step due to an attenuation phenomenon discussed in Chapter I of [47]. In addition to the three pole-zero cases, the order 8 FIR string-loop frequency response is included for comparison. Again, high frequencies appear decorrelated, and the high-frequency fit is somewhat random. The low-frequency identification, however, is quite consistent. Figure 13 illustrates the response of the string model when the order 8 recursive filter is used as the string-loop filter. 8. Conclusions A computational model for bowed strings has been presented, which captures several of the most musically important aspects of real stringed instruments. This capability is obtained at very low cost compared to other approaches of similar generality. However, there is still considerable work to be done in making a useful family of bowed strings using the techniques presented in this paper. A neglected aspect of the complete modeling process is that the string must be connected to a "body" which provides resonances characteristic of the desired family. For ex 333

Page  334 ï~~ 8 CONCLUSIONS '' 4.. 1 IOGG flOG,a r r! lf1~jji Ldr Figure 11. Performance of the order 8 FIR string-loop filter. a) Original pizzicato recording. b) String-model response initialized with the first period of a). c) String-model impulse response. ample, a violin octet would require eight different digital filters to simulate body resonances. Methods for designing such digital filters can be found in [47]. An area for future work is in experiment design for the methods of section 5. The pilot experiments presented there are by no means final. While demonstrating the basic feasibility of identification methods, they point out areas of practical difficulty such as in obtaining reliable high-frequency estimates of the string-loop frequency response. The most pressing problem is that of control. The complete model requires functions of time corresponding to bow pressure and velocity. It is somewhat awkward to specify bowing style by these functions. What is needed is a versatile library of pressure and 334

Page  335 ï~~ 6 CONCLUSIONS Figure 12. Three string-loop filter frequency-response magnitudes obtained by the systemidentification method, and one filter obtained by the linear-prediction method. The string-loop filters have (pole,zero) orders (6,6), (7,7), (8,8), and (0,8), as marked in the figure. velocity curves (dependent on bow position) which cover the useful bowing regimes. It is conceivable that empirical measurements could provide these data, using, for example, laser interferometry during normal playing. Such experiments could also be used to estimate the statistics of the innovations signal for natural bowed strings. Another aspect of musical control is the inclusion of vibrato. This is obtained easily in the simplified model by placing frequency (and perhaps amplitude) vibrato on the driving impulse train. (Good results are obtained without varying the delay-line lengths.) In the more general case, however, vibrato must be implemented by varying the size of the delay line which represents the length of the string. Since the delay lines are of integer length, unacceptable results are obtained unless an interpolation of delay length is performed. A simple method found to be very effective in this situation is. given in [22,47]. Perhaps the availability of good digital models for bowed strings will allow for a more pure evolution of stringed musical instruments, by making the musical function independent of physical constraints. Maybe we will also learn reasons why bowed strings are so versatile a musical medium, and learn general principles for designing instruments which engage the ear with natural, non-fatiguing textures. At the very least, composers of computer music should be able to call on the expressive power of bowed strings when they so desire. 335

Page  336 ï~~w T t EtCn e'WS "~ b) 0* - ing aswts '" ca FIgure 13. Performance of' the 8-pole, 8-zero string-loop filter obtained by the system-identification method. a) Original pizzicato recording. b) String-model response initialized with the first period of' a). c) String-model impulse response. 336

Page  337 ï~~ References [1] 1. Andersson, "Stick-Slip Motion in One-Dimensional Continuous Systems and in Systems with Several Degrees of Freedom," Wear, vol. 69, no. 2, pp. 255-256, June 1981. [2] B. S. Atal and M. R. Schroeder, "Predictive Coding of Speech Signals and Subjective Error Criteria," IEEE Trans. on Acoust., Speech, and Signal Proc., vol. ASSP-27, pp. 247-254, June 1979. [3] A. Benade, Fundamentals of Musical Acoustics, Oxford University Press, New York, 1976. [4] A. Benade, "Fiddle Acoustics: The Summer of 1977," Catgut Acoust. Soc. News Let., no. 28, pp., Nov. 1977. [5] G. E. P. Box, and G. M. Jenkins, Time Series Analysis, Holden-Day, San Francisco, CA, 1976. [6] R. Bracewell, The Fourier Transform and its Applications, McGraw-Hill, New York, 1905. [7] J. S. Bradley and T. W. W. Stewart, "Comparison of Violin Response Curves Produced by Hand Bowing, Machine Bowing, and an Electromagnetic Driver," J. Acoust. Soc. Amer., vol. 48, no. 2 pt 2, pp. 575-578, Aug 1970. [8] G. Budzynski and A. Kulowski, "Bowed String as the Two-Terminal Oscillator," Arch. Acoust.,, vol. 2, no. 2, pp. 115-120, 1977. [9] L. Cremer, "Bow Pressure Influence on the Self-Excited Vibrations of a String During Contact," Acustica, vol. 30, no. 3, pp. 119-138, March 1974. [10] L. Cremer, "Fate of the Secondary Waves During Self-Excitation of String Instru ments," Acuatica, vol. 42, no. 3, pp. 133-148, May 1979. [11] P. J. Davis and R. Hersch, The Mathematical Experience, Houghton Mifflin Co., Boston MA, 1981. [12] H. Dunnwald, "Research into the Origin of the Wolf-Tone of Violin Instruments," Acttstica, vol. 41, no. 4, pp. 238-45, Jan. 1979. [13] I. M. Firth, "The Action of the Cello at the Wolf Tone," Acustica, vol. 39, no. 4, pp. 252-263, Mar. 1978. [14] 1. M. Firth and J. M. Buchanan, "Wolf in the Cello," J. Acoust. Soc. Amer., vol. 53, no. 2, pp. 457-463, Feb. 1973. 337

Page  338 ï~~ R REFERENCES [15] F. G. Friedlander, "On the Oscillations of the Bowed String," Proc. Cambridge Philos. Soc., vol. 49, pp. 516-530, 1953. [16] G. C. Goodwin and R. L. Payne, Dynamic System Identification, Academic Press, New York, 1977. [17] C. E. Gough, "The Resonant Response of a Violin G-String and the Excitation of the Wolf Note," Acustica, vol. 44, no. 2, pp. 112-123, Feb. 1980. [18] C. E. Gough, "The Acoustics of Stringed Instruments Studied by String Resonances," Catgut Acoust. Soc. News Let., no. 35, pp. 22- May 1981. [19] C. E. Gough, "The Theory of String Resonances on Musical Instruments," Acustica, vol. 49, no. 2, pp. 124-141, Oct. 1981. [20] H. L. F. von Helmholtz, Die Lehre von den Tonempfindungen als Physiologische Grundlage fdr die Theorie der Musik, F. Vieweg und Sohn, Braunschweig, 1863. English translation by A. J. Ellis, On the Sensations of Tone as a Physiological Basis for the Theory of Music, Reprinted by Dover Publications, New York, 1954. [21] R. Isermann, ed., "System Identification Tutorials," Preprints 5th IFAC Symposium on Identification, Darmstadt, Germany, Sept. 24-28, 1979, and Automatica, vol. 16,500-574, pp., 1980. [22] D. Jaffe and J. O. Smith, "Extensions of the Karplus-Strong Plucked String Algo rithm," submitted to the Computer Music Journal,. [23] K. Karplus and A. Strong, "Digital Synthesis of Plucked String and Drum Timbres," submitted to the Computer Music Journal,. [24] J. B. Keller, "Bowing of Violin String," Comm. Pure Applied Math., vol. 6, pp. 483-495, 1953. [25] J. Kohut and M. V. Mathews, "Study of Motion of a Bowed Violin String," J. Acoust. Soc. Amer., vol. 49, no. 2 pt 2, pp. 532-537, Feb 1971. [26] B. Lawergren, "On the Motion of Bowed Violin Strings," Acustica, vol. 44, no. 3, pp. 194-20, March 1980. [27] L. Ljung and T. L. Soderstrom, Theory and Practice of Recursive System Identifi cation, MIT Press, Cambridge MA, 1983. [28] J. Makhoul, "Linear Prediction: A Tutorial Review," Proc. IEE, vol. 63, pp. 561-580, Apr. 1975. [29] J. D. Markel and A. H. Gray, Linear Prediction of Speech, Springer-Verlag, New York, 1976. [30] M. V. Mathews, The Technology of Computer Music, MIT Press, Cambridge MA, 1969. 338

Page  339 ï~~ R REFERENCES [31] M. E. McIntyre, R. T. Schumacher, and J. Woodhouse, "New Results on the Bowed String," Catgut Acoust. Soc. News Let., no. 28, pp., Nov. 1977. [32] M. E. McIntyre and J. Woodhouse, "On the Fundamentals of Bowed String Dynam ics," Acustica, vol. 43, no. 2, pp. 93-108, Sep. 1979. [33] M. E. McIntyre, R. T. Schumacher, and J. Woodhouse, "Aperiodicity in Bowed-String Motion," Acustica, vol. 49, no. 1, pp. 13-32, Sep. 1981. [34] M. E. McIntyre and J. Woodhouse, "The Acoustics of Stringed Musical Instruments," Interdisciplinary Sci. Rev.,, vol. 3, no. 2, pp. 157-73, June 1978. [35] M. E. McIntyre, R. T. Schumacher, and J. Woodhouse, "On the Oscillations of Musical Instruments," to appear in JASA. [36] P. M. Morse, Vibration and Sound, published by the American Institute of Physics for the Acoustical Society of America, 1976 (1st ed. 1938, 2nd ed. 1948). [37] A. V. Oppenheim and R. W. Schafer, Digital Signal Processing, Prentice-Hall Inc., Englewood Cliffs, N.J., 1975. [38] A. Papoulis, Signal Analysis, McGraw-Hill, New York, 1977. [39] N. C. Pickering, "Anomalies in the Frequency-Length Functions in Violin Strings," 70th Conv. of the Audio Eng. Soc., New York, Oct. 1981. [40] L. R. Rabiner and B. Gold, Theory and Application of Digital Signal Processing, Prentice-Hall Inc., Englewood Cliffs, N.J., 1975. [41] C. V. Raman, "On the Mechanical Theory of Vibrations of Bowed Strings, etc.," Indian Assoc. Cult. Sci. Bull., vol. 15, pp. 1-158, 1918. [42] P. M. Ruiz, "A Technique for Simulating the Vibrations of Strings with a Digital Computer," Master's Thesis, Univ. Ill., 1969. [43] J. C. Schelleng, "The Violin as a Circuit," J. Acoust. Soc. Amer., vol. 35, pp. 326338, 1963. [44] J. C. Schelleng, "The Bowed String and the Player," J. Acoust. Soc. Amer., vol. 53, pp. 26-41, Jan. 1973. [45] R. T. Schumacher, "Self-Sustained Oscillations of the Bowed String.," Acustica, vol. 43, no. 2, pp. 109-20, Sep. 1979. [46] J. 0. Smith, "Introduction to Digital Filters,", 1982. Preprints available from CCRMA upon request. [47] 5. 0. Smith, Methods for System Identification end Digital Filter Design with Ap plication to the Violin, Ph.D. Dissertation, Elec. Eng. Dept., Stanford University, 1983. 339

Page  340 ï~~ R REFERENCES [48] G. B. Thomas, Calculus and Analytic Geometry, Addison-Wesley, Reading MA, 1972. [49] B. Yegnanarayana, "Design of Recursive Group-Delay Filters by Autoregressive Modeling," IEEE Trans. on Acoust., Speech, and Signal Proc., vol. ASSP-30, pp. 632-637, Aug. 1982. 340