Title: Duffing
1Duffings Equation as an Excitation Mechanism for
Plucked String Instrument Models
- by
- Justo A. Gutierrez
- Masters Research Project
- Music Engineering Technology
- University of Miami School of Music
- December 1, 1999
2Purpose
- The objective of this study is to provide the
basis for a new excitation mechanism for plucked
string instrument models which utilizes the
classical nonlinear system described in Duffings
Equation.
3Advantages
- Using Duffings Equation provides a means to use
a nonlinear oscillator as an excitation - A mathematical model lends itself to user control
- Removes the need for saving samples in a wavetable
4Overview
- Plucked String Instrument Modeling
- Excitation Modeling with Duffings Equation
- Model Performance and Analysis
5Wavetable Synthesis
- Method of synthesis that uses tables of waveforms
that are finely sampled - Desired waveform is chosen and repeated over and
over producing a purely periodic signal - Algorithm written as Yt Yt-p
- p is periodicity parameter
- frequency of the tone is fs/p
6The String Model
- z-L is delay line of length L
- H(z) is the loop filter
- F(z) is the allpass filter
- x(n) and y(n) are the excitation and output
signals respectively
7Length of String
- Effective delay length determines fundamental
frequency of output signal - Delay line length (in samples) is L fs/f0
8The Comb Filter
- Works by adding, at each sample time, a delayed
and attenuated version of the past output
9Standing Wave Analogy
- Poles of the comb filter occur in the z-plane at
2np/L - This is the same as the natural resonant
frequencies for a string tied at both ends - Does not sound like a vibrating string because it
is a perfectly periodic waveform - Does not take into account that high frequencies
decay much faster than slow ones for vibrating
strings
10The Loop Filter
- Idea is to insert a lowpass filter into the
feedback loop of the comb filter so that
high-frequency components are diminished relative
to low-frequency components every time the past
output signal returns - Original Karplus-Strong algorithm used a two-tap
averager that was simple and effective
11Loop Filter (continued)
- Valimaki et al proposed using an IIR lowpass
filter to simulate the damping characteristics of
a physical string - Loop filter coefficients can be changed as a
function of string length and other parameters - H1(z) g(1a1)/(1a1z-1)
12Loop Filter Signal Flowchart
13Loop Filter Magnitude Response and Group Delay
14Loop Filter Impulse Responses
15The Allpass Filter
- Used to fine-tune the pitch of the string model
- If feedback loop were only to contain a delay
line and lowpass filter, total delay would be the
sum of integer delay line plus the delay of the
lowpass filter - Fundamental frequency of fs/D is usually not an
integer number of samples
16Allpass Filter (continued)
- Fundamental frequency is then given by
f1 fs/(Dd) where d is fractional delay - Allpass filters introduce delay but pass
frequencies with equal weight - Transfer function is H(z) (z-1a)/(1az-1)
- a (1-d)/(1d)
17Allpass Phase Response
18Allpass Delay Response
19Inverse Filtering
- KS algorithm used a white noise burst as
excitation for plucked string because it provided
high-frequency content as a real pluck would
provide - Valimaki et al found a pluck signal by filtering
the output through the inverted transfer function
of the string system
20Inverse Filtering (continued)
- The transfer function for the general string
model can be given as S(z) 1/1-z-LF(z)H(z) - The inverse filter is simply S-1(z) 1/S(z)
21Inverse Filtering Procedure
- Obtain residual by inverse filtering
- Truncate the first 50-100 ms of the residual
- Use the truncated signal as the excitation to the
string model - Run the string model
22Steel-string Guitar Sample
23Residual After Inverse Filtering
24Truncated Residual Signal
25Resynthesized Guitar
26Duffings Equation
- In 1918, Duffing introduced a nonlinear
oscillator with a cubic stiffness term to
describe the hardening spring effect in many
mechanical problems - It is one of the most common examples in the
study of nonlinear oscillations
27Duffings Equation (continued)
- The form used for this study is from Moon and
Holmes, which is one in which the linear
stiffness term is negative so that x
dx - x x3 g cos wt. - This model was used to describe the forced
oscillations of a ferromagnetic beam buckled
between the nonuniform field of two permanent
magnets
28Experimental Apparatus (Moon and Holmes)
29Modeling the Excitation
- For this experiment, the coefficients in Moon and
Holmes modification of Duffings Equation were
adjusted to produce the desired residuals - The Runge-Kutta method was the numerical method
used to calculate Duffings Equation
30Procedure for manipulating Duffings Equation
- Generate a waveform of desired frequency with (x,
y). f ?10y is a good rule of thumb for starters. - Adjust the damping coefficient so that its
envelope resembles the desired waveforms - Adjust b, g, and w to shape the waveform, holding
one constant to change the other - Normalize the waveform to digital maximum
31Guitar Residual Synthesized by Duffings Equation
32Synthesizing the Plucked String
33Synthesized Guitar Using Duffings Equation as
the Excitation
34Timbral Characteristics
- Synthesized guitar from Duffings Equation very
similar to that from inverse filtering - Frequency of both residuals different from pitch
of synthesized strings?inharmonicity - Sonograms of both residuals also very similar
35Sonogram for Guitar (Inverse Filtering)
36Sonogram for Guitar(Duffings Equation)
37Tuning Performance (Harmony)
- For individual pitches, the algorithm played
fairly close to being in tune (perhaps slightly
sharp). The allpass filter parameters can be
adjusted to remedy this. - The C major chord played very well in tune,
sounding very consonant with no apparent beats.
38Tuning Performance (Range)
- To test effective range of the algorithm, the
lowest and highest pitches in a guitars range
were synthesized. - Low E played in tune by itself. High E was flat.
- This was more readily apparent when sounded
together.
39Summary of Tuning Performance
- Algorithm performed as expected it performed
like Karplus-Strong high frequencies tend to go
flat, and this would have to be accounted for in
the overall system.
40Changing Damping Coefficient
- Changing the damping coefficient can have
pronounced effect on timbre of sound,
specifically difference between type of pick used
and type of string - The damping coefficient was adjusted to attempt
to produce different sounds
41Synthesized Residual (d 0.2)
42Synthesized Guitar (d 0.2)
43Synthesized Residual (d 0.5)
44Synthesized Residual (d 0.5)
45Summary of Damping Coefficient Adjustments
- For d 0.2, contribution of residual made for a
very hard attack, as if picked - For d 0.5, guitar tone had much softer attack,
as if finger-picked - Sonograms confirm that the latter had more
high-frequency content
46Sonogram for d 0.2
47Sonogram for d 0.5
48Production of Other Waveforms
- Duffings Equation can be used to form a variety
of waveforms - User has some control over its behavior if
properties of the oscillator can be controlled to
obtain the desired waveform
49Residual with Damping Only
50Residual with Beta Only
51Residual with Forcing Function Only
52Residual with Strong High-Frequency Forcing
Function
53Algorithm Speed
- For 200 MHz Pentium Pro, Karplus-Strong with an
inverse filtered residual took 57.46 s. with
approximately 2500 samples saved on a wavetable - With synthesized residual, Duffings Equation
added only 4.057 s total computation time
increased by only about 5 with no saved samples
54Conclusion
- Plucked string sounds were successfully produced
- Model plays in tune
- Different plucked string sounds can be produced
by changing the damping coefficient - Algorithm is fast