ThesisPDF Available

Non-iterative numerical simulation techniques for nonlinear string vibration in musical acoustics

Authors:

Abstract

Physics-based sound synthesis of musical instruments has seen growing interest in recent years, as it allows for reproducing realistic and natural sounds while offering great flexibility and minimal storage requirements. This research falls within the scope of the NEMUS project, which is dedicated to the digital reproduction of the sound of ancient stringed instruments using physical modelling techniques. Specifically, this work focuses on the numerical simulation of nonlinear string vibration. Nonlinearities are a critical factor in accurately replicating the sound of real-world instruments. Much of the recent literature has employed energy-based methods to ensure algorithmic stability when nonlinear behaviour is present, often resulting in fully implicit schemes requiring iterative root-finding methods. While effective, these schemes are computationally expensive and introduce additional complexities. Recent developments in numerical analysis have, in some cases, enabled real-time simulation of strongly nonlinear systems using non-iterative algorithms. However, several challenges remain unresolved. This thesis aims to advance the use of finite-difference time-domain and modal methods to address nonlinearities in string vibration, which capture salient perceptual features. The emphasis is on the efficiency of the algorithms, while also developing a framework for the sound synthesis of nonlinear strings. The work begins with a comprehensive review of string models and simulation techniques, covering both historical and modern approaches. Linear models are then used as a starting point, allowing for the introduction of impedance-type boundary conditions. The research then investigates typical nonlinear effects in string vibration, such as geometric nonlinearities, collisions, and friction, using newly developed non-iterative approaches, including quadratisation-based methods for conservative forces. These techniques significantly reduce computation times, making real-time simulation feasible for most systems. However, the quality of the simulations is still highly dependent on tailored discretisation choices. The thesis concludes with two case studies that apply these methods to physical models of musical instruments.
DOTTORATO DI RICERCA IN
MECCANICA E SCIENZE AVANZATE DELL'INGEGNERIA
Ciclo 37
Settore Concorsuale: 09/C2 - FISICA TECNICA E INGEGNERIA NUCLEARE
Settore Scientifico Disciplinare: ING-IND/11 - FISICA TECNICA AMBIENTALE
NON-ITERATIVE NUMERICAL SIMULATION TECHNIQUES FOR NONLINEAR
STRING VIBRATION IN MUSICAL ACOUSTICS
Presentata da: Riccardo Russo
Supervisore
Michele Ducceschi
Esame finale anno 2025
Coordinatore Dottorato
Lorenzo Donati
Co-supervisore
Cesare Biserni
Abstract
Physics-based sound synthesis of musical instruments has seen growing interest in recent
years, as it allows for reproducing realistic and natural sounds while offering great flexibility
and minimal storage requirements. This research falls within the scope of the NEMUS
project, which is dedicated to the digital reproduction of the sound of ancient stringed
instruments using physical modelling techniques. Specifically, this work focuses on the
numerical simulation of nonlinear string vibration. Nonlinearities are a critical factor in
accurately replicating the sound of real-world instruments. Much of the recent literature has
employed energy-based methods to ensure algorithmic stability when nonlinear behaviour
is present, often resulting in fully implicit schemes requiring iterative root-finding methods.
While effective, these schemes are computationally expensive and introduce additional
complexities.
Recent developments in numerical analysis have, in some cases, enabled real-time
simulation of strongly nonlinear systems using non-iterative algorithms. However, several
challenges remain unresolved. This thesis aims to advance the use of finite-difference
time-domain and modal methods to address nonlinearities in string vibration, which capture
salient perceptual features. The emphasis is on the efficiency of the algorithms, while also
developing a framework for the sound synthesis of nonlinear strings.
The work begins with a comprehensive review of string models and simulation tech-
niques, covering both historical and modern approaches. Linear models are then used as a
starting point, allowing for the introduction of impedance-type boundary conditions. The
research then investigates typical nonlinear effects in string vibration, such as geometric
nonlinearities, collisions, and friction, using newly developed non-iterative approaches, in-
cluding quadratisation-based methods for conservative forces. These techniques significantly
reduce computation times, making real-time simulation feasible for most systems. However,
the quality of the simulations is still highly dependent on tailored discretisation choices.
The thesis concludes with two case studies that apply these methods to physical models of
musical instruments.
Acknowledgements
This thesis is the product of three years of research, coinciding with the start of the NEMUS
project and the formation of the musical acoustics research group at the University of Bologna.
It has been an intense journey; much has changed since the beginning, and along the way, I
have had the chance to meet many people who have sustained me in various ways, for which
I am deeply grateful.
First, I would like to thank my supervisor, Michele Ducceschi, for his invaluable help
and support. My work under his guidance began during my Master’s thesis when he was
in Edinburgh, and to him, I owe much of what I know: not just about physical modelling
and numerical schemes but about research itself. Needless to say, this thesis would not have
seen the light without him. In the first year of my PhD, I was the only NEMUS student, and
everything had to be built from scratch. While providing excellent supervision, Michele also
had to take on the challenge of navigating the administrative bureaucracy of the University
of Bologna, new to both of us, in order to assemble the team.
I am extremely grateful to Stefan Bilbao, who effectively acted as a co-supervisor, even
though this role had not been formalised. During my time at the University of Edinburgh,
he dedicated significant time and great effort to my supervision, regularly checking in on
my progress and offering indispensable advice. He has been a great source of inspiration,
and I have learned an incredible amount from him: much of this work would not have been
possible without his guidance.
Furthermore, I would like to sincerely thank Stefania Serafin, coordinator of the Sound
and Music Computing Master’s programme at Aalborg University Copenhagen. She intro-
duced me to physical modelling sound synthesis, and it was thanks to her that I found the
inspiration to pursue a PhD.
Many thanks to all my colleagues from NEMUS: Sebastian Duran, Craig Webb, Henna
Tahvanainen and Matthew Hamilton, for the fruitful work done together and for the scientific
meetings at La Frasca; a special mention to Craig for proof-reading this thesis. I am also
grateful to my current and former colleagues from the acoustics group: Giulia Fratoni, Gioia
Fusaro, Domenico De Salvio, Vincenzo Pettoni Possenti and Matteo Cingolani, especially
vi
for making me feel welcome when I had just started and knew no one in the department;
thanks also to Virginia Tardini and Alessia Nora.
I would also like to thank the people from the Acoustics and Audio Group at the University
of Edinburgh (in addition to Stefan): Alistair Carlson, Thomas McKenzie, Tom Mudd, Alec
Wright and Mike Newton, for warmly welcoming me into their research group; it has been
an amazing six months. I am also grateful to Romain Michon, Tanguy Risset, Pierre Cochard
and Yann Orlarey from the Emeraude team at INSA Lyon for making my visit an exciting
week.
I am particularly thankful to the reviewers of my thesis: Vincent Debut and Maarten
Van Walstijn, for the valuable comments and constructive critiques, which have significantly
improved the value of this work. Furthermore, thanks to Maarten and Vasileios Chatziioannou
for the fruitful scientific discussions.
Thanks to Stefania for being an incredibly supportive partner and especially for keeping
me sane during the write-up period. Finally, I am infinitely grateful to my parents: Maria
Luisa and Paolo, for allowing me to make mistakes while always encouraging and sustaining
me in every decision that ultimately led me to this point. This work is dedicated to you.
This research was funded by the European Research Council (ERC), under grant 2020-
StG-950084-NEMUS.
Table of contents
List of figures xi
List of tables xvii
1 Introduction 1
1.1 Linearstring.................................. 2
1.1.1 Simulation techniques . . . . . . . . . . . . . . . . . . . . . . . . 4
1.2 Nonlinearstring................................ 7
1.2.1 Numerical simulations . . . . . . . . . . . . . . . . . . . . . . . . 9
1.3 Othernonlinearities.............................. 12
1.3.1 Collisions............................... 13
1.3.2 Friction:thebow........................... 14
1.4 Thesis motivation & objectives . . . . . . . . . . . . . . . . . . . . . . . . 15
1.5 Thesisoutline................................. 17
2 Linear vibration 19
2.1 Time-dependentODEs ............................ 19
2.1.1 Energyanalysis............................ 20
2.1.2 Potential energy quadratisation . . . . . . . . . . . . . . . . . . . . 22
2.1.3 Potential splitting . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
2.2 Simple harmonic oscillator . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.2.1 First-orderform............................ 25
2.2.2 Loss.................................. 26
2.2.3 Forcingcomponent.......................... 27
2.2.4 Preamble 1: Vector inner products . . . . . . . . . . . . . . . . . . 28
2.2.5 Multiple degrees of freedom . . . . . . . . . . . . . . . . . . . . . 29
2.2.6 LossandForcing........................... 30
2.3 The1-Dwaveequation ............................ 31
viii Table of contents
2.3.1 Preamble 2: spatial inner product and integral relations . . . . . . . 32
2.3.2 Energy analysis and boundary conditions . . . . . . . . . . . . . . 33
2.3.3 Modalexpansion........................... 35
2.3.4 Lumped mass at the boundary . . . . . . . . . . . . . . . . . . . . 38
2.4 Stiffstring................................... 40
2.4.1 Energy analysis and boundary conditions . . . . . . . . . . . . . . 41
2.4.2 Modalexpansion........................... 42
2.4.3 Lumped mass at the boundary . . . . . . . . . . . . . . . . . . . . 43
2.4.4 Viscousloss.............................. 45
2.4.5 Forcing and modal expansion . . . . . . . . . . . . . . . . . . . . 46
2.4.6 Distributed bridge at the boundary . . . . . . . . . . . . . . . . . . 46
3 Numerical discretisation techniques and applications to linear systems 49
3.1 Time difference operators . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
3.2 Accuracy: truncation error . . . . . . . . . . . . . . . . . . . . . . . . . . 51
3.3 Harmonic motion in discrete time . . . . . . . . . . . . . . . . . . . . . . 53
3.3.1 Stability, consistency and convergence . . . . . . . . . . . . . . . . 54
3.3.2 Frequency warping: an exact scheme . . . . . . . . . . . . . . . . 57
3.3.3 Initialisation ............................. 58
3.3.4 Loss.................................. 59
3.4 Multiple degrees of freedom . . . . . . . . . . . . . . . . . . . . . . . . . 60
3.5 First-orderODEs ............................... 61
3.6 Spatial difference operators . . . . . . . . . . . . . . . . . . . . . . . . . . 62
3.6.1 Matrixform.............................. 64
3.6.2 Input and interpolation operators . . . . . . . . . . . . . . . . . . . 64
3.6.3 Preamble 3: discrete inner product and relations . . . . . . . . . . . 65
3.7 Discretisation of the 1-D wave equation . . . . . . . . . . . . . . . . . . . 66
3.7.1 Semi-discretisation . . . . . . . . . . . . . . . . . . . . . . . . . . 66
3.7.2 Dirichlet boundaries in matrix form . . . . . . . . . . . . . . . . . 67
3.7.3 Eigenvalue decomposition of the second difference matrix . . . . . 68
3.7.4 Full discretisation . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
3.7.5 Stability, consistency and convergence . . . . . . . . . . . . . . . . 69
3.8 Discretisation of the complete linear string . . . . . . . . . . . . . . . . . . 71
3.8.1 Semi-discretisation . . . . . . . . . . . . . . . . . . . . . . . . . . 71
3.8.2 Simply supported boundaries in matrix form . . . . . . . . . . . . 72
3.8.3 Full discretisation . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
3.8.4 Distributed bridge termination . . . . . . . . . . . . . . . . . . . . 74
Table of contents ix
4 Geometric nonlinearities 79
4.1 TheDufngequation ............................. 79
4.1.1 Potential quadratisation . . . . . . . . . . . . . . . . . . . . . . . . 80
4.1.2 Simulation .............................. 81
4.2 Geometrically exact string . . . . . . . . . . . . . . . . . . . . . . . . . . 83
4.2.1 Energyanalysis............................ 85
4.3 Morse-Ingardstrings ............................. 86
4.3.1 Anandsform............................. 86
4.3.2 Transverse-only system . . . . . . . . . . . . . . . . . . . . . . . . 87
4.4 Kirchhoff-Carrier string . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
4.4.1 Amodalform............................. 88
4.4.2 Double polarisation . . . . . . . . . . . . . . . . . . . . . . . . . . 89
4.5 Simulation of nonlinear transverse string vibration . . . . . . . . . . . . . . 90
4.5.1 Potential quadratisation in a distributed system . . . . . . . . . . . 92
4.5.2 Time discretisation: SAV update . . . . . . . . . . . . . . . . . . . 93
4.5.3 Numericaltesting........................... 95
4.5.4 Psiconstraint............................. 99
4.6 Simulation of the geometrically exact string . . . . . . . . . . . . . . . . . 104
5 Collisions 107
5.1 Collision of a mass against a rigid barrier . . . . . . . . . . . . . . . . . . 107
5.1.1 Potential quadratisation . . . . . . . . . . . . . . . . . . . . . . . . 108
5.1.2 Simulation .............................. 109
5.1.3 Gradient calculation . . . . . . . . . . . . . . . . . . . . . . . . . 110
5.1.4 Numericaltesting........................... 115
5.2 Lumped collision: finger or hammer against a string . . . . . . . . . . . . . 116
5.2.1 Simulation .............................. 117
5.3 Distributed collisions: fretboard and frets . . . . . . . . . . . . . . . . . . 119
5.3.1 Simulation .............................. 122
5.3.2 Numericaltesting........................... 124
6 Friction: the bow 129
6.1 Bowedmass.................................. 129
6.1.1 Iterative discretisation of the second-order system . . . . . . . . . . 131
6.1.2 Iterative discretisation of the first-order system . . . . . . . . . . . 132
6.1.3 Non-iterative discretisation of the first-order system . . . . . . . . . 133
6.1.4 Numericaltesting........................... 134
xTable of contents
6.2 Thebowedidealstring ............................ 134
6.2.1 Simulation of the second-order system . . . . . . . . . . . . . . . . 137
6.2.2 Simulation of the first order system . . . . . . . . . . . . . . . . . 137
6.2.3 Modalform.............................. 139
6.2.4 Numericaltesting........................... 141
6.3 Addition of stiffness and damping . . . . . . . . . . . . . . . . . . . . . . 143
7 Case studies 147
7.1 Physical modelling of the guitar . . . . . . . . . . . . . . . . . . . . . . . 147
7.2 Physical modelling of the yaybahar . . . . . . . . . . . . . . . . . . . . . . 156
8 Conclusion and perspectives 165
8.1 Summary ................................... 165
8.2 Concludingremarks.............................. 167
References 169
List of figures
2.1
Mass–spring system, with a mass
m
and a spring of stiffness
K
. The
displacement u(t)is measured about an equilibrium distance (marked as 0). 23
2.2 An infinitesimal section of the ideal string. . . . . . . . . . . . . . . . . . . 31
2.3 Ideal string connected to a lumped mass-spring system at one boundary. . . 38
2.4
Graphical solution of the transcendental equation for an ideal string attached
to a mass-spring system. The characteristic equation is shown in blue, with
intersections on the horizontal axis (solid line) representing the eigenfre-
quencies, highlighted by dashed lines. The red dashed line corresponds to
the oscillator’s natural frequency, and the black lines mark the frequencies
of a fixed-fixed string. The string physical values are:
ρ= 5535
Kg/m
3
;
L= 0.69
m;
A= 6.5×107
m
2
;
T0= 147.7
N. The mass-spring values
are: m= 0.01 Kg; K= 8 ×106N/m. .................... 40
3.1
Illustration of stencils for various time difference operators approximating
the first and second time derivatives. . . . . . . . . . . . . . . . . . . . . . 50
3.2
Graphical representation of the backward, forward and centred time differ-
ence operators, interpreted as the secant lines between two points of the
continuous function u(t)............................ 52
3.3 Illustration of a staggered time grid. . . . . . . . . . . . . . . . . . . . . . 53
3.4
Energy error
H
for scheme
(3.14)
. The oscillator has a natural frequency
ω0= 500 rad/s and it was initialised with x0=v0= 1. ........... 55
3.5
Convergence rate analysis for scheme
(3.14)
initialised with condition
(3.31)
(blue) and
(3.32)
(orange). The log plot shows the global error, defined as
in
(3.26)
and computed at time
nk = 0.5
s, against the sampling rate. The
slope of the blue line is
1
: the error then decreases linearly with the time step
k
, suggesting that the scheme is first-order accurate with this initialization.
In contrast, the orange line has a slope of
2
: the error decreases quadratically
with k, confirming that this initialization is second-order accurate. . . . . . 58
xii List of figures
3.6
Eigenfrequencies of the coupled system compared to those of an isolated
simply supported stiff string, for two different values of
Ep
. The left value
corresponds to typical steel, while the right value is chosen arbitrarily low
for demonstration purposes. Other physical parameters in common between
the two cases are
Ls= 0.69
m;
Ts= 147.7
N;
ρsAs= 0.0063
Kg m
1
;
Es= 0.25
GPa;
Lp= 0.07
m;
ρpAp= 0.0251
Kg m
1
. The contact
point is
zs= 0.03
m. Top figures show frequencies in log scale, while the
bottom figures illustrate the frequency difference in cents for the same index.
Reproducedfrom[181]............................. 77
3.7
Normalised modes of the coupled string-bridge system displayed and plotted
orthogonally for visualization purposes. The mode index is indicated by the
letter
i
. The blue line represents the string, while the red line represents the
bridge. The contact point projection onto the
z
-axis is marked with a black
dot. The physical parameters are consistent with those listed in Figure 3.6,
using EpIp= 300 GPa. Reproduced from [181]. . . . . . . . . . . . . . . . 78
4.1
Analytic and numerically computed solutions of the Duffing oscillator with
parameters
ω0= 300
rad/s,
γ= 100
,
u0= 10
m, and
v0= 0
m/s. In the
numerical scheme,
ε=ϵm
, where
ϵm
denotes machine epsilon in double
precision. In the top panel, the solid line represents the exact solution, while
the dashed line shows the computed solution. The bottom panel illustrates
the evolution of the global error over time. . . . . . . . . . . . . . . . . . . 83
4.2 Transversal and longitudinal displacements in a nonlinear string. . . . . . . 84
4.3
(a) Waveform, energy error and spectrogram of system
(4.58)
with potential
K. The algorithm is run at OF
= 10
. (b) Convergence test for system K. The
target solution is obtained at OF
= 512
. The SAV scheme is run at OF
= 2a
,
with
a= [0,8]
integer. Two reference lines are included for comparison: a
dash-dotted line with a slope of
1
and a dashed line with a slope of
2
.
Physical parameters are:
ρ= 8 ×103
Kg/m
3
,
T0= 75
N,
A= 3.97 ×107
m
2
,
E= 174
GPa,
σ0= 0.92
,
σ1= 2.86×104
. The output point
xo=L/2
is located at the midpoint of the string. The system is initialised in its first
mode of vibration, with an amplitude of 1.5cm................ 96
4.4
(a) Waveform, energy error and spectrogram of system
(4.58)
with potential
T. The algorithm is run at OF
= 10
. (b) Convergence test for system T. The
target solution and the SAV scheme are run at the same OFs listed in Figure
4.3b. String parameters are as listed in Figure 4.3. The system is initialised
in its first mode of vibration, with an amplitude of 1cm. .......... 98
List of figures xiii
4.5
(a) Decay of
µt+ψn1/2
T
over time for System T. The string was initialised
with increasing amplitudes of
1
and
3
cm, and the scheme was run with OF
= 10
and
ε=ϵm
. The string physical values are as in Figure 4.3. (b) Decay
of µt+ψn1/2
Tover time for System T with the constrained gradient (4.72). . 100
4.6
Spectrograms resulting from the simulation of System T with external forcing,
using (a) the integrator from [
23
], (b) SAV with the analytic gradient
(4.65b)
(c) SAV with the constrained gradient
(4.72)
. The string physical parameters
match those in Figure 4.3. The force amplitude and duration are set to
famp = 5
N and
= 2
ms, respectively, with the input applied at
xi= 0.8L
.
The output point,
xo=L/2
, is located at the string midpoint. The schemes
are run with OF= 2,ε=ϵmand h= 1.05¯
h.................. 101
4.7
Behaviour of
µt+ψn1/2
T
(a) without and (b) with the constraint applied, under
external forcing. Simulation details match those described in Figure 4.6. . . 102
5.1
Schematic of system
(5.1)
with potential
(5.2)
. The red arrow indicates the
direction of the collision force dϕb
du...................... 108
5.2
Single collision event simulated using the scheme
(5.9)
, with gradients
(5.10)
,
(5.11)
,
(5.14)
and
(5.17)
, referred to as SAV0, SAV1, SAV2 and
SAV3, respectively. The sample rate is
fs= 44100
Hz. Physical parameters
are:
m= 0.01
Kg,
K= 0
rad/s,
Kb= 109
,
αb= 1.3
. The barrier is
positioned at
b= 0
and is represented by the black horizontal line. The mass
is initialised with u0= 0.01m and v0=2m/s, and it is used ε= 0. . . . . 112
5.3
Energy plots for the collision event shown in Figure 5.2 for (a) scheme
SAV0, (b) scheme SAV1, (c) scheme SAV2, and (d) scheme SAV3. The
top plots display the total energy
hn1/2
in blue (from
(5.8)
), kinetic energy
(δtun)2/2
in red, and nonlinear potential energy
ψn1/2
b2/2
in yellow.
Note that since
K= 0
, the linear potential energy is zero. The bottom plots
show the energy error, computed as H=hn1/2/h1/21. ........ 113
5.4
Multi-collision event simulated using the scheme
(5.9)
, with gradients
(5.11)
,
(5.14)
and
(5.17)
, referred to as SAV1, SAV2 and SAV3, respectively. The
stiffness is set to
K= 3.95 ×103
N/m (giving a linear eigenfrequency of
100
Hz). The mass is initialised with
u0= 1
m and
v0=2
m/s. Other
parameters match those in Figure 5.2. In (a), the barrier stiffness is
Kb= 106
,
and in (b),
Kb= 109
. The top plots show the solution, while the bottom
plots display (the negative of) the collision force, computed as
gn
bµt+ψn1/2
.
The sample rate is fs= 44100 Hz. ...................... 114
xiv List of figures
5.5
Convergence test for scheme SAV3. The target solution is generated by
running SAV2 with OF
= 512
. Scheme SAV3 is run with OF
= 2a
, with
a= [0,5] integer. The dashed line represents a slope of 2for comparison. 115
5.6
Snapshots of the hammer-string collision at the indicated times. The string
physical parameters are:
L= 0.68
m,
E= 2e11
GPa,
T0= 12.1
N,
A= 1.26 ×107
,
ρ= 8 ×103
Kg/m
3
,
σ= 0.92
,
σ1= 6.1×104
. The
hammer physical parameters are:
mH= 0.05
Kg,
KH= 1010
,
αH= 1.3
.
The hammer has an initial displacement of
0.1
mm and an initial velocity
of
0.1
m/s. The input point is located at
xH= 0.3L
. The sample rate is
fs= 44100 Hz. ................................ 120
5.7
Model of a string (in green) with a fretboard (in blue). External excitation is
showninyellow. ............................... 121
5.8
(a) Time domain solution and spectrogram, (b) evolution of the energy
components and energy error for the system
(5.41a)
without the constraint
(5.42)
applied. The system is initialised in its first mode of vibration, with an
amplitude of
4
mm. The string parameters are as specified in Figure 5.6, and
the barrier parameters are
KB= 1013,αB= 2.3
. The string rest position is
set to zero, with a flat barrier positioned at
b0=1
mm. The output point
xo=L/2
is located at the string midpoint. The sample rate is
fs= 44100
Hz. The value ε=ϵmis used throughout the test. . . . . . . . . . . . . . . 125
5.9
(a) Time domain solution and spectrogram, (b) evolution of the energy
components and energy error for the system
(5.41a)
with the constraint
(5.42) applied. Other details are as provided in Figure 5.8. . . . . . . . . . 126
5.10
Behaviour of the auxiliary variable
µt+ψn1/2
B
for the test reported in Figures
5.8 and 5.9: (a) without and (b) with the constraint (5.42) applied. . . . . . 127
5.11 Results of the test reported in Figure 5.9, with ϑ= 1 throughout. . . . . . . 128
List of figures xv
6.1
Various friction characteristics: (a) Coulomb dry friction, with equation
ϕC(η) = sgn(η)/2
; (b) the "classical" curve by Woodhouse and Smith [
192
],
with the form
ϕC(η) = sgn(η)(0.4e−|η|/0.01 + 0.45e−|η|/0.1+ 0.35)
; (c) the re-
constructed curve by Galluzzo [
98
], defined by
ϕC(η) = sgn(η)(0.4e−|η|/0.7+
0.35)
; (d) the continuous approximation defined in equation 6.2, with
a= 10
(dashed) and
a= 100
(solid). Here,
η(t)
is the relative velocity between
the bow and the mass in m/s, and the function
ϕC=ϕC(η) : RR
is
a dimensionless friction coefficient, expressed as a function of the relative
velocity only. Since
sgn(η) = 0
, curves (a), (b) and (c) are defined for
nonzero values of
η
only. The vertical portion of these curves shows the
range of possible values during the sticking phase [
98
]. Specifically, this can
be expressed as: min ϕCϕC(0) max ϕC. ................ 130
6.2
Comparison between the different bowed mass simulations, using the friction
function
(6.2)
. All cases used:
a= 100
,
f0=ω0/2π= 100
Hz,
vC= 0.2
m/s. "Ref." indicates the reference solution. Reproduced from [180]. . . . . 135
6.3
Ideal string simulation. Both cases used:
c= 150
m/s,
L= 0.7
m,
vB= 0.2
m/s,
a= 100
. The input and output positions were, respectively,
0.633L
and
0.33L. Reproduced from [180]. . . . . . . . . . . . . . . . . . . . . . . . . 142
6.4
Vibration regimes of the stiff string under two values of
FB
. Plots on the same
row are snapshots of the same waveform, taken in different time instants.
String parameters were the ones of a D3 cello string, taken from [
67
]. Bowing
parameters, input and output positions are as in Figure 6.3. Reproduced from
[180]. ..................................... 144
List of tables
6.1
Run-time/real-time ratio for the different schemes with two OFs, under
different values of
FB
The string parameters are the same as in Figure 6.3.
The average number of iterations per time step requested by Newton-Raphson
to converge is reported in brackets for the iterative schemes. Reproduced
from[180]. .................................. 143
6.2
Run-time/real-time ratio for the stiff string, tested with different OF values.
The base sampling frequency is fs= 44100 Hz. Reproduced from [180]. . . 145
Acronyms
1-D 1-dimensional. 2–4, 6–9, 11, 32
3-D 3-dimensional. 8
BVP boundary value problem. 33
CAD computer-aided design. 7
CFL Courant-Fredrichs-Lewy. 70, 106
DoF degree(s) of freedom. 29–31
DWG digital waveguide(s). 4, 5, 7, 9–11, 15
FD finite-difference. 49, 51–53, 56, 63, 69, 73, 165, 166
FDTD finite-difference time-domain. 4–7, 10–13, 15, 16, 49, 74, 167
FE forward euler. 61, 134
xviii Acronyms
FEM finite element method. 7, 10, 12, 13
FTM functional transformation method. 7, 10
GE geometrically exact. 8–12, 16, 17, 104, 166, 168
IEQ invariant energy quadratisation. 16, 22, 82, 86, 92, 104, 109
IVP initial value problem. 20, 22, 61
KC Kirchhoff-Carrier. 8–10, 16, 17, 166
LTE local truncation error. 56, 57, 59, 70, 71
MI Morse-Ingard. 9, 11, 12, 17, 86
ODE
ordinary differential equation. 5–7, 10, 17, 19, 20, 23, 29, 31, 36, 42, 44, 61, 129, 133,
165
OF oversampling factor. xvii, 97, 106, 116, 134, 141, 145
PDE partial differential equation. 2, 3, 6, 7, 19, 31, 41, 49, 83
PHS port-Hamiltonian systems. 10, 16, 25, 131, 138, 140
SAV
scalar auxiliary variable. 16, 22, 79, 82, 86, 90, 92, 99, 103–105, 109, 118, 119, 147,
166–168
SHO simple harmonic oscillator. 23, 32, 35, 36, 45, 53, 57, 71, 79, 80, 97, 107, 129, 131
Chapter 1
Introduction
This work fits into the context of the NEMUS project
1
, which is dedicated to the digital
reproduction of the sound of ancient stringed instruments. In particular, the major focus
of this thesis is the string, the basic sound production mechanism, or resonator, of these
instruments. Stringed instruments play a major role in music production in virtually every
culture and have been built for thousands of years. Therefore, countless types are available:
a comprehensive summary can be found in [
94
,
40
,
50
]. They are traditionally classified into
three main categories based on the primary method used to excite the string [
173
]: bowed
instruments, such as violins and cellos; plucked instruments, like the guitar and harpsichord;
and hammered instruments, including the piano.
Given the ubiquity of the string in music, it is unsurprising that, with the development
of sound synthesis in the mid-20
th
century, great effort was directed toward artificially
reproducing its sound. Particularly with the advent of digital sound synthesis, a great
variety of techniques were developed, which can be grouped into four categories [
191
]:
abstract synthesis, including FM and Karplus-Strong [
124
]; recording-based synthesis, such
as sampling and wavetable; spectral synthesis and physical modelling. Further details on
these approaches can be found in [
171
]. While sampling methods are undoubtedly the most
widespread nowadays, physical modelling has seen growing interest in recent years [
25
]. The
latter refers to a group of techniques that rely on the digital simulation of physical systems:
the core concept involves describing a specific musical instrument with a mathematical model,
resulting in a set of equations. Subsequently, suitable numerical algorithms are employed to
solve the models in real-time and produce sound. The appeal of these methods lies in the
extreme flexibility provided: the mathematical models describing the instruments depend on a
set of parameters linked to, for instance, the instrument’s geometry and materials. This allows
direct and (often) real-time control over the sound characteristics, something not available
1https://site.unibo.it/nemus-numerical-sound-restoration/en
2Introduction
in recording-based synthesis. Moreover, the absence of recorded material implies that no
large storage capacities are needed. The downside of physical modelling is the significant
computational power required for the simulations, which can sometimes hinder real-time
processing. This challenge becomes particularly pronounced when dealing with mathematical
models that exhibit nonlinear behaviour, which is necessary for accurate reproductions of
real-world instruments’ sound. In NEMUS, where the focus is on faithful reproductions
of musical instruments, nonlinear systems play a major role, and state-of-the-art numerical
methods are required to simulate these models efficiently.
The work presented in this thesis is concerned with the numerical simulation of nonlinear
string models, whose vibration captures salient perceptual features. Particular attention is
paid to the efficiency of the algorithms, aligning with recent advances in numerical analysis
that, in some cases, have enabled real-time simulation of strongly nonlinear systems. Newly
developed numerical methods are adapted here to address nonlinearities of different kinds,
and various case studies are presented.
The rest of this introductory chapter overviews the most relevant string mathematical
models and the numerical techniques employed to simulate them. It begins by introducing
linear models and the most common simulation techniques. Subsequently, nonlinear effects
are described, and a thorough list of significant simulation works is provided. This exam-
ination covers historical and contemporary approaches, illustrating the evolution of string
simulation techniques and their applications in musical acoustics. Finally, the objectives and
structure of the thesis are outlined.
1.1 Linear string
Early scientific investigations on the vibration of strings can be traced back to Pythagoras,
who first related the length of a string to the pitch of the emitted sound. He also examined
the sound produced by strings of different lengths under tension, discovering that pleasing
results were obtained when the relative lengths were in integer ratios. Several centuries later,
Galileo formulated the relation between the number of vibrations per unit time (frequency)
to the pitch [Chapter 1][
173
]. The first mathematical model of string vibration had to wait
until the mid-XVIII century, when D’Alembert, building on Taylor’s work [
99
, Chapter 2],
formulated the hyperbolic 1-D wave equation [
133
], representing the first ever example of
a partial differential equation (PDE) [
222
]. The wave equation remains important to this
day, beyond its historical relevance, as it serves as a crude model for string vibration and air
motion inside an enclosed tube. Moreover, it possesses a closed-form solution in the form
1.1 Linear string 3
of D’Alembert’s travelling waves, and it may be solved exactly via numerical methods [
24
,
Chapter 6].
The wave equation alone is of little utility in musical acoustics, as it omits physical
aspects which lead to important perceptual features. In particular, stiffness is responsible
for the inharmonicity of the partials in the emitted sound, which is perceived as a widening
of the octaves [
61
], and helps mitigate the beating effect when multiple notes are played
simultaneously [
101
]. Assorted mathematical models for stiff strings are available in the
literature, relying on different levels of approximation. From a physical standpoint, a stiff
string is a beam under tension in the longitudinal direction; thus, the governing equations
are typically derived from beam theories. The most accurate models of beams available are
based on geometric arguments [19, 119] and offer a complete 3D description of the motion.
In musical acoustics applications, approximate theories are sufficient, typically obtained by
treating the effects along the cross-section globally [Chapter 3][
104
]. This is also called thin
beam approximation and is considered valid for wavelengths greater than the beam thickness
[
169
]. Four different beam theories were developed under this hypothesis: Timoshenko,
shear, Rayleigh and Euler-Bernoulli [109].
The Timoshenko model is the most complete of the four, describing both transverse
and shear waves, and it comes in the form of two coupled PDEs, which can be combined
into one single fourth-order equation. The other three models can be derived from this
one by introducing various simplifications. Different tests were conducted to validate the
model [
62
,
169
,
197
], and they reported agreement with experimental results, indicating the
validity of the Timoshenko model as a reference. On the other hand, the Euler-Bernoulli
model is the simplest of the four and, for this reason, has seen the most applications in
musical acoustics. It typically appears in the form of a stiffness term incorporated into the
1-D wave equation, a model referred to as "Euler-Bernoulli stiff string". This beam model
suffers from unphysical behaviour of the phase and group velocities, which are unbounded
at high frequencies [
104
, Chapter 3], an issue the Timoshenko model solves. The shear
model is derived from Timoshenko by neglecting rotary inertia, an approximation that holds
for musical strings, which are always fixed at both ends. This simplification retains the
asymptotic limits for phase and group velocities while making the model less complex than
the original. The Rayleigh model extends the Euler-Bernoulli theory by including an extra
term describing rotatory inertia. The last two models have had limited application in musical
acoustics. A broad review of these four beam theories, with a particular focus on musical
acoustics applications, can be found in [
71
]. It is reported that the Euler-Bernoulli model
exhibits little deviations from Timoshenko in the audible frequency spectrum, thus justifying
the popularity of the Euler-Bernoulli stiff string in musical applications.
4Introduction
For realistic string simulations, loss cannot be neglected. In fact, the 1-D wave equation
is perfectly energy conserving, so a damping mechanism must be included. The crudest
model involves adding an extra term dependent on the string velocity, as per [
24
, Chapter
6]. This is referred to as "frequency-independent" damping term in the literature because it
leads to constant attenuation times across the entire frequency spectrum. This is not realistic
behaviour, as real strings exhibit complex decay profiles. As a first approximation, loss
increases with frequency. The earliest time-domain model capturing this effect, proposed
by Ruiz [
179
], relied on a third-order time derivative. However, Bensa later demonstrated
that this model is ill-posed and introduced a well-posed alternative incorporating a mixed
space-time derivative [
18
]. Experimental studies to measure the decay profiles of real strings
were conducted by Cuesta and Valette [
60
,
206
]. In these pioneering works, the authors
develop a theory explaining their results by considering three damping mechanisms: air
viscosity, viscoelasticity and thermoelasticity. The loss characteristics provided here link the
decay times to the frequency and can be easily included in models expressed in the frequency
domain. In [
67
], Desvages develops a time domain expression of the Cuesta and Valette
model.
1.1.1 Simulation techniques
Early studies on the numerical simulation of string vibration in the context of sound synthesis
were conducted in the late 1960s by Ruiz and Hiller [
179
,
111
,
112
], who employed finite-
difference time-domain (FDTD) methods for numerically solving the 1-D wave equation. A
few years later, Bacon and Bowsher [
10
] expanded the model by including excitation with a
hammer and a frequency-independent damping term. Boutillon used a similar technique [
35
]
to test an improved piano hammer model.
In later years, the use of FDTD methods faced a setback due to the introduction, in the
1980s, of digital waveguide(s) (DWG) by Julius O. Smith III at CCRMA, Stanford University
[
193
]. This method was initially developed as a generalisation of the non-physical Karplus-
Strong synthesis technique [
124
], and, in its simplest form, it discretises D’Alembert’s
travelling-wave solution through a pair of delay lines, requiring only bit-shifting operations to
update the state of the system [
195
]. Exploiting such unprecedented efficiency, DWG served
as the major building block of early synthesis techniques, allowing for real-time simulation
of strings, tubes and percussive instruments [
194
]. The extreme success of this technique
led to a patent filed by Smith and Yamaha, which formed the basis for the VL1 synthesizer.
Within this framework, the simulation of inharmonicity due to stiffness was achieved through
lumped all-pass filters [
86
]. Similarly, frequency-dependent damping effects were reproduced
with lumped filters placed at the end of the delay lines [
18
]. The Acoustics group at the
1.1 Linear string 5
Helsinki University of Technology made extensive use of DWG in the early 2000s, targeting
instruments such as the harpsichord [
221
] and the guitar [
131
]. A thorough collection of
works employing this technique is found in [220].
When applied to more complex systems, DWG methods have faced certain challenges,
such as modelling highly inharmonic systems such as bars [
17
]. Additionally, D’Alembert’s
solution applicability diminishes when distributed nonlinearities are included into the model,
and closed-form solutions are generally unavailable for most physical systems, including
systems of interest for this work.
The interest in FDTD methods rose again in the 1990s, mainly thanks to improvements
in the computational capabilities of computer processors. This technique has a long history,
tracing back to the pioneering work by Courant, Friedrichs and Lewy [
138
] (see [
201
] for
further historical details), and the literature on the topic is vast [
170
,
137
,
198
]. The principle
is relatively straightforward: it involves discretising the spatial domain with a finite grid, on
which the numerical solution is defined, and then approximating the partial derivatives in
space through suitable discrete finite difference operators. Doing this results in a system of
coupled ordinary differential equations (ODEs), which can be integrated in time through
time-stepping methods. In spite of a conceptually simple approach, many complications arise
in musical acoustics. In turn, the designer often faces the challenge of balancing stability,
accuracy, and efficiency. Additionally, for realistic sound synthesis, one needs to resolve a
wideband frequency spectrum, and the local discretisation process introduces a fair amount
of numerical dispersion, especially toward high frequencies.
FDTD methods were systematically introduced in acoustics by Chaigne and associates
at ENSTA [
47
49
]. Their work on the piano was extended by Bensa et al. [
18
,
17
] and
by Giordano through the addition of a soundboard model [
102
]. In the last years, the body
of work on this topic has been rapidly growing: since the textbook by Bilbao [
24
], FDTD
has become one of the standards techniques for physical modelling sound synthesis in
the academic environment (the industry has only recently begun to approach it timidly)
and several methods were explored [
44
]. The five years-long NESS project
2
represented
a flourishing laboratory for state-of-the-art research on the topic [
25
]. In her dissertation
[
67
], Desvages presents a two-polarisation vibration model of an Euler-Bernoulli stiff string.
Extensive work was conducted by Willemsen at the ME Lab, Aalborg University Copenhagen,
with a focus on real-time simulation [
223
]. There were also attempts to formalize a higher-
level framework for approaching this technique in the FAUST programming language [
182
,
199
]. Most of the listed works focus on the Euler-Bernoulli stiff string model, which is
2http://www.ness.music.ed.ac.uk/
6Introduction
prominent in acoustics. Timoshenko beam vibration was simulated with FDTD methods
mostly outside the musical acoustics field, with some examples being: [72, 183, 132, 123].
In parallel with Chaigne and the ENSTA team, IRCAM-based researchers laid the foun-
dations of modal synthesis [
2
,
1
,
151
,
87
]. This method exploits the Fourier representation
of signals, which describes the system’s solution as a superposition of an orthogonal set of
eigenfunctions, or "modes". In the modal synthesis strategy, the first step is to solve the
eigenvalue problem associated with the space variable to compute the mode shapes and
the related eigenvalues, the latter corresponding to the square of the system’s eigenfrequen-
cies. The model PDEs are then discretised in space by performing a projection onto the
set of modes, yielding a system of ODEs. This is then integrated in time with suitable
time-stepping methods, not dissimilar to those employed in a finite difference setting. This
synthesis technique presents several advantages. For linear models, the system of ODEs
that is obtained from modal decomposition corresponds to a bank of damped, uncoupled
oscillators. Aside from being extremely cheap to simulate, this may be integrated through an
exact time-stepping method [
24
, Chapter 3], presenting an advantage over locally defined
discretisation strategies, which suffer from numerical dispersion. Additionally, applying
refined frequency-dependent loss profiles, such as those by Cuesta and Valette [
206
], is direct
in the modal domain. The main drawback of modal synthesis lies in the computation of the
eigenfunctions, which for most systems is not straightforward: these are highly dependent on
the boundary conditions, and analytical solutions exist only in particular cases [
148
]. This
makes dealing with coupled systems particularly difficult; specifically, the implementation of
modular physical models such as those seen in [27] is not simple.
The modal expansions of the 1-D wave equation and the Euler-Bernoulli bar in musical
settings are detailed in [
24
, Chapter 6, 7] and [
67
]. A frequency domain simulation of the
linear string is utilised in [
144
] for simulating a Portuguese guitar, while [
145
] includes
inharmonicity into the model. For general modal synthesis frameworks, see [
37
,
209
,
232
].
Chabassier and Imperiale present the frequency domain representation of the Timoshenko
beam in: [
45
]. Outside the musical acoustics field, the main application of the modal
description of vibrating objects is in mechanical engineering. Assorted works on systems of
coupled beams are presented in [139, 65, 217, 114].
Applications are also found in industry: for instance, MODO BASS by IK Multimedia3
uses modal methods to simulate bass string vibrations, while Modus
4
from Physical Audio is
a synthesizer that employs modal strings and plates with nonlinear interconnections.
3https://www.ikmultimedia.com/products/modobass2
4https://physicalaudio.co.uk/products/modus/
1.2 Nonlinear string 7
A variation of this technique is the functional transformation method (FTM), developed
by Rabenstein and Trautmann [
205
]. Here, the modal expansion is performed through the
Laplace Transform to obtain point-to-point transfer functions.
The finite element method (FEM) [
108
, Chapters 5,6] sits somehow in between FDTD
and modal methods. It is commonly used in mechanical engineering because it easily handles
problems with complex geometries. Similarly to the previously described approaches (except
DWG), the goal is to discretise the spatial domain, to turn the model’s PDEs into a system of
ODEs in time, that can be integrated with time-stepping methods. Instead of using a grid, the
solution is approximated here by a set of basis functions with compact support (elements),
typically polynomials in the 1-D case. The system is discretised through a projection onto this
basis functions, similar to what happens in the modal expansion. Unlike in modal analysis,
where basis functions are defined over the entire domain, FEM basis functions are defined
onto a subset of the domain, making the projection local.
This technique presents the same issues affecting FDTD methods: namely, efficiency,
stability and numerical dispersion. Yet, the possibility of choosing arbitrary shape functions
allows for simpler treatment of irregular shapes compared to FDTD methods. The downside is
that the mathematical procedure for discretisation is particularly involved. Thus, the process is
often run automatically by software, leading to a loss of control over the algorithm’s efficiency.
Consequently, FEM simulations typically focus on determining the modal frequencies and
shapes of the instrument rather than on sound synthesis. This is especially true for simple
problems such as the linear string, which can be easily discretised with FDTD methods
without losing control over efficiency. For this reason, FEM simulations of linear strings are
quite rare in the literature, with some exceptions: [
11
,
196
,
66
], the latter including time-
domain simulation. Lately, FEM analysis has been used together with modal synthesis to
automatically determine modal parameters of computer-aided design (CAD) models. Some
examples include: [149, 37].
1.2 Nonlinear string
As the amplitude of vibration of a string increases, nonlinear effects become more significant,
resulting in perceptually salient phenomena such as tension modulation [
88
], phantom partials
[
58
,
12
] and whirling [
122
,
156
,
178
]. Tension modulation causes a downward pitch glide
due to increased tension from large amplitude motion, an effect not replicable by linear
systems where modes have fixed frequencies. Phantom partials are overtones appearing
at inharmonic frequencies, generated by the coupling between transverse and longitudinal
motion. Whirling is a three-dimensional effect resulting from the instability of nonlinear
8Introduction
string motion, giving rise to beating sounds. Nonlinearities describing these effects emerge as
a consequence of large strains and are thus geometric, meaning that the nonlinear behaviour
of the string material is not considered here.
First studies on the problem of nonlinear string vibration were conducted by Kirchhoff
[
127
]. Later, Carrier [
41
] extended Kirchhoff’s work by formalising an equation of undamped
motion commonly referred to as the Kirchhoff-Carrier (KC) string [
24
, Chapter 8]. This
model considers a single transverse polarisation and negligible longitudinal motion, meaning
that tension is assumed constant along the string length. The equation resembles the 1-D
wave equation, with the difference being an additional term where the tension depends on
the squared string slope, average over its length. Thus, the primary nonlinear phenomenon
reproduced by this model is tension modulation, giving rise to pitch glide. A more subtle
effect introduced is a mild spectral enrichment, deriving from the mode coupling provided
by the nonlinear term, particularly in the case of finite impedance boundaries. Further details
can be found in [136].
Thanks to its simplicity, the KC equation has been widely used for analysing nonlinear
phenomena, particularly in the case of forced vibration. Notable examples include the works
by Oplinger [
155
], Miles [
150
], and Johnson [
122
]. Dickey proposed techniques for finding
analytical solutions [
69
,
70
], while Murthy and Ramakrishna [
153
] extended the study to
double polarization, analysing non-planar motion and providing an analytical explanation for
the whirling behaviour observed in experiments. Anand [4] later included viscous damping
into the model. Investigations in a musical acoustics context include the works by Gough
[103] and Legge [136].
The studies above do not include stiffness effects. Woinowsky-Krieger [
226
] was the first
to extend the KC nonlinearity to the case of an Euler-Bernoulli bar, a model that continues
to be used in recent years [
106
,
55
]. See [
24
, Chapter 8] for a musical case including loss.
Outside the musical acoustics area, extensive work on a Timoshenko-Kirchhoff beam was
conducted by Arosio [7, 8].
In the late 1960s, Narasimha [
154
], Anand [
5
] and Morse [
152
, Chapter 14] independently
developed a derivation of the KC equation starting from an exact 3-dimensional (3-D) model
of string vibration, taking into account longitudinal motion. As a matter of fact, the KC
equation is obtained by neglecting the coupling between longitudinal and transverse motion.
Although this assumption is generally incorrect due to the inevitable energy transfer between
these motions [174], it can be disregarded in certain cases for simulation purposes [12].
The exact 3-D model of string vibration is commonly referred to as geometrically exact
(GE) [
46
] or Euler-Lagrange [
156
] in the literature and can be related to the geometrically
exact theory of beams [
19
,
119
]. It describes the motion of a perfectly flexible string,
1.2 Nonlinear string 9
including longitudinal motion and two polarisations for the transverse motion, thereby
accounting for variations in tension along the string length. In many practical cases, the
double transverse polarisation is restricted to planar vibration [
24
, Chapter 8], removing
the whirling effects altogether. The longitudinal modes contribute significantly to the string
sound [
13
]. Moreover, the motion coupling creates vibration modes at frequencies that
are not merely multiples of the fundamental, as in the KC case: these depend on the sum
and difference of the longitudinal and transverse base frequencies [
58
,
12
], resulting in the
so-called phantom partials appearing at inharmonic intervals. It should be noted that a recent
study [
172
] identified production of phantom partials in the structural components of the
piano. However, the relative contributions of harmonic distortion introduced by the string
and the structure have yet to be compared. The GE string model was the subject of many
works, such as [
156
,
178
]. Kurmyshev [
129
] and Leamy [
134
] extended the study to include
material nonlinearities. A classic mathematical derivation can be found in the book by Morse
and Ingard [
152
, Chapter 14]. As in the KC case, adding stiffness to the model is quite direct,
as shown in [78] for the Euler-Bernoulli and in [43] for the Timoshenko models.
Approximated forms of the GE string are commonly derived through a Taylor expansion
of the nonlinear potential, thus simplifying the model. The standard form by Morse and
Ingard [
152
, Chapter 14] truncates the Taylor series to the fourth order. In [
13
,
14
], Bank
employed third-order approximations while truncating at the second-order decouples the
motion, resulting in the 1-D wave equation for both longitudinal and transverse motions.
The first two approximations exhibit an unphysical issue: the associated Hamiltonian is not
positive definite and therefore unbounded [
23
]. Anand’s form [
5
] is correct up to the third
order. It is derived from the fourth-order approximation by truncating an additional term;
however, it ensures energy conservation. Detailed justification for this approach is provided
in [
23
], [
24
, Chapter 8]. Note that Chabassier [
42
,
46
] points out that this latter form does not
fulfil the hypothesis of weak degeneracy, as per [
200
], and is therefore theoretically unstable.
However, no instability has been observed in empirical studies, and numerous works are
based on this model, as discussed later in this chapter. The approximated forms of the GE
string will be referred to here using the generic term Morse-Ingard (MI) strings, while the
third order approximation as per Anand will be called simply "Anand’s" model.
1.2.1 Numerical simulations
Kirchhoff-Carrier
Unlike in the linear case, analytic solutions are unavailable for nonlinear string models.
Therefore, methods that rely on the discretization of solutions, such as DWG, cannot generally
10 Introduction
be extended to handle nonlinearities accurately, the only exception being the pitch-glide
effect. Between the 1990s and the 2000s, extensive research focused on simulating tension
modulation using DWG. In [
162
], Pierce and Van Duyne employed a delay line terminated
by a double nonlinear spring. Researchers from the Helsinki University of Technology
explored both lumped [
208
,
203
,
89
,
88
] and distributed [
159
,
160
] structures of all-pass
filters. Additionally, they developed a technique [
88
] to replicate the spectral enrichment
effect caused by finite impedance boundaries terminations in the KC string model, although
this approach is considered unphysical [160].
One of the earliest numerical simulations of the KC string was conducted by Gough
[
103
], though the specific numerical technique employed was not detailed. Pakarinen
[
160
] developed a FDTD-based solver to compare with DWG. However, since stability was
not his primary focus, the detailed algorithm is explicit and thus highly unstable. Bilbao
[
31
],[
24
, Chapter 8] systematically explored FDTD methods, placing significant importance
on stability. In fact, classic frequency-based techniques, such as Von Neumann analysis
[
198
], do not apply to nonlinear problems; instead, different methods can be used, which
typically rely on the conservation of a numerical quantity with the dimension of energy.
These are usually commonly called "the energy method" [
170
,
107
]. Recent works include
GPU-based simulations to achieve efficient computation [
29
]. More recently, a version of the
KC string terminating in an energy-storing boundary condition was proposed, solved using
an efficient, newly developed numerical method [82].
Though feasible, modal methods face certain limitations when treating nonlinear prob-
lems, and alternative techniques, such as Nonlinear Normal Modes [
126
], come into play. In
fact, the standard procedure in this case is to project the nonlinear equations onto the eigen-
functions of the corresponding linear problem [
83
]. This way, the resulting ODEs system is
usually densely coupled, and efficiency is thus greatly impaired. Nevertheless, due to the
spatial invariance of its nonlinearity, the KC string model is well-suited for modal simulations,
as showed by Bilbao [
22
], [
24
, Chapter 8]. Researchers from NOVA University in Lisbon
have extensively employed this modal formulation, for instance, in the context of guitar
modelling [
64
]. In recent years, the same authors carried out substantial research on modal
systems, comprising KC strings, using the Udwadia-Kalaba formulation [
6
,
63
,
121
,
92
].
The FTM has also been employed: [204].
FEM simulations of the KC string are relatively rare due to the simplicity of the nonlinear
term. Chabassier and Joly [
46
] described a method for discretising generic nonlinear Hamil-
tonian systems of wave equations that applies to the GE and its approximations. Recently,
Roze et al. presented a model in port-Hamiltonian form [
177
]. Further information on
port-Hamiltonian systems (PHS) can be found in [84, 210].
1.2 Nonlinear string 11
Other techniques have been employed: researchers from IRCAM-Sorbonne have made
significant investigations using Volterra series [
116
,
176
,
175
]; so-called energy estimation
methods have also been developed [
9
], and recent trends include the use of neural networks
[185].
Morse-Ingard
Taylor approximations of the GE string have found extensive applications in sound synthesis
due to their simplicity and lower computational cost compared to the full model. Bank
conducted significant research on this topic, focusing on piano simulation [
12
]. To enhance
computational efficiency, he often considered the coupling from transverse to longitudinal
motion only, ignoring the reverse. In this approach, the transverse motion is represented
by a linear stiff string, while the longitudinal motion is in the form of a 1-D wave equation
with a nonlinear forcing term deriving from the transverse waves. The paper [
13
] proposes
two algorithms: one models transverse vibration with DWG, and longitudinal vibration
with FDTD methods. The second one, more efficient, reproduces both directions of motion
and phantom partials using three DWG in parallel. In [
14
], a full FDTD integrator for the
third-order MI string is introduced, featuring bi-directional coupling and hammer excitation.
However, stability concerns due to the high wave speed of the longitudinal motion lead to a
very high sampling rate, making real-time computation impractical. To address this issue,
the longitudinal vibration is modelled as a bank of uncoupled modes excited by transverse
motion. The work presented in [
15
] is based on Anand’s form: the transverse and longitudinal
vibration are simulated with modal synthesis, neglecting bi-directional coupling. The same
technique is employed in [16] for developing a real-time piano synthesizer.
Extensive investigation on FDTD methods for MI strings was conducted by Bilbao,
focusing particularly on the stability of the numerical schemes through discrete energy
conservation. In [
23
], he introduces interleaved algorithms tailored to different approximation
levels of the MI string in a state-space (transmission line) form. The textbook [
24
, Chapter
8] presents various schemes for Anand’s model, each with distinct properties. Notably, a
solution to the issue of high longitudinal motion wave speed, previously identified by Bank,
is here introduced, employing separate grids for the longitudinal and transverse waves and
interpolation to couple them.
The latter model has served as the basis for many recent studies. For instance, it is used
in [
79
] by Ducceschi et al., incorporating a shear correction for stiffness, in the context
of collision simulations. In [
75
], it is applied to simulate a prepared piano, while [
135
]
proposes a GPU acceleration, although it does not appear to achieve significant performance
improvements.
12 Introduction
A solver based on FEM is proposed by Chabassier in [
46
], where a comparison is
conducted between the results obtained with the GE and Anand’s models.
Geometrically exact
The most comprehensive body of work on the GE string in the context of musical acoustics is
attributed to Chabassier [42], who systematically studied it for piano simulation, modelling
a full system including the hammer, the string, the soundboard and sound radiation. The
string employed by Chabassier includes a GE nonlinear potential, with a stiffness term as per
Timoshenko and double vibration polarisation. Damping is modelled using the frequency-
dependent formulation from [
18
], with coefficients obtained through fitting measurements
[
43
]. The equations are discretised in space with FEM. In [
46
], a new class of pseudo-
energy-conserving time-stepping schemes is developed, applicable to a category of problems
termed "nonlinear Hamiltonian systems of wave equations," which includes the GE and MI
string models. The time integrators are fully implicit and solved using Newton’s method.
Given the complexity, the focus is not on efficient computation; thus, to address the issue of
different wave speeds for longitudinal and transverse motion, the former is modelled with
a parametrized theta-scheme, allowing for relaxing the stability condition by making the
linear part implicit as well. More recently, Marazzato et al. proposed an explicit solver for a
FEM-discretised GE model [143].
Extensive work on this topic has been conducted by Bilbao and Ducceschi, with a focus
on efficient computation. In [
73
], the system is integrated in time with a recently developed,
linearly implicit, energy-conserving time-stepping method. In [
78
], the GE string in single
polarization is discretised by making use of FDTD methods for the transverse part and modal
methods for the longitudinal part. This is to avoid sampling rate issues due to the different
wave speeds. In [
26
], both motion directions are discretised with FDTD methods, and
time integration is performed with a state-of-the-art, explicit numerical scheme, achieving
real-time computation. The same model is combined with nonlinear hammer excitation in
[
77
]. However, despite the computational efficiency achieved by these new numerical solvers,
some issues remain, as will be discussed later.
1.3 Other nonlinearities
The nonlinear effects discussed thus far are intrinsic to the models and influence the string
vibration in isolation. However, additional nonlinearities arise in musical acoustics due to the
interaction between the string and other components. Notably, collision and friction forces
play significant roles.
1.3 Other nonlinearities 13
1.3.1 Collisions
Collision modelling is a significant area within mechanics, with numerical simulations
applied across various disciplines [
228
]. In musical acoustics, collisions are vital in sound
production of many instruments. In stringed instruments, examples include hammer strikes
in pianos [
35
,
48
,
49
,
34
,
14
,
15
,
43
] and clavichords [
202
]; interactions between strings
and fingers [
68
]; string-fretboard contacts [
33
,
90
,
91
,
117
,
118
]; string-slide contacts [
20
];
string-string contacts [
158
]; and string-bridge contacts in Indian instruments [
207
,
213
,
36
,
142, 211, 190, 219].
Some of the earliest studies in musical acoustics are attributed to Raman in the 1920s,
who investigated hammer excitation [
167
] and the collision of strings against obstacles, a
problem particularly relevant to Indian string instruments [
166
]. Other notable historical
works include studies by Barghava [
21
] and Ghosh [
100
] on piano hammers, as well as
research by Amerio [3] and Burridge [39] on string collisions against rigid obstacles.
The main challenge in collision modelling is detecting interactions between objects
based on their geometry and calculating the resulting forces. Objects can be modelled as
lumped, such as piano hammers, or as fully distributed in space, such as the string-fretboard
interaction. Two primary mathematical models are generally employed. The first describes
rigid contacts and has been widely used to describe string collisions with obstacles using
various techniques; examples are: [
39
,
168
,
128
,
125
,
219
,
190
,
117
,
63
,
121
]. The second
model, known as the penalty method, allows for interpenetration between objects [
34
]. This
approach involves a one-sided power law [
113
] and is modelled through a suitable potential
function [
161
], based on Hertz’s contact formulation [
110
], which can be extended to include
collision-induced losses [115].
The penalty method has recently become increasingly popular in sound synthesis, with
different numerical simulation techniques being employed. Researchers have concentrated on
creating stable time-stepping schemes, frequently using energy-based approaches. Important
contributors in this area include van Walstijn, Chatziioannou, and Bilbao. Notable studies
have used FDTD methods [
52
,
32
,
53
,
34
,
33
,
79
,
54
,
51
], modal methods [
211
213
], and
FEM [
43
,
42
]. While these works primarily used fully implicit discretization, recent trends
have shifted towards linearly implicit or fully explicit methods [
74
,
75
,
27
,
81
,
77
,
175
,
214
216
], aiming to improve computational efficiency, making real-time applications more
feasible.
14 Introduction
1.3.2 Friction: the bow
Friction in stringed instruments is predominantly associated with the bowing mechanism, a
central topic in musical acoustics for decades. Initial insights into bowed string motion were
made by Helmholtz in the 19th century [
218
], who observed the "stick-slip" phenomenon
first identified by Duhamel [Chapter 10][
94
], a behaviour now known as Helmholtz motion.
This motion occurs when the string alternately sticks to the bow (sticking phase) and then
slips across it (slipping phase) once per period, producing musically pleasing tones. In the
early 20th century, Raman developed a mathematical theory for bow-string dynamics, where
the friction force at a single contact point depends on the relative velocity between the bow
and the string [
165
]. Schelleng later expanded on Raman’s work, developing "Schelleng
diagrams," which depict regions in the bow force-bow position plane where musical tones
are produced [
184
]. Similarly, Guettler’s diagrams consider bow acceleration instead of bow
position [105].
It is common to consider point-wise excitation [
81
], though finite-width effects can
influence the string torsional motion [
164
]. The force is typically described by a characteristic
friction curve (a dimensionless quantity) as a function of the relative velocity between the
string and the bow. The simplest model is Coulomb dry friction, whose force magnitude is
independent of relative velocity. A more sophisticated model was developed by Smith and
Woodhouse through experimental studies of a mass on a rosin-coated conveyor belt [
192
].
Here, the friction force decreases with increasing relative velocity until it reaches a steady
value. This is sometimes called the "classical" friction curve [
98
], as it has been referenced
in earlier works by Friedlander [
97
], McIntyre and Woodhouse [
146
], and others. Galluzzo
proposed a modified version of Smith and Woodhouse’s characteristic friction curve, known
as the "reconstructed" friction curve, based on measurements of the force drop at the bridge
during the slip phase [
98
]. These friction characteristics often exhibit a discontinuity at zero
velocity, posing challenges during simulation. To address this, Bilbao has proposed a family
of smoother "soft" friction characteristics [
24
, Chapter 4], designed not on physical principles
but solely for simulation convenience.
The friction characteristic model effectively replicates various bowing phenomena, such
as Helmholtz motion, raucous motion, multi-stick-slip motion, and anomalous low-frequency
waves [
67
]. However, experimental studies have demonstrated that the mechanical prop-
erties of rosin vary with temperature [
192
]. To account for this, Woodhouse proposed a
friction curve that includes thermal exchanges, which allows the capture of the hysteretic
behaviour observed experimentally [
227
]. Despite these improvements, there are still some
discrepancies when this curve is compared to actual measurements [
98
]. Another class of
models has been developed to address the hysteretic nature of friction curves, incorporating
1.4 Thesis motivation & objectives 15
the bristle-string interaction effects. These include the Dahl model, the LuGre model, and an
elasto-plastic model [85]. For a thorough review, see[186].
Early real-time simulations of the bowed string used DWG [
194
]. Later, Serafin imple-
mented an elasto-plastic model [
187
], and more recent applications include a finite-width bow
with hair dynamics and thermal friction [
141
]. Time-domain methods were also employed in
the early studies [
147
,
163
]. Recently, Desvages [
68
,
67
] utilized FDTD methods to simulate
a model incorporating two vibration polarizations, Smith and Woodhouse’s “classical” fric-
tion curve, and the interaction of the player’s finger within an energy-consistent framework.
However, this simulation did not achieve real-time performance. The first real-time FDTD
implementations of the bowed string, based on fully-implicit schemes, were developed by
Willemsen [
224
,
225
,
223
], whose research included the integration of elasto-plastic friction
models.
1.4 Thesis motivation & objectives
As previously mentioned, traditional frequency-domain techniques cannot be used to ensure
stability when nonlinear terms are involved, and much of the recent literature relies upon
energy methods to this end. These methods often result in fully implicit schemes, which
require solving nonlinear algebraic equations at every time step. Iterative solvers, such as
Newton’s method, are typically employed for this purpose. However, several issues arise,
especially in real-time simulations: the iterative process is computationally intensive and
inherently serial, often requiring multiple iterations per time step; the number of iterations
depends on system parameters, necessitating an arbitrary cap to control computational load
[
51
], and the existence and uniqueness of the numerical solution are not always guaranteed
[95].
Recent advancements in numerical analysis have enabled the simulation of certain
nonlinear systems using linearly implicit or explicit schemes. Linearly implicit schemes are
formulated as linear systems that must be solved at each time step, while explicit schemes
avoid linear systems solving completely and can be integrated through a recursion relation.
In a recent study, Marazzato et al. [
143
] introduced an explicit Hamiltonian integrator
that preserves numerical energy exactly for polynomial potentials. For general nonlinear
potentials, quadrature methods are used instead of exact integration, leading to an approxi-
mate conservation of pseudo-energy. Furthermore, when the energy of the model system is
non-negative, conditions for numerical stability do not immediately follow.
When the nonlinear potential energy is bounded from below, it can always be expressed
as the square of a function. Building on this concept, three methods were recently proposed
16 Introduction
based on energy quadratisation. The first, proposed by Lopes, Hélie and Falaize [
140
],
within the context of PHSs is obtained when one of the state variables is substituted by
a quadratised one in the expression for the energy. Thus, the number of variables to be
solved for remains unchanged. Though compact, this form does not apply to non-invertible
potentials, and multivariate potentials are also not easily treated in this framework. In
spite of this, the technique has been successfully applied to audio circuit modelling [
93
]
and the KC string [
175
]. Two other frameworks have been developed in the context of
gradient flows for diffusive systems. The invariant energy quadratisation (IEQ) method
[
229
,
230
,
233
] performs a quadratisation that results in one added state variable compared
to the original system. While this extra state variable must be solved for, the framework can
handle non-invertible potentials and straightforwardly address multivariate cases. Finally, the
scalar auxiliary variable (SAV) method was introduced [
188
], where the nonlinear energy is
treated as one single scalar rather than a distributed potential density. This approach allows
for fully explicit solvers when specific matrix structures [
189
] are exploited [
26
,
77
,
28
].
The IEQ method has been applied to collisions problems, both lumped and distributed
[
74
,
75
,
27
,
81
,
215
], as well as to the GE string model [
73
,
78
]. Similarly, SAV has been
used in the context of collisions [77, 214, 216, 30], and geometric nonlinarities [26, 77].
In the case of non-conservative forces, such as friction and damping, there is no nonlinear
potential to quadratise, rendering the previously discussed methods inapplicable. However, a
different approach was recently introduced within the context of virtual-analogue models
[
80
,
76
], allowing for a linearly-implicit solving procedure for systems including nonlinear
forces depending on the first derivative of the state variable.
Despite the advancements introduced by these new approaches, several critical issues
remain unsolved. Both IEQ and SAV have exhibited unphysical behaviour in certain context,
notably in collision modelling [
74
]. While a solution was proposed within this area [
216
]
after the beginning of this research, a comprehensive investigation of the performance of these
methods in nonlinear string modelling is still lacking. Furthermore, the stability properties
of the non-iterative method designed to address non-conservative forces have not been fully
explored or understood [
76
]. The primary objective of this thesis is to advance the use of
FDTD and modal methods to effectively address nonlinearities in string vibration. The
newly developed techniques will be tested with a focus on utilizing the structured update
matrices they produce to develop highly efficient algorithms. Furthermore, contrary to
classic numerical integrators, quadratisation-based methods provide a versatile discretization
approach, allowing the same numerical procedure to be applied across different nonlinear
systems. Therefore, part of this work is dedicated to developing a general framework for
nonlinear sound synthesis. Additional emphasis will be placed upon incorporating refined,
1.5 Thesis outline 17
finite-impedance boundary conditions into the string models to simulate the interaction
between the string and other components of the instrument, such as the bridge.
As previously mentioned, the energy method has become a standard in physical modelling
over the past few decades. Ensuring numerical stability a priori is especially crucial for
real-time models, as it guarantees that the virtual instrument will not "blow up" during
operation. Moreover, monitoring numerical energy can serve as an effective debugging tool
to detect sources of error. However, in the case of nonlinear systems, stability is insufficient
to guarantee that the solution will converge to the exact one: convergence is the property
guaranteeing that, as the sample rate increases, the numerical solution approaches the exact
analytical one. In linear systems, stability and convergence of the numerical scheme are
linked through the Lax-Richtmyer theorem [
198
, Chapter 10]. However, this does not hold
for nonlinear systems, meaning a stable scheme may still produce incorrect results. Therefore,
this study will particularly focus on testing the convergence of these numerical algorithms.
1.5 Thesis outline
This work is organised into eight chapters. The main research contributions are presented in
Chapters 4, 5, 6, 7, and are summarised in the conclusions. A companion GitHub repository
with code and audiovisual examples is available online5.
Chapter 2 introduces linear equations, starting with a discussion on generic ODEs and the
concept of potential quadratisation. It then presents the linear oscillator equations, followed
by coupled mass-spring systems. The discussion extends to the distributed case, covering
the ideal string and incorporating bending stiffness, loss, and forcing. The modal expansion
is then developed for both string models, including a lumped finite-impedance boundary.
Finally, a model of a stiff string with a spatially distributed boundary is presented.
Chapter 3 describes numerical techniques, starting with time-domain methods applied to
the linear oscillator and introducing the concepts of accuracy, consistency, and convergence.
Next, the finite difference method for spatial discretisation is presented and applied to both
ideal and stiff strings. Finally, finite difference schemes for both models are introduced, and
the numerical eigenfrequencies and eigenvectors for the stiff string with a spatially distributed
boundary, as presented in Chapter 2, are derived.
Chapter 4 discusses geometric nonlinearities. It begins with the lumped case study of the
Duffing oscillator and then extends to the GE string. From this, MI string models are derived,
concluding with the KC string model, which is also presented in the modal domain and with
double vibration polarisation. Quadratised numerical methods are introduced here in the case
5https://github.com/Rickr922/phdThesis-companion
18 Introduction
of lumped and spatially distributed systems. These are then applied to systems of interest,
with illustrative results. Additionally, a technique for limiting an unphysical behaviour of
these quadratised methods, based on a physical constraint, is introduced.
Chapter 5 address collision problems. The mass-barrier collision is first examined, and
various quadratisation-based methods are compared. The constraint technique introduced
in Chapter 4 is adapted for collision scenarios. Subsequently, lumped and distributed
collisions in strings are explored, focusing on finger/hammer-string and string-fretboard/frets
interactions, which are solved using quadratised numerical methods. Additionally, the
constraint technique is extended to handle distributed collisions.
Chapter 6 examines nonlinear friction induced by a bow. It begins with a case study
of a bowed mass-spring system, introducing a numerical method that enables solving non-
conservative nonlinear problems without iterative techniques. The discussion then extends
to the ideal string. For both lumped and distributed cases, comparisons are made between
traditional iterative methods and the newly introduced approach.
Chapter 7 illustrates the application of the models presented in previous chapters to the
physical modelling of musical instruments. This chapter corresponds to two papers presented
at the International Conference on Digital Audio Effects (DAFx): [
30
] and [
181
]. Finally,
Chapter 8 concludes the dissertation.
Chapter 2
Linear vibration
The physical models presented in this work are formulated using (systems of) differential
equations, which describe the relationships between one or more unknown functions and
their derivatives, defined over specific space-time regions with given boundary conditions.
Specifically, ordinary differential equations (ODEs) involve functions of a single variable, and
since this work is centred on vibrations, they are assumed to be dependent on time. Partial
differential equations (PDEs) involve functions of multiple independent variables: here,
they describe systems distributed in space and their evolution over time. This chapter first
introduces generic ODEs and the concept of potential energy quadratisation: a fundamental
aspect of so-called quadratised methods. The discussion then narrows to linear models,
which are valid for small-amplitude vibrations. It begins by describing lumped systems
and ODEs, including single oscillators and systems of coupled oscillators. These systems
serve as fundamental building blocks in musical acoustics. In fact, distributed oscillating
systems can be approximated as coupled or uncoupled oscillators after spatial discretization,
an essential concept in modal methods. Following the discussion on lumped systems, the
chapter continues to distributed systems, introducing linear string models. Part of the content
is based on the textbooks by Bilbao [24] and Meirovitch [148].
2.1 Time-dependent ODEs
Consider a function
u(t) : R+
0R
, representing the displacement of a lumped object of
mass
m
at time
t
. Here
u
is assumed to be sufficiently smooth, meaning it is differentiable
multiple times, with all derivatives being well-defined and bounded over the positive time
axis
tR+
0
. Furthermore, the mass
m
is treated as constant throughout this text. The object
20 Linear vibration
is subject to a force given by:
F=dV
du,(2.1)
where
V = V(u) : RR+
0
is a generic, differentiable potential function, assumed to be
non-negative, a natural choice in most musical acoustic applications. This may be further
generalised by considering the potential to be bounded from below; however, non-negativity
will be adopted here for simplicity. According to Newton’s second law, the equation of
motion can be expressed as:
md2u
dt2=dV
du.(2.2)
This equation is an example of an autonomous ODE, meaning there is no explicit dependence
on the independent variable
t
. Thus, the equation is time-invariant. To solve this problem
means finding a function
u
that satisfies the differential equation. Because this is a second
order ODE in time, a unique solution can only be found by specifying two initial conditions:
the initial displacement and velocity. This forms an initial value problem (IVP):
u(0) = u0,du
dt0
=v0.(2.3)
Note that, to ensure the uniqueness of the solution, the ODE must satisfy appropriate
Lipschitz continuity conditions, which are assumed to hold here (see [
137
, Chapter 5] for
more information). Before proceeding, it is helpful to list some useful derivative identities
that will be employed throughout this text:
du
dt
d2u
dt2=d
dt
1
2 du
dt!2
,(2.4a)
du
dtu=d
dt1
2u2,(2.4b)
du
dtu3=d
dt1
4u4.(2.4c)
2.1.1 Energy analysis
As anticipated, this text will heavily rely on energy arguments to verify the stability of
physical systems. To illustrate this approach, it is beneficial to demonstrate the process
referred to here as energy analysis. The procedure begins by multiplying the equation of
motion (2.2) by the velocity du
dt, obtaining:
mdu
dt
d2u
dt2+du
dt
dV
du= 0.(2.5)
2.1 Time-dependent ODEs 21
Applying the identity
(2.4a)
to the left-hand side and using the chain rule
dV
dt=dV
du
du
dt
on the
right-hand yields:
d
dt
m
2 du
dt!2
+ V
= 0.(2.6)
The expression within the derivative represents the system energy or Hamiltonian and can be
interpreted as a sum of kinetic and potential energies:
H=m
2 du
dt!2
+ V.(2.7)
An equation of the type
(2.6)
is called here energy balance because it describes the variation
of the system energy over time. In this case, the energy is conserved, and the value is
determined by the initial conditions:
H0=mv2
0
2+ V, H(t) = H0t. (2.8)
Energy conservation is a fundamental principle in physics, and it must be verified for any
system of equations describing physical systems. A system in which energy is conserved
is referred to as conservative. If a loss mechanism is included, energy should decrease
over time, and in this case, the system is described as dissipative. Throughout this text,
both conservative and dissipative systems will be collectively referred to as passive systems,
meaning that no spontaneous energy production takes place in the system.
Energy conservation alone is not sufficient to ensure the stability of the system at hand. In
fact, the non-negativity of the energy is crucial, as it leads to the boundedness of the solutions.
The kinetic energy is inherently positive, and the potential was assumed to be non-negative.
Then the following inequalities hold:
0m
2 du
dt!2
H0,0VH0.(2.9)
Examining the kinetic term, one has:
m
2 du
dt!2
H0
du
dts2H0
mt, (2.10)
which shows that the velocity is always bounded in terms of the initial energy. If
V
is radially
unbounded, meaning
V+
iif
|u| +
, a bound on
|u|
may be derived as well, and
the system is said to be stable, meaning that the solution will not experience infinite growth.
22 Linear vibration
2.1.2 Potential energy quadratisation
If the potential Vis non-negative, an auxiliary variable may be defined [28] as:
ψ2V,(2.11)
and the equation of motion (2.2) becomes:
md2u
dt2=ψdψ
du.(2.12)
Furthermore, applying the chain rule yields:
dψ
dt=dψ
du
du
dt.(2.13)
Then, one may define:
gdψ
du=1
2V
dV
du,(2.14)
and equation (2.2) can be re-written as a system of two equations as:
md2u
dt2=ψg;dψ
dt=gdu
dt.(2.15)
Formulating an IVP now requires an additional initial condition for the auxiliary variable,
ψ(0) ψ0
. The concept of potential quadratisation is fundamental to the IEQ and SAV
methods. Indeed, if
g
is known at any time instant, equations
(2.15)
are linear in
u
and
ψ
,
regardless of the form of
g
. As will be shown later, this system can be efficiently integrated
using numerical methods.
2.1.3 Potential splitting
In many cases in musical acoustics, the expression for the potential energy can be written in
the form of a quadratic potential plus a nonlinear contribution:
V(u) = Ku2
2+ϕ(u),(2.16)
with KR+and ϕ(u)0. One can then quadratise only the nonlinear part by defining:
ψq2ϕ, (2.17)
2.2 Simple harmonic oscillator 23
mK
u(t)
0
Fig. 2.1 Mass–spring system, with a mass
m
and a spring of stiffness
K
. The displacement
u(t)is measured about an equilibrium distance (marked as 0).
which is well-defined thanks to the non-negativity of
ϕ
. This results in the system of
equations:
md2u
dt2=Ku ψg, dψ
dt=gdu
dt, g =1
2ϕ
dϕ
du.(2.18)
As will be shown subsequently, this approach allows the linear and nonlinear parts to be
treated with different numerical methods, thereby offering greater flexibility in numerical
method design. In this chapter and the following one, the nonlinear part is assumed to be
zero, as the focus is on linear systems.
2.2 Simple harmonic oscillator
Equation
(2.18)
, in absence of the nonlinear potential
g
, is found in many physical systems;
one example is the mass-spring system is illustrated in Figure 2.1. Here,
u(t)
represents the
displacement of the mass
m
from the equilibrium point in m, and
K
is the spring’s constant,
measured in N/m. Dividing the equation by the mass
m
(assumed constant) yields a general
model for undamped harmonic motion:
d2u
dt2=ω2
0u. (2.19)
This is an equation of a simple harmonic oscillator (SHO). Here,
ω0
is the natural frequency,
or angular frequency of the oscillator in radians per second, related to the frequency
f0
in
Hertz by
ω0= 2πf0
. It is well known that this particular ODE admits an analytic solution in
various forms. When initial conditions
u0
and
v0
are specified, all yield the same result. The
analytic solution, denoted here with ¯u, can be expressed as:
¯u(t) = Acos(ω0t) + Bsin(ω0t), A0=u0, B0=v0
ω0
.(2.20)
24 Linear vibration
Alternatively, a phase-shifted form is:
¯u(t) = C0cos(ω0t+θ0), C0=qA0+B0,V0= tan1B0
A0.(2.21)
Another useful expression for the solution is in complex form:
¯u(t) = ˆu+e0t+ ˆue0t,(2.22)
with ˆu+,ˆuC. Then, following Euler’s formula:
¯u(t) = ˆu+[cos(ω0t) + jsin(ω0t)] + ˆu[cos(ω0t)jsin(ω0t)]
= u++ ˆu) cos(ω0t) + j(ˆu+ˆu) sin(ω0t).(2.23)
By remembering the initial conditions
u(0) = u0
and
v0=du(0)
dt
and inserting them into
(2.22) one gets:
u0= ˆu++ ˆu, v0=0ˆu++0ˆu.(2.24)
Thus, the constants
ˆu+
and
ˆu
are complex conjugates. Substituting these expressions into
equation (2.23) yields (2.20).
The energy analysis is again conducted by multiplying equation
(2.19)
by the velocity
du
dt
.
Then, by means of the identities (2.4) one gets:
d
dt
1
2 du
dt!2
+ω2
0u2
2
= 0 (2.25)
The expression within the parentheses does not yet have the dimension of energy. To get the
total energy of the system, multiply by the mass m, obtaining:
d
dtH= 0, H =m
2 du
dt!2
+Ku2
2.(2.26)
Note that this step ensures the correct dimensionality of energy but is unnecessary for stability
analysis, as the mass is a positive constant. The balance
(2.26)
leads to energy conservation.
The system’s velocity is bounded by the kinetic energy, following
(2.10)
. Additionally, a
bound on the solution size derives from the quadratic form of the potential:
|u(t)| s2H0
Kt. (2.27)
2.2 Simple harmonic oscillator 25
2.2.1 First-order form
It is useful to express the oscillator in first-order form. To this end, a change of variables is
necessary. For oscillators with constant mass and stiffness, the generalised coordinates
q
and
ptake the form:
qω0u, p du
dt.(2.28)
Here,
p
represents the momentum normalised by mass, with the dimensions of velocity. Now,
one may substitute the expressions for
p
and
q
into the quantity between parenthesis in
(2.25)
,
obtaining:
H(q, p) = p2
2+q2
2,(2.29)
which, as (2.25), has the dimension of energy divided by mass. Equation (2.19) becomes:
dx
dt=JxH. (2.30)
The system state xand the matrix Jare expressed as:
x=
q
p
,J=
0ω0
ω00
,(2.31)
and the gradient with respect to the state has the form x=
q
p
. Thus:
xH=x.(2.32)
Note that, when defining the gradient, the notation for partial derivatives used throughout the
text was introduced: the
n
-th order partial derivative with respect to the variable
α
is here
denoted as n
α.
An energy balance can be obtained by left-multiplying
(2.30)
by
xH
. Since
J
is skew-
symmetric, and owing to the chain rule
d
dtH= (xH)dx
dt
, one obtains again a conservative
balance: d
dtH= 0.(2.33)
The particular choice of variables allows the matrix
J
to be written in skew-symmetric form,
which is a typical structure of port-Hamiltonian systems (PHSs) [
210
,
84
]. Equations
(2.19)
and (2.30) are entirely equivalent in the continuous domain.
26 Linear vibration
2.2.2 Loss
Real physical systems are never perfectly conservative, and different damping mechanisms
come into play. A common form is viscous damping, where the force is proportional to
the system’s velocity. This model is typically used to describe frictional forces such as air
resistance. It can be introduced into the oscillator’s equation (2.19) as follows:
d2u
dt2=ω2
0u2σ0
du
dt.(2.34)
Here,
σ00
is a constant measured in s
1
, known as the damping coefficient of the system,
regulating the decay time. Solutions to this equation can be found using an ansatz, or a test
solution of the form: u= ˆuest, with ˆu, s C. Substituting this into (2.34) yields
(s2+ 2σ0s+ω2
0u= 0,(2.35)
implying the characteristic equation:
s2+ 2σ0s+ω2
0= 0.(2.36)
Solving for s, the roots are found to be:
s±=σ0±qσ2
0ω2
0.(2.37)
The nature of the roots
s±
determines the oscillator’s behaviour: If damping is small (
σ0<
ω0), the system is underdamped. In this case, the roots are complex:
s±=σ0±jqω2
0σ2
0,(2.38)
and the general solution (2.22) may be written as:
¯u(t) = ˆu+es+t+ ˆuest=eσ0tˆu+ejω2
0σ2
0t+ ˆuejω2
0σ2
0t.(2.39)
By defining the damped natural frequency ωdqω2
0σ2
0, the solution becomes:
¯u(t) = eσ0tˆu+edt+ ˆuej ωdt.(2.40)
This form is similar to the undamped form
(2.22)
, with notable differences: the solution is
now modulated by an exponential decay factor
eσ0t
and oscillates at a frequency
ωd
which
2.2 Simple harmonic oscillator 27
is lower than the natural frequency
ω0
. When the initial conditions are substituted, following
a procedure similar to that seen for the undamped case, the solution takes the real form:
¯u(t) = eσ0tu0cos(ωdt) + v0+σ0u0
ωd
sin(ωdt),(2.41)
which generalises (2.21) to the damped case.
When
σ0ω0
, the roots become real numbers. The system is critically damped when
σ0=ω0
, and overdamped when
σ0> ω0
. In both cases, the roots remain negative, and the
solution is strictly decaying, preventing any oscillatory motion; therefore, these scenarios are
not considered within the scope of this work.
Because damping is an important perceptual feature in acoustics, it is crucial to set the
decay times of physical models accurately. To this end, it is useful to relate the constant
σ0
to a more practical quantity, such as the decay time
T60
, which is defined as the time taken by
the oscillator to reduce its amplitude of vibration by
60
dB. Using the definition of dB, one
has:
20 log e2σ0T60 = 60.(2.42)
Then, changing the logarithm base: 20 ln e2σ0T60 = 60 ln 10, yielding:
T60 =3 ln 10
σ0
.(2.43)
The energy analysis for system
(2.34)
is a straightforward extension of the procedure
seen for system (2.19). By multiplying both sides of the equation by mdu
dt, one has:
d
dtH=20 du
dt!2
Q(t)0.(2.44)
Here,
Q0
is the power dissipated by the oscillator, and
H
has the same form of the energy
(2.26)
. Thus, the energy is a positive definite and monotonically decreasing function of time,
and the system is now dissipative. Because the energy is still positive definite, the solution
remains bounded.
2.2.3 Forcing component
A thorough analysis of the behaviour of a forced oscillator is outside the scope of this text
(more information on this topic can be found in [
148
, Chapters 3,4]). Nevertheless, it is
useful to introduce the notation relative to a forcing component. A source term may be
28 Linear vibration
included as d2u
dt2=ω2
0u2σ0
du
dt+1
mF, (2.45)
where
F=F(t)
is a time-dependent external forcing function. Energy analysis leads to the
following balance
d
dtH=Q(t) + P(t),(2.46)
where P(t) = du
dtFis the injected power, and His as per (2.26).
2.2.4 Preamble 1: Vector inner products
Before moving on, it is useful to introduce the vector notation employed in this text. Given
two real vectors u,v, the inner product and norm are written as:
u,vuv,u=qu,u.(2.47)
The norm is positive by definition, and the usual properties of symmetry and linearity hold
for the inner product [
130
, Chapter 5]. The Cauchy-Schwartz and Triangle inequalities read:
|u,v| u∥∥v(2.48a)
u+v∥≤∥u+v.(2.48b)
Now, consider a symmetric, positive definite matrix A. One has:
u,Au 0,(2.49)
and, given the properties of the transposition operator:
u,Av=uAv = (Au)v=vAu = (Av)u.(2.50)
Furthermore, the norm of
u
can be bounded in terms of the smallest and largest eigenvalues
of A:
0min(eig(A))u uAu max(eig(A))u,(2.51)
where eig(A)indicates the set of eigenvalues (or spectrum) of A.
2.2 Simple harmonic oscillator 29
2.2.5 Multiple degrees of freedom
So far, only single-degree of freedom (DoF) systems were considered. A multi-DoF system
has multiple natural frequencies, known as natural modes of vibration: the number of these
modes equals the system’s DoF. The extension to multiple DoF is achieved through ODEs
coupled together: a system of Ncoupled oscillators may be written as:
Md2u
dt2=Ku.(2.52)
Here,
u= [u1, u2...,uN]
is a vector containing the displacements of the individual masses,
M
is a diagonal, positive definite matrix called the mass matrix, storing the individual
oscillators masses, and
K
is a positive definite square matrix referred to as the stiffness
matrix.
System
(2.52)
may be diagonalised by formulating a generalised eigenvalue problem as:
KU =MUS2,(2.53)
where
U
is a matrix whose columns are composed of the eigenvectors and
S
is a diagonal
matrix with the square roots of the eigenvalues. Under oscillating conditions, the entries
of
S
are purely imaginary, so
S=j
, where
is a diagonal matrix containing the real
eigenvalues:
=
ω1...
ωN
.(2.54)
When
M1K
is symmetric, the spectral theorem [
130
, Chapter 8] ensures the existence of
a basis of eigenvectors in
RN
, with
N
associated real and distinct eigenvalues. Therefore,
U
is orthogonal and contains the mode shapes, while
stores the correspondent real
eigenfrequencies, one for each eigenvector. Otherwise, the eigenvectors may not be linearly
independent, and
U
could be rank-deficient. In this case, some eigenvalues are repeated, i.e.,
ωi
has an algebraic multiplicity greater than one for some
i
. Considering again the eigenvalue
problem
(2.53)
, and assuming
M1K
to be symmetric, one may left-multiply by
M1
and
right-multiply by U1, obtaining the eigendecomposition:
M1K=UΩ2U1.(2.55)
Defining wU1u, yields:
d2w
dt2=2w.(2.56)
30 Linear vibration
Since
is a diagonal matrix, this system is completely decoupled. Each line represents the
equation of a harmonic oscillator for the modal coordinate
wi
with resonant frequency
ωi
.
The original coordinates uare retrieved with the projection u=Uw.
An energy analysis for system (2.52) is obtained by taking an inner product with du
dt:
*du
dt,Md2u
dt2+=*du
dt,Ku+.(2.57)
The derivative identities
(2.4)
still hold in the vector case; thus, the energy balance becomes:
d
dtH= 0, H =1
2*du
dt,Mdu
dt++1
2u,Ku,(2.58)
leading to energy conservation. Additionally, the energy is non-negative if both
M
and
K
are symmetric and positive definite, given the property
(2.49)
, and the following bounds can
be derived:
*du
dt,Mdu
dt+s2H0
min(eig(M)),u,Ku s2H0
min(eig(K)),(2.59)
where
H0
is the initial energy. Hence, proving that the mass and stiffness matrices are
symmetric and positive definite is sufficient to ensure the stability of a generic system of the
form (2.52).
2.2.6 Loss and Forcing
Viscous loss and a forcing term can be easily included into system (2.52) as follows:
Md2u
dt2=Ku Cdu
dt+f.(2.60)
Here,
f= [F1, . . . , FN]
is a time-dependent vector containing the source terms for each
oscillator while
C
is a positive definite damping matrix yet to be defined. Equation
(2.60)
represents the extension of system
(2.45)
to multiple DoF. The energy analysis is run
analogously by taking an inner product with du
dt:
d
dtH=Q(t) + P(t), Q(t) = *du
dt,Cdu
dt+, P (t) = *du
dt,f+,(2.61)
where Hhas the form (2.58). A passive energy balance is obtained when P(t) = 0.
2.3 The 1-D wave equation 31
x
u
T(x,t)
T(x+dx,t)
dx
ds
u(x)
u(x+dx)
θ(x,t)
θ(x+dx,t)
Fig. 2.2 An infinitesimal section of the ideal string.
If proportional damping [
148
, Chapter 7] is assumed, the damping matrix is expressed in
the form:
C=σ0M+σ1K.(2.62)
Here,
σ0
is a non-negative constant damping coefficient, as in the single-DoF case, and
σ1
is
another non-negative constant regulating a frequency-dependent damping value. Under this
assumption, system (2.60) can be fully diagonalized, as in the unforced, undamped case.
2.3 The 1-D wave equation
The framework detailed above treated discrete systems, or lumped systems, which are
governed by ODEs. If the system has a spatial dimension, it must be treated as distributed.
The displacement is given as a function of space, and the system is governed by time-
dependent PDEs. Because the focus is on strings, only one spatial dimension will be
considered in this text. The displacement of a distributed object is represented by a function
u(x, t) : D × R+
0R
, where
x
is defined over a simply connected domain
D R
; as
before, uis assumed to be sufficiently smooth.
Consider an ideal string, i.e., the string is lossless and has no stiffness. A string segment
ds
is represented in Figure 2.2. The string lies on the
x
axis and is subject to a tension
T0(x, t)
. The vertical displacement is denoted by
u(x, t)
.
θ
is the deflection angle, and the
mass of the segment is given by the volume density
ρ
(measured in Kg/m
3
) multiplied by the
32 Linear vibration
volume of the string element,
dm= dsρA
, where
A
is the cross-sectional area of the string
(in m
2
), assumed constant. For small displacements, the deflection angle is minimal. With
this assumption, and by considering the tension to be uniform over the spatial domain, one
may arrive at the equation of motion:
ρA∂2
tu=T02
xu. (2.63)
The complete derivation is outside the scope of this work; further details can be found in
[
94
, Chapter 2]. Equation
(2.63)
represents the ideal string equation. When divided by a
constant with the dimension of mass, it is usually called 1-D wave equation or simply the
wave equation. In this context, it will be referred to as the wave equation also in the form
(2.63).
As the SHO, the 1-D wave equation
(2.63)
is a second-order differential equation in
time and requires two initial conditions. Usually, these are the values of the state
u
and the
velocity tuat t= 0, and one may define
u0(x)u(x, 0), v0(x)tut=0.(2.64)
Since the system is distributed in space, the initial conditions now depend on x.
2.3.1 Preamble 2: spatial inner product and integral relations
Before proceeding, it is useful to introduce the mathematical notation employed in this text
for continuous spatial inner products. Consider two functions
a(x, t)
,
b(x, t)
, defined over a
domain
D R
, with endpoints
d
and
d+
. Then, the
L2
inner product and related norm are
defined as [130, Chapter 5]:
a, bDZDab dx, aDqa, aD(2.65)
Note that, because
a
and
b
depend on time,
a, b
is a function of time:
a, b(t)
. The usual
properties of symmetry and linearity hold, and the norm is positive definite.
The Cauchy-Schwartz and triangle inequalities read, respectively:
|a, bD|≤∥aDbD(2.66a)
a+bD aD+bD.(2.66b)
2.3 The 1-D wave equation 33
For another another generic function c(x, t) : D × R+
0R, it holds that:
a, bcD=ab, cD.(2.67)
It is worth explicitly writing the integration by parts rule, which will be extensively employed
in this text:
a, xbD=ZDa(xb) dx=ZD(xa)bdx+ab
d+
d
=xa, bD+ab
d+
d
.(2.68)
This rule can be extended to second derivatives by applying the formula twice:
Da, 2
xbED=D2
xa, bED+ (xa)b
d+
da(xb)
d+
d
.(2.69)
If the endpoints of the domain are not time-dependent, Leibniz’s rule holds:
d
dtZDadx=ZDtadx. (2.70)
Since the integral is over space, what remains after integration has no spatial dependence;
therefore, the partial derivative becomes a total derivative outside the integral. For an inner
product, this results in:
d
dta, b=ta, b+a, tb.(2.71)
For two vectors of functions
a= [a1, a2, . . . , aN]
and
b= [b1, b2, . . . , bN]
, the inner
product becomes:
a,bD=ZD
abdx. (2.72)
2.3.2 Energy analysis and boundary conditions
Since the string has a finite length, it is necessary to specify boundary conditions: this process
is known as defining a boundary value problem (BVP). Boundary conditions can be derived
using energy arguments. Consider a string of length
L
. Thus, two boundary points are
introduced at
x= 0
and
x=L
. The energy analysis, similar to the lumped case, is obtained
by taking the inner product of the equation of motion (2.63) with the velocity:
ρA Dtu, 2
tuED=T0Dtu, 2
xuED,(2.73)
34 Linear vibration
where
D= [0, L]
, and the limits of integration are
0
and
L
. Employing integration by parts
(2.68) yields:
ρA Dtu, 2
tuED+T0txu, xuD=T0(xu∂tu)
x=L
x=0 .(2.74)
Using the relation (2.71), the inner product at the left-hand side can be written as:
Dtu, 2
tuED=D2
tu, tuED+d
dttu, tuD.(2.75)
Due to the symmetry of the inner product, this simplifies to:
Dtu, 2
tuED=1
2
d
dttu, tuD(2.76)
The same relations hold for the right-hand side, and equation (2.74) can be written as:
d
dtH=T0(xu∂tu)
x=L
x=0 ,(2.77)
where the energy Htakes the form:
H=ρA
2tu2
D+T0
2xu2
D.(2.78)
Equation
(2.77)
represents the energy balance for the wave equation
(2.63)
, which depends
on the boundary conditions. Specifically, it is expressed as the product of force (
T0xu
) and
velocity (
tu
) at the boundary points. There are two primary approaches to ensure energy
conservation. The first involves setting the displacement or velocity to zero as:
u(0, t)=0, u(L, t)=0 t0.(2.79)
This is known as a fixed or Dirichlet-type condition. The second approach corresponds to
imposing a vanishing force at the boundary:
xux=0 = 0, xux=L= 0 t0.(2.80)
This is referred to as a free (free of load) or Neumann-type condition and corresponds to a
string free to move in the transverse direction. Neumann boundaries are typically of little
interest in the context of strings since they are usually attached to a bridge or soundboard.
However, this form becomes useful when dealing with finite impedance boundaries, as
will be discussed later. Note that mixed boundaries are also possible. Under fixed or free
2.3 The 1-D wave equation 35
boundary conditions, the balance
(2.77)
is passive. Additionally, the positivity of the energy
ensures that the solution remains bounded, analogously to the behaviour observed in the
simple harmonic oscillator (SHO). Thus:
tuDs2H0
ρA ,xuDs2H0
T0
,(2.81)
where the initial energy is given by the initial conditions (2.64):
H0=ρA
2v02
D+T0
2xu02
D.(2.82)
Under fixed boundary conditions, bounds on
u
, rather than its derivatives, may be obtained
[
24
, Chapter 6]. Note that the subscript of the inner product will be dropped henceforth if the
domain is finite, assuming the integration is performed over the domain
D= [0, L]
unless
otherwise specified.
2.3.3 Modal expansion
Consider again equation
(2.63)
, defined over a length
L
, with both ends fixed as in
(2.79)
. A
modal description is obtained when the motion is synchronous. In this case, the string presents
a displacement pattern, or profile, with a fixed shape, which changes only in amplitude over
time. Then, the solution is said to be separable and can be written as:
u(x, t) = χ(x)w(t),(2.83)
where
χ
represents the string profile as a function of space only, and
w
is the time-dependent
amplitude. Inserting into equation (2.63) gives:
ρAχd2w
dt2=T0
d2χ
dx2wd2w
dt2
1
w=c2d2χ
dx2
1
χ, c sT0
ρA,(2.84)
where
c
is the wave speed. Since the left-hand side depends only on time and the right-hand
side depends only on space, the solution is indeed separable, and it can be written:
d2w
dt2
1
w=c2d2χ
dx2
1
χλ, (2.85)
36 Linear vibration
where λR, because all the constants are real. This leads to two separate ODEs:
d2w
dt2λw = 0,(2.86a)
d2χ
dx2λ
c2χ= 0.(2.86b)
Consider the equation (2.86a) first. The characteristic polynomial and its solutions are:
s2λ= 0 s±=±λ. (2.87)
If
λ
is positive the solution diverges, which is incompatible with string oscillations; thus, it
must be either zero or negative. Now, one may introduce the notation:
λ=ω2
, with
ω0
.
The roots then become s±=±ω2=±, and the solution to the ODE is:
w(t) = ˆw+ejωt + ˆwejωt,(2.88)
which corresponds to the solution of a SHO. Thus, the temporal solution is harmonic, with a
frequency ω.
The value (or values) of the frequency
ω
and the nature of the displacement configuration
χ(x)
can be determined by examining the spatial equation
(2.86b)
, which constitutes a
differential eigenvalue problem. First, rewrite the ODE and the boundary conditions:
d2χ
dx2+β2χ= 0, χ(0) = χ(L)=0,(2.89)
where it was defined
β2ω2/c2
. This is another harmonic equation, and the solution may
be written in the form:
χ(x) = Asin(βx) + Bcos(βx),(2.90)
where
A
and
B
are real-valued constants to be determined. Since at the left boundary
χ(0) = 0 then it must be that B= 0, and:
χ(x) = Asin(βx).(2.91)
On the other hand, at the right boundary, one has χ(L) = 0, thus:
Asin(βL)=0.(2.92)
2.3 The 1-D wave equation 37
This is the characteristic equation of the differential eigenvalue problem. It is a transcendental
equation, leading to an infinite number of nontrivial solutions, or wavenumbers:
βm=
L.(2.93)
Note that the trivial solution
β= 0
, which corresponds to the zero-frequency case
ω= 0
,
must be excluded. In fact, to satisfy the boundary conditions, one would obtain
χ(x) = 0 x
,
preventing any oscillatory motion. Thus, mN.
Inserting equation (2.93) into (2.91) gives an infinite set of eigenfunctions:
χm(x) = Amsin mπx
L,(2.94)
usually referred to as mode shapes or eigenmodes of the system, where
Am
are constant
amplitudes. Each mode shape is associated with a temporal solution
wm(t)
, called also modal
coordinate, oscillating at a frequency ωm, which depends on the wavenumber βm:
ωm=βm=mπc
L.(2.95)
These are the system’s eigenfrequencies. Each eigenfrequency-mode shape couple is a
mode of vibration of the system. The general solution
u(x, t)
can now be written as a linear
combination of the individual solutions:
u(x, t) =
X
m=1
χm(x)wm(t).(2.96)
For practical applications, the modes are usually limited to a finite number
M
. Thus, the
solution (2.96) can be written in vector form:
u(x, t) = χ(x)w(t),(2.97)
where
χ
is a vector of eigenfunctions, and
w
contains the modal coordinates. Both have
length M.
Modal projection
Consider a solution of the type (2.97) and substitute it into the wave equation (2.63):
ρAχd2w
dt2=T0
d2χ
dx2w.(2.98)
38 Linear vibration
m
K
Fig. 2.3 Ideal string connected to a lumped mass-spring system at one boundary.
Next, left-multiply by another vector
χ
and integrate over the string length. This corresponds
to taking an inner product in L2:
ρA ZL
0
χχdxd2w
dt2=T0ZL
0
χd2χ
dx2dxw,(2.99)
where the integration sign applies individually to each element of the matrices resulting from
the outer products. Through integration by parts on the right-hand side and dividing through
by ρA, one gets:
χ,χd2w
dt2=c2*dχ
dx,dχ
dx+w+c2χdχ
dx
L
0.(2.100)
The boundary term vanishes due to Dirichlet boundaries. The modes can be proved to be
orthogonal; furthermore, by choosing
Am=Aq2/L
, the modes become orthonormal
and are called normal modes. Then, equation (2.100) may be written as:
d2w
dt2=2w,=
ω1...
ωM
,(2.101)
where
ωm
are the eigenfrequencies
(2.95)
, and equation
(2.101)
is now equivalent to the
system of decoupled oscillators
(2.56)
. This method is known as modal projection and is the
procedure for expressing a system in modal form when the mode shapes and eigenfrequencies
are known.
2.3.4 Lumped mass at the boundary
Dirichlet and Neumann conditions serve as useful idealizations for the boundaries. However,
more realistic conditions should also be considered. For instance, consider a fixed-free string,
where the right boundary is attached to a mass-spring system, modelling a bridge. This
2.3 The 1-D wave equation 39
scenario is depicted in Figure 2.3. The equation governing the mass-spring system is:
md2U
dt2=KU +F, (2.102)
where
F=F(t)
is the force exerted by the string onto the mass, and one may set the contact
condition
U(t) = u(L, t)t
since the mass is attached to the string’s end. The force is
determined from the energy balance expression (2.77):
F(t) = T0xux=L,(2.103)
where the negative sign indicates that the force is exerted by the string onto the mass.
To derive an energy balance, first multiply equation
(2.102)
by the velocity
dU
dt
. Using
the usual derivative identities, the definition (2.103) and noting that U(t) = u(L, t)yields:
d
dt
m
2 dU
dt!2
+KU2
2
| {z }
Hm
=FdU
dt=T0(xu∂xu)x=L.(2.104)
Next, consider equation
(2.77)
: the term corresponding to the left boundary vanishes due to
the Dirichlet condition. Substituting equation (2.104) into the left-hand side yields:
d
dtH=d
dtHm,(2.105)
where
H
is as per equation
(2.78)
. This indicates that the system is conservative. Such
a boundary condition has a nonzero, finite impedance, unlike the fixed condition (infinite
impedance) or the free condition (zero impedance).
Consider now an eigenvalue problem of the form
(2.89)
, with the boundary condition at
the right-end specified by
(2.103)
. Since the left end remains fixed, the modes continue to be
described by
(2.91)
. At the right end, one has
χ(L) = Asin(βL)
. Thus, one may consider
the contact condition in separable form
U(t) = χ(L)w(t)
, substituting it into the boundary
equation
(2.102)
and into the force expression
(2.103)
. The time-dependent part simplifies,
yielding:
(2+K) sin( ωL
c) = T0
ω
ccos(ωL
c).(2.106)
This is the system’s characteristic equation, which may be solved for
ω
numerically to
determine the system eigenfrequencies. There are three significant cases to consider: when
m, K
, the left-hand side dominates, resulting in eigenfrequencies characteristic of a
fixed-fixed string; when
m, K 0
, the right-hand side dominates, yielding eigenfrequencies
40 Linear vibration
0 0.5 1 1.5 2 2.5 3
(rad) 104
Fig. 2.4 Graphical solution of the transcendental equation for an ideal string attached to a
mass-spring system. The characteristic equation is shown in blue, with intersections on the
horizontal axis (solid line) representing the eigenfrequencies, highlighted by dashed lines.
The red dashed line corresponds to the oscillator’s natural frequency, and the black lines
mark the frequencies of a fixed-fixed string. The string physical values are:
ρ= 5535
Kg/m
3
;
L= 0.69
m;
A= 6.5×107
m
2
;
T0= 147.7
N. The mass-spring values are:
m= 0.01
Kg;
K= 8 ×106N/m.
characteristic of a fixed-free string; and when
m, K > 0
, the system exhibits an additional
degree of freedom, leading to eigenfrequencies characteristic of a fixed-fixed string plus one
supplementary modal frequency corresponding to the natural frequency of the oscillator. The
latter situation is depicted in Figure 2.4.
2.4 Stiff string
The ideal string is assumed to be perfectly flexible, which is a simplistic approximation.
Various models account for finite thickness, as reviewed in Chapter 1. Here, a stiffness term
following the Euler-Bernoulli model will be considered, as it has been found sufficient for
musical acoustics applications [71]. A stiffness term may be added to equation (2.63) as:
ρA∂2
tu=T02
xuEI04
xu, (2.107)
2.4 Stiff string 41
where
E
is Young’s modulus for the string’s material in Pa, and
I0=πr4
4
is the moment of
inertia, with
r
being the string’s radius in m. This equation remains a second-order PDE in
time and can be complemented with initial conditions similar to those detailed for the wave
equation.
2.4.1 Energy analysis and boundary conditions
Consider the string to be defined over the domain
D= [0, L]
. The energy analysis of equation
(2.107) is again performed by taking an inner product with the velocity:
ρA Dtu, 2
tuE=T0Dtu, 2
xuEEI0Dtu, 4
xuE.(2.108)
By applying integration by parts (twice on the rightmost term), the following balance equation
is obtained:
d
dtH=T0(xu∂tu)
x=L
x=0 EI0tu∂3
xuxtu∂2
xu
x=L
x=0 ,(2.109)
where the energy Htakes the form:
H=ρA
2tu2+T0
2xu2+EI0
22
xu2.(2.110)
In addition to the velocity and slope, the curvature of the stiff string is also bounded in terms
of the string’s initial energy:
2
xu
s2H0
EI0
.(2.111)
Thus, the solution remains bounded.
The boundary term vanishes under the following conditions, valid t:
u(0, t) = 0, xux=0, u(L, t)=0, xux=L= 0 clamped,(2.112a)
u(0, t) = 0, 2
xux=0, u(L, t)=0, 2
xux=L= 0 simply supported,(2.112b)
2
xux=0 = 0,T0xux=0 +EI03
xux=0 = 0
2
xux=L= 0,T0xux=L+EI03
xux=L= 0
free.(2.112c)
In the clamped conditions, both the position and the slope are set to zero. Imposing
2
xu=
0
indicates that the bending moment is null, meaning that simply supported conditions
correspond to fixed ends that are free to rotate; these are also known as pivoting conditions.
The second term in the free conditions has two components: one is the familiar string force
42 Linear vibration
at the boundary, and the other corresponds to the shearing force of the beam, which opposes
bending. Since this shearing force is zero, the end is free to vibrate. Clamped conditions are
not commonly used, as strings are typically assumed to be simply supported. Free conditions
have limited applications in musical acoustics, but they become useful when addressing more
complex boundaries. Mixed boundary conditions can also be employed.
2.4.2 Modal expansion
Consider a stiff string of length
L
, simply supported at both ends. As for the ideal string, a
modal description is obtained when the stiff string executes synchronous motion. First, insert
a separable solution of the form (2.83), resulting in:
ρAχd2w
dt2=T0
d2χ
dx2wEI0
d4χ
dx4wd2w
dt2
1
w=c2d2χ
dx2
1
χκ2d4χ
dx4
1
χλ, (2.113)
where it was defined:
κsEI0
ρA .(2.114)
As before, this results in two separate ODEs. One is second-order in time, leading to the
same conclusions as for the ideal string, with
w
having the form
(2.88)
. Now, consider the
fourth-order, homogenous ODE:
κ2d4χ
dx4+c2d2χ
dx2+ω2χ= 0.(2.115)
Assuming a solution
χ(x) = ex
, with
βC
, the characteristic polynomial and related
roots are obtained:
ω2c2β2κ2β4= 0 β=±sc2±c4+ 4ω2κ2
2κ2.(2.116)
Thus, there are four distinct solutions for
β
, two real and two purely imaginary:
β=
±β1,±2, with:
β1sc4+ 4ω2κ2c2
2κ2, β2sc4+ 4ω2κ2+c2
2κ2.(2.117)
Therefore, the general solution to the ODE may be written in the form:
χ(x) = ˆχ1e1x+ ˆχ2e1x+ ˆχ3eβ2x+ ˆχ4eβ2x,ˆχ1,2,3,4C,(2.118)
2.4 Stiff string 43
or
χ(x) = Asin(β1x) + Bcos(β1x) + Csinh(β2x) + Dcosh(β2x).(2.119)
Considering simply supported boundaries, one has:
χ(0) = B+D=2
xχ0=B+D= 0 B=D= 0.(2.120)
At the right boundary:
χ(L) = Asin(βL) +Csinh(βL) = 2
xχL=β2(Asin(βL)+Csinh(βL)) = 0,(2.121)
leading to the conclusion that
C= 0
. Thus, the characteristic equation is analogous to that of
the ideal string: Asin(βL) = 0, and βm=/L, with nN. The mode shapes are then:
χm=Amsin(βmx),(2.122)
and, as for the ideal string, it may be normalized by setting
Am=A=q2/L
. The
eigenfrequencies can be found by considering β1=βm, and solving for ω:
ωm=qc2β2
m+κ2β4
m.(2.123)
Note that the natural frequencies are no longer equally spaced, leading to a phenomenon
known as inharmonicity. A thorough study on the parameter adjustments required to tune
stiff strings is found in [
67
]. A modal projection may be now performed, analogously to
the case of the ideal string, leading to a system of uncoupled oscillators of the form
(2.101)
,
where the eigenfrequencies now take the form
(2.123)
. The pinned-pinned stiff string is the
only combination that admits a closed form for the eigenfrequencies.
2.4.3 Lumped mass at the boundary
The study of a stiff string with a finite-impedance boundary is similar to that of the ideal
string. Consider simply supported boundary conditions at the left end and a connection to a
mass-spring system at the right end. The right boundary is defined as:
2
xux=L= 0,T0xux=L+EI03
xux=L=md2U
dt2+KU, (2.124)
with the further constraint that
u(L, t) = U(t)
. Note that, with respect to the ideal string
case, there is now a condition on the bending moment, which is zero because the string end
is free to bend. Additionally, the force at the boundary now includes the shearing force term.
44 Linear vibration
An energy analysis can be conducted similarly to the ideal string case, leading to energy
conservation.
A modal analysis is performed by inserting a separable solution. The resulting ODE in
time is the same as in the pinned-pinned case, leading to a harmonic solution. Regarding
the spatial part, a differential eigenvalue problem of the form
(2.119)
results, which must be
solved using the current boundary conditions and the contact condition. This process is more
involved than in the ideal string case, but through some algebra, the constants
B
,
C
, and
D
may be retrieved in terms of A, leading to modes of the form:
χ(x) = A"sin(β2x) + β2
2sin(β2L)
β2
1sinh(β1L)sinh(β1x)#,(2.125)
with
A
begin a normalisation factor yet to be specified, and
β1
,
β2
are as per
(2.117)
. The
characteristic equation becomes:
T0
dχ
dxL
+EI0
d3χ
dx3L
+ (ω2K)χ(L)=0,(2.126)
which is a transcendental equation that can be solved for
ω
to retrieve the system’s eigen-
frequencies
ωm
. A modal projection is performed by inserting a solution of the type
u(x) = χ(x)w(t)
and taking an inner product with another mode set
χ
onto the string
length. After integration by parts, the resulting expression is:
ρA χ,χd2w
dt2=χ(L)BwT0*dχ
dx,dχ
dx
+wEI0*d2χ
dx2,d2χ
dx2
+w,(2.127)
with:
BT0
dχ
dxLEI0
d3χ
dx3L.(2.128)
By considering the boundary conditions
(2.124)
and the contact condition, the system can be
finally represented as a bank of oscillators:
Md2w
dt2=Kw,(2.129)
with
M=ρA [χ,χ+mχ(L)(χ(L))],(2.130a)
K=T0*dχ
dx,dχ
dx
++EI0*d2χ
dx3,d3χ
dx2
++Kχ(L)(χ(L)).(2.130b)
2.4 Stiff string 45
Note that the mass and stiffness matrices are diagonal and positive definite, and the oscillators
are uncoupled. Consequently, one can write
M1K=2
, where
is a diagonal matrix
whose elements are the frequencies given in
(2.126)
. Furthermore, the eigenmodes are
orthogonal; the normalisation constants
A= [A0, A1, ..., AM]
can be determined so that
either the mass matrix or the stiffness matrix is normalized to the identity matrix.
2.4.4 Viscous loss
A model for viscous loss can be incorporated into the stiff string equation similarly to the
SHO, by adding a term proportional to the string’s velocity, scaled by a constant
σ0
, which
can be related to the
T60
as seen above. However, this would result in constant, frequency-
independent damping, which does not reflect realistic string behaviour; in fact, real strings
have complex decay profiles, as mentioned in Chapter 1. As seen in [
67
], implementing
refined frequency-dependent damping in the time domain, such as the Valette and Cuesta
model, is challenging. A simpler approach, easier to implement, is presented in [
18
], and
reads:
ρA∂2
tu=T2
02
xuEI02
xu2ρA σ0σ12
xtu, (2.131)
Here,
σ0
is the usual non-negative constant that controls a uniform decay rate across all
frequencies, while
σ1
is another non-negative constant that introduces frequency-dependent
characteristics to the loss. For practical implementation details, see [24, Chapter 7].
Consider a string of the type
(2.131)
defined over the domain
D= [0, L]
. The energy
balance is obtained the usual way, by taking an inner product with the velocity. Through
integration by parts, one gets the balance:
d
dtH=B(t)Q(t),(2.132)
where the energy His as per (2.110), the boundary term has the form:
B(t)hT0xu∂tuEI0tu∂3
xuxtu∂2
xu2σ1ρA∂tu∂txui
x=L
x=0 ,(2.133)
and the dissipated power now reads:
Q(t) = 2σ0ρAtu2+ 2σ1ρAtxu2.(2.134)
The boundary term
B
vanishes for clamped and simply supported boundary conditions,
while free boundary conditions must be modified to ensure energy conservation. It is
important to note that the lumped mass boundary condition discussed earlier is not valid
46 Linear vibration
when
σ1= 0
. However, frequency-dependent damping may be included directly in modal
form, as mentioned in the next paragraph.
2.4.5 Forcing and modal expansion
A forcing term may be added to equation (2.131) as:
ρA∂2
tu=Lu+Fe(x, t),L=T02
xEI02
x2ρA σ0σ12
xt,(2.135)
where
L
is a linear operator and the external source term
Fe
is typically separable in
x
and
t
. Point-wise forcing is quite common in musical acoustics, which may be modelled
with a Dirac delta centred on the input point
xi
as
Fe(x, t) = δ(xxi)F(t)
. The string is
considered to be simply supported at both ends. An energy analysis yields the balance:
d
dtH=Q(t) + P(t), P (t) = tux=xi
F(t),(2.136)
where
H
and
Q
have the expressions
(2.110)
and
(2.134)
, respectively. With simply supported
boundaries, a modal expansion may be performed, using the normalised mode shapes
(2.122)
,
resulting in:
d2w
dt2=2wCdw
dt+χ(xi)F
ρA.(2.137)
Here,
2
is a diagonal matrix containing the eigenfrequencies
(2.123)
, and
C
is the diagonal
damping matrix, where the diagonal elements are given by:
Cm,m = 2σ0+ 2(mπ/L))2σ1(2.138)
However, there is now no restriction on assigning a unique damping coefficient to each mode
by employing a generalized loss matrix
C
. This lets each vibration mode have its own
T60
,
allowing for the direct introduction of more complex frequency-dependent damping profiles,
such as that described by Valette and Cuesta [206].
2.4.6 Distributed bridge at the boundary
The lumped bridge presented earlier in this chapter is a simplified approximation; a more
accurate model would account for spatial distribution. A distributed bridge can be described
by an Euler-Bernoulli bar, modelled as a stiff string without the tension term. The governing
2.4 Stiff string 47
equations can then be formulated similarly to those proposed in [157]:
ρsAs2
tus=Ts2
xusEsIs4
xus,(2.139a)
ρpAp2
tup=EpIp4
zup+δ(zzs)F(t).(2.139b)
Here, subscripts
s,p
refer to the string and the bridge, respectively.
us=us(x, t)
represents
the transverse displacement of the string of length
Ls
, while
up=up(z, t)
denotes the
displacement of the beam of length
Lp
, defined over the domain
z[0, Lp]
. The term
F
represents the force exerted by the string onto the bridge, directed point-wise at location
zs
.
The string is considered simply supported at the left end, while the right end determines the
force exerted by the string, analogously to the case of the lumped mass at the boundary:
F(t) = Tsxusx=Ls
+EsIs3
xusx=Ls
, 2
xusx=Ls
= 0.(2.140)
The bar is simply supported at both ends:
2
zupz=0
=up(0, t) = 2
zupz=Lp
=up(Lp, t) = 0.(2.141)
A rigid contact is assumed between the string and the bridge, leading to the condition:
ZLp
0δ(zzs)up(z, t) dz=up(zs, t) = us(Ls, t).(2.142)
An energy balance is obtained by taking an inner product of equation
(2.139a)
with
tus
and
(2.139b)
with
tup
. By integrating by parts and considering the boundary and contact
conditions, the following is derived:
d
dtHp=d
dtup(zs, t)F=d
dtus(Ls, t)F=d
dtHs,d
dt(Hp+Hs) = 0,(2.143)
with:
Hp=ρpAp
2tup2+EpIp
22
zup2,(2.144a)
Hs=ρsAs
2tus2+Ts
2xus2+EsIs
22
xus2.(2.144b)
The balance
(2.143)
is conservative, and the energy expressions
(2.144)
are non-negative,
indicating that the continuous system is stable. Unlike in the lumped case, an analytic form of
the modes is not readily available. Thus, the eigenvalue problem will be solved numerically
in Chapter 3.
Chapter 3
Numerical discretisation techniques and
applications to linear systems
The PDEs encountered in musical acoustics typically do not have analytic solutions, requiring
the use of numerical methods. This chapter introduces the notation and principles of the finite-
difference (FD) method and illustrates its usage in the context of linear systems. Following
the approach of the previous chapter, the FD method is first applied in the time domain,
followed by spatial discretization, which introduces finite-difference time-domain (FDTD)
methods. Part of the content in this chapter is based on textbooks by Bilbao [
24
] and LeVeque
[137].
3.1 Time difference operators
In time-stepping methods, time is discretised with a time step
k
(in seconds), yielding a
sample rate
fs= 1/k
. The sample rate is typically predetermined in audio applications and
remains constant through the simulation. Common sample rates are are
44.1
,
48
and
96
kHz.
The continuous function
u(t)
is approximated at time step
t=nk
by the time series
un
,
where
nN
is the time index. The most basic operators in discrete time are identity and
shift, defined as:
1un=un, et+un=un+1, etun=un1.(3.1)
From these, time difference operators, also known as FD operators in time, can be defined as:
δt+et+1
kd
dt, δt1et
kd
dt, δt·et+et
2kd
dt.(3.2)
50 Numerical discretisation techniques and applications to linear systems
δt+uδt-uδt.uδttu
n - 1
n
n + 1
Fig. 3.1 Illustration of stencils for various time difference operators approximating the first
and second time derivatives.
These represent the forward, backwards, and centred difference operators, respectively, and
approximate the first derivative operator. When applied to a time series, they provide different
finite approximations of the difference quotient:
δt+un=(un+1 un)
k, δtun=(unun1)
k, δt·un=(un+1 un1)
2k.(3.3)
Additionally, averaging operators can be defined to approximate the identity operator:
µt+=et++ 1
21, µt=1 + et
21, µt·=et++et
21.(3.4)
These are particularly useful in constructing stable schemes. The operators above are the
foundational building blocks for time-stepping algorithms and can be combined in various
ways. One significant combination provides an approximation of the second-order derivative:
δtt δt+δt=et++ 2 et
k2d2
dt2,(3.5)
where the constant "
2
" is intended as twice the identity operator. Since higher-order time
derivatives will not be encountered in this text, higher-order difference operators are not
discussed. The temporal width, or stencil, of an operator is defined as the number of distinct
time steps required for its approximation. Thus,
δt+
,
δt
,
µt+
and
µt
have a stencil of width
1
, while
δt·
and
δtt
have a stencil width of
2
. A graphical representation of the stencil widths
for the difference operators is shown in Figure 3.1. Various identities exist between the
3.2 Accuracy: truncation error 51
operators; useful ones include:
µt·= 1 + k2
2δtt,(3.6a)
δt·=δt+µt=δtµt+=1
2(δt++δt),(3.6b)
δtt =1
k(δt+δt) = 2
k(δt·δt),(3.6c)
1 = µt±t±
2,(3.6d)
et±=µt±±t±
2= 1 ±kδt±,(3.6e)
µt·=t·+et.(3.6f)
Discrete versions of the continuous relations
(2.4a)
and
(2.4b)
can be derived, along with
other identities:
(δt·un)δttun=δt+1
2(δtun)2,(3.7a)
(δt·un)un=δt+1
2uneten,(3.7b)
(δt+un)µt+un=δt+1
2(un)2,(3.7c)
(µt·un)un=µt+(unetun),(3.7d)
(µt·un)(δt·un) = δt·1
2(un)2,(3.7e)
unetun= (µtun)2(tun)2
4,(3.7f)
while a discrete version of the relation
(2.4c)
is not immediately derived. All the equivalences
above can be proved through simple algebraic operations.
3.2 Accuracy: truncation error
It was mentioned that FD operators approximate derivative operators; however, the accuracy
of these approximations has not yet been discussed. A common method for analyzing this
accuracy involves using Taylor series, which requires assuming that the continuous function
u(t)
is sufficiently smooth. Under this assumption, the function values can be expanded
52 Numerical discretisation techniques and applications to linear systems
t - k t t + k
δt+uδt-u
δt.u
du/dt
u(t)
Fig. 3.2 Graphical representation of the backward, forward and centred time difference
operators, interpreted as the secant lines between two points of the continuous function
u(t)
.
around a point ¯
t:
u(¯
t±k) = u(¯
t)±kdu(¯
t)
dt+k2
2
d2u(¯
t)
dt2±k3
6
d3u(¯
t)
dt3+O(k4),(3.8)
where
O(kp)
indicates that the error term is on the order of
kp
. Applying the backward and
forward difference operators to the continuous function u(¯
t)gives:
δ±u(¯
t) = ±(u(¯
t±k)u(¯
t))
k=du(¯
t)
dt±k
2
d2u(¯
t)
dt2+k2
6
d3u(¯
t)
dt3+O(k3).(3.9)
Because
¯
t
is a fixed point, the derivatives are constants, making
k
the only variable parameter.
For sufficiently small
k
, the second term
±k
2
d2u(¯
t)
dt2
dominates over the following ones. Thus,
the backward and forward difference operators approximate the first derivative with an error
that behaves as
k
multiplied by a constant and are defined as first-order accurate. This error
is known as the truncation error of the FD operators.
A similar procedure may be applied to the centred operator, yielding:
δt·u(¯
t) = (u(¯
t+k)u(¯
tk))
2k=du(¯
t)
dt+k2
6
d3u(¯
t)
dt3+O(k4).(3.10)
This indicates that the error behaves as
k2
, making the centred operator second-order accurate.
Similarly, the backward and forward mean operators can be shown to be first-order accurate,
while the centred mean operator is second-order accurate. Figure 3.2 provides a graphical
representation of the behaviour of these difference operators when applied to a continuous
function. The accuracy order of the second difference operator can be explicitly expressed
3.3 Harmonic motion in discrete time 53
n+1 n - 1
n
n + 1/2 n - 1/2
Fig. 3.3 Illustration of a staggered time grid.
as:
δtt =d2
dt2+O(k2).(3.11)
Higher-accuracy operators can be constructed, typically by using a larger stencil; however,
they tend to yield unstable simulations. Furthermore, initialization concerns arise, particularly
when the stencil order exceeds the order of the problem (i.e., the highest derivative order in
continuous time).
Sometimes, time series defined at interleaved or staggered time instants are employed [
23
].
Given a continuous function
ψ(t)
, this may be approximated at time step
t= (n1/2)k
by the series
ψn1/2
, on the grid depicted in Figure 3.3. The same formal definitions
of the difference operators apply to series defined on staggered time grids, for example:
δt+ψn1/2= (ψn+1/2ψn1/2)/k
. The advantage of this approach is that one-step operators
applied to staggered series become centred. For instance, consider the Taylor expansion:
ψ(¯
t±k/2) = ψ(¯
t)±k
2
dψ(¯
t)
dt+k2
4
d2ψ(¯
t)
dt2±k3
12
d3ψ(¯
t)
dt3+O(k4).(3.12)
Then, applying the forward difference operator to ψ(¯
t)gives:
δt+ψ(¯
tk/2) = ψ(t+k/2) ψ(tk/2)
k=du(¯
t)
dt+O(k2),(3.13)
making the forward operator applied to staggered series second-order accurate.
3.3 Harmonic motion in discrete time
Consider the SHO equation
(2.19)
. The simplest FD scheme approximating the equation is
obtained by considering the time series
un
approximating the solution
u(t)
, and then simply
substituting the derivative with the second difference operator (3.5):
δttun=ω2
0un.(3.14)
54 Numerical discretisation techniques and applications to linear systems
Expanding the operator yields:
un+1 =un(2 ω2
0k2)un1,(3.15)
This relation is called explicit because the unknown
un+1
is directly computed from the
previous time series values,
un
and
un1
. However, it is important to note that the validity of
this scheme as an effective approximation for the continuous function
u(t)
is not inherently
guaranteed. Further analysis is required to establish this, which introduces the concepts of
stability, consistency and convergence of the scheme.
3.3.1 Stability, consistency and convergence
Stability via energy analysis
As in the continuous case, the energy analysis is performed by multiplying equation
(3.14)
by a discrete velocity times mass t·un. Through the identities (3.7a) and (3.7b) one gets:
m(δt·un)(δttun) + K(δt·un)un= 0 δt+hn1/2= 0,(3.16)
where it was defined
hn1/2m(δtun)2
2+K unetun
2.(3.17)
Equation
(3.16)
evidently resembles the continuous energy
H
in equation
(2.26)
. Similarly,
the multiplication by a constant with the dimensions of mass was performed solely to obtain
the correct energy dimension and is unnecessary for the energy analysis itself. The quantity
h
is often referred to in the literature as numerical, discrete or pseudo energy. Note that the
energy series is defined on a staggered grid because the operators inside the expression are
non-centred. The system conserves the discrete energy, leading to a discrete counterpart of
the balance equation (2.26). Thus:
hn1/2=h1/2,(3.18)
where
h1/2
represents the initial numerical energy, set by the numerical initial conditions,
which will be discussed later.
The conservation of this numerical energy is a necessary, but not sufficient, condition for
ensuring the stability of the scheme. In fact, unlike expression
(2.26)
, the discrete potential
energy is not immediately positive definite. As in the continuous case, negative discrete
energy may lead to unbounded solutions; therefore, it is necessary to establish a bound for
3.3 Harmonic motion in discrete time 55
Fig. 3.4 Energy error
H
for scheme
(3.14)
. The oscillator has a natural frequency
ω0= 500
rad/s and it was initialised with x0=v0= 1.
the discrete potential. Using (3.7f) allows to write:
hn1/2=(δtun)2
2 1ω2
0k2
4!+ω2
0(µtun)2
2(δtun)2
2 1ω2
0k2
4!.(3.19)
Thus, energy positivity is ensured iif:
1ω2
0k2
4!>0k < 2
ω0
.(3.20)
Equation
(3.20)
is called the stability condition of the finite difference scheme
(3.14)
. If this
is not satisfied, the solution will grow exponentially over time. On the other hand, when the
stability condition is respected, one obtains bounds on the velocity and displacement in terms
of the initial energy, analogous to those obtained in continuous time:
δtunq2h1/2/m, µtunq2h1/2/K. (3.21)
Figure 3.4 shows the energy error for scheme (3.14), defined as:
H1hn1/2/h1/2.(3.22)
Note that the discrete energy exhibits fluctuations on the order of
1014
, which approaches the
machine accuracy limit
ϵm
. According to the IEEE standard for double precision arithmetic,
ϵm= 252 2.22 ×1016
. Machine accuracy represents the smallest value
1ϵm
greater
than
1
that a computer can represent. Several factors can contribute to discrepancies in
56 Numerical discretisation techniques and applications to linear systems
energy calculations that exceed the threshold of machine accuracy. In this chapter, only
the truncation error of the finite difference operators was considered, without addressing
round-off errors due to finite machine precision. In fact, while relation
(3.21)
holds under the
assumption of infinite precision, finite precision introduces additional computation errors.
These round-off errors affect not only energy calculations but also the numerical scheme
itself, particularly in nonlinear systems. This can complicate performance evaluation for
certain schemes.
Consistency: local truncation error
As previously mentioned, the FD operators approximate continuous derivatives. When these
operators are applied to a discrete time series
un
, equation
(3.14)
is solved exactly. However,
the time series only approximates the continuous solution. As one might expect, if the true
solution, denoted here with
¯u(t)
to avoid confusion, is substituted into the scheme
(3.14)
, the
equation will not be solved exactly, resulting in a discrepancy. This discrepancy is called the
local truncation error (LTE) and is denoted by τn:
δtt ¯u(tn) + ω2
0¯u(tn) = τn, tnnk. (3.23)
By means of (3.11), one gets:
d2¯u(tn)
dt2+ω2
0¯u(tn)!+O(k2) = τn.(3.24)
Since
¯u(t)
is the true solution, the term in parenthesis is solved exactly (and is equal to zero
following
(2.19)
), leading to
τn=O(k2)
. This indicates that the LTE decreases with the
square of
k
. In other words, the time series
un
approaches the true solution with an accuracy
of order k2. Generally, if
lim
k0τn= 0 (3.25)
a scheme is said to be consistent, and the LTE can be used to assess the accuracy of the
scheme. Specifically, if τ=O(kp)the scheme is said to be pth-order accurate.
This is valid only if the scheme is also stable and convergent. In fact, consistency alone
does not guarantee that the numerical solution will converge to the true solution, as errors
may accumulate and grow as the solution progresses through time steps.
3.3 Harmonic motion in discrete time 57
Convergence: global error
The idea of convergence of the scheme is linked to the concept of global error. This is defined
as:
En= ¯u(tn)un,(3.26)
and is expected to reflect the trend of the LTE. In general, a scheme is convergent if
lim
k0En= 0.(3.27)
Convergence is the property that ensures that, as the sampling step
k
is reduced to very small
values, the time series will effectively approach the true solution. It is the most difficult
property to prove mathematically for a finite difference scheme. For linear schemes, the
Lax–Richtmyer theorem ensures that a stable and consistent scheme is also convergent [
198
,
Chapter 1]. However, this does not apply to nonlinear schemes, where convergence must be
independently demonstrated.
If an analytic solution is available, a common technique to verify convergence numerically
is to compare the computed solution with the analytic solution at the same time instant for
decreasing sampling steps, checking that the error decreases according to the expected power
of
k
. If no analytic solution is available, other target solutions are employed, as will be
discussed in the following chapters.
3.3.2 Frequency warping: an exact scheme
A significant issue introduced by scheme
(3.14)
is a frequency warping effect leading the
oscillation frequency of the numerical solution to deviate from
ω0
. Instead, it is given by [
24
,
Chapter 3]:
ω=1
kcos1 1k2ω2
0
2!.(3.28)
Since
ω > ω0
, the stability limit
(3.20)
becomes stricter than the Nyquist limit. This effect
becomes more pronounced as ω0approaches the stability threshold.
Since the scheme is convergent, increasing the sampling rate could mitigate this effect,
but this is not always feasible in audio applications. On the other hand, an exact, explicit,
unconditionally stable integrator exists for the unforced, undamped SHO, in the form:
un+1 2 cos(ω0k)un+un1= 0.(3.29)
58 Numerical discretisation techniques and applications to linear systems
Fig. 3.5 Convergence rate analysis for scheme
(3.14)
initialised with condition
(3.31)
(blue)
and
(3.32)
(orange). The log plot shows the global error, defined as in
(3.26)
and computed
at time
nk = 0.5
s, against the sampling rate. The slope of the blue line is
1
: the error then
decreases linearly with the time step
k
, suggesting that the scheme is first-order accurate
with this initialization. In contrast, the orange line has a slope of
2
: the error decreases
quadratically with k, confirming that this initialization is second-order accurate.
A full proof is beyond the scope of this work; interested readers may refer to [
56
,
57
] and
[24, Chapter 3] for further details.
3.3.3 Initialisation
As its continuous counterpart, a numerical scheme must be provided with initial information.
Schemes
(3.14)
and
(3.29)
are called two-step schemes because advancing in time requires
knowledge of the state at both the current and previous time steps
n
and
n1
. Thus, given
the initial position and velocity
u0
and
v0
one needs to retrieve information on
u0
and
u1
. For
the initial state, this is straightforward:
u0=u0.(3.30)
For the next state, one may be tempted to set:
δt+u0=v0u1=u0+kv0;(3.31)
however, this approximation is only first-order accurate due to the use of a forward difference
operator. The centred difference operator cannot be used here because it would require
unavailable state information.
3.3 Harmonic motion in discrete time 59
Consider now scheme
(3.14)
and the relation
(3.6c)
: using the fact that
δtt =ω0
from
(3.14), one may write:
δt·u0=v0u1=u0+kv0k2ω2
0
2u0,(3.32)
which provides a second-order accurate initialization. In general, it is good practice to adopt
initial conditions with the same accuracy as the scheme. Figure 3.5 represents a convergence
rate analysis of scheme (3.14) initialised with conditions (3.31) and (3.32).
When employing the exact scheme
(3.29)
, an exact set of initial conditions may be
specified [56, 216].
3.3.4 Loss
A discretisation for system (2.34) may be obtained as:
δttun=ω2
0un2σ0δt·un.(3.33)
The LTE is of order
2
, making the scheme second-order accurate. An energy analysis can
be performed by multiplying equation
(3.33)
by
t·un
, leading, through the use of discrete
derivative identities, to:
δt+hn1/2=2σ0(δt·un)20.(3.34)
This shows that the system is dissipative. The energy expression
hn1/2
is defined as per
(3.17)
, so the stability condition given by
(3.20)
still holds. Consequently, one can derive the
following bound on the solution size:
|un| v
u
u
t2k2h1/2
1(1 ω2
0k2/2)2.(3.35)
Equation
(3.33)
exhibits the same frequency warping issues as in the undamped case.
Additionally, it introduces a deviation in the decay time. An exact, unconditionally stable
integrator also exists for the lossy case, given by [24, Chapter 3]:
un+1 =eσ0keσ2
0ω2
0k+eσ2
0ω2
0kune2σ0kun1.(3.36)
As in the undamped case, a full proof is beyond the scope of this work; for further details on
this and initialisation strategies, interested readers may refer to [56, 57, 216].
60 Numerical discretisation techniques and applications to linear systems
3.4 Multiple degrees of freedom
A discrete version of scheme (2.52) can be written as:
Mδttun=Kun,(3.37)
where the vector
un
now contains the time series. By expanding the difference operators,
one gets:
Mun+1 = (2Mk2K)unMun1.(3.38)
Scheme
(3.37)
may be proved to be second-order accurate and, since
M
is fully diagonal and
not dependent on the system’s state, it is explicit. An energy analysis is performed by taking
an inner product with δt·un. Using the usual discrete identities, one obtains the balance:
δt+hn1/2= 0,hn1/2=1
2δtun,Mδtun+1
2Dun1,KunE.(3.39)
As in the single-mass case, there is no guarantee that the discrete energy is positive. While
the kinetic energy is non-negative by definition, the potential energy has an indefinite sign.
For the symmetric, non-negative matrix
K
, a vector equivalent of the discrete-time identity
(3.7f) can be given as:
etun,Kun=µtun,Kµtun k2
4δtun,Kδtun.(3.40)
Substituting this into the energy expression one gets:
hn1/2=1
2 δtun,Mδtun k2
4δtun,Kδtun!+1
2µtun,Kµtun.(3.41)
Thus, non-negativity of the energy overall is guaranteed if:
δtun,Mδtun k2
4δtun,Kδtun=δtun,Aδtun 0,(3.42)
where it was defined AMk2
4K. Following the bounds (2.51), this translates to:
eig(A)0,(3.43)
3.5 First-order ODEs 61
meaning that
A
must be positive definite. As in equation
(2.56)
, a modal expansion can be
performed, resulting in a decoupled system
δttwn=2wn,(3.44)
where 2=M1K. The stability condition then becomes:
k2/max(ωi), i = 1,2, . . . , N. (3.45)
where
ωi
are the eigenfrequencies stored into
. When
(3.44)
represents a modal system such
as
(2.101)
, the condition
(3.45)
sets a limit on the number of modes that can be simulated.
As seen in Chapter 2, systems
(3.37)
or
(3.44)
may be easily integrated with loss and forcing
terms.
It is important to note that when a continuous modal system (such as
(2.101)
) is simu-
lated using the integrator
(3.44)
, the previously discussed frequency warping effects arise.
In particular, the simulated modal frequencies deviate from their analytical counterparts,
especially at high frequencies, leading to mode mistuning and perceptual artefacts. This
phenomenon is known as numerical dispersion. To account for such numerical dispersion,
exact integrators of the kind
(3.29)
and
(3.36)
can be employed, as done in various works,
see eg. Van Walstijn et al. [
213
,
211
,
216
]. Since these integrators are unconditionally stable,
the number of simulated modes in these cases is typically limited by the hearing range, up to
20 kHz.
3.5 First-order ODEs
Many time-stepping schemes are designed for first-order ODEs. Thus, it is helpful to
introduce the use of time difference operators in this context. Consider a generic IVP in the
form: du
dt+f(u) = 0,u(0) = u0,(3.46)
where
u=u(t) : R+
0RN
is a
N
-elements vector representing the system’s state as a
function of time t, and f=f(u)is a function that can be either linear or nonlinear.
The simplest numerical method for integrating this problem is the forward euler (FE)
method, obtained by replacing the derivative with a forward difference operator:
δt+un+f(un)=0.(3.47)
62 Numerical discretisation techniques and applications to linear systems
This method is only first-order accurate, and stability issues may arise, necessitating a stability
condition. By rearranging the equation, the explicit update formula is obtained:
un+1 =kf (un) + un.(3.48)
Notice that here, only one previous value of the time series is required to step forward in time:
this is a one-step method, contrary to scheme
(3.15)
. One-step methods have the advantage
of being self-starting, meaning they do not require the complex initialization strategies that
multi-step methods often need. Consider the following:
δt+un+f(µt+un) = 0.(3.49)
This is called Midpoint method. It is one-step and can be proved to be second-order accurate.
Furthermore, it is unconditionally stable, meaning it does not require a stability condition.
However, in this case, the function
f
is evaluated at time-step
n+ 1
, making the method
implicit. If fis nonlinear, the solution requires iterative methods such as Newton-Raphson.
Consider the oscillator in first-order form
(2.30)
. A possible discretisation can be obtained
as follows:
δt+xn=J(h)n+1/2,h(qn, pn)hn=(pn)2
2+(qn)2
2.(3.50)
The partial derivative of hwith respect to qis given as:
δq+h(qn, pn) = h(qn+1, pn)h(qn, pn)
qn+1 qn=µ+qn.(3.51)
The partial derivative with respect to
p
can be defined analogously. Therefore, the gradient
yields:
(h)n+1/2
δq+hn
δp+hn
=µ+
qn
pn
=µ+xn,(3.52)
and scheme
(3.50)
is equivalent to the Midpoint method. The scheme may be initialised by
simply setting q0ω0u0and p0=v0without reducing the accuracy order.
3.6 Spatial difference operators
Consider now a function defined on both time and space
u=u(x, t) : D × R+
0R
, where
D R
. The spatial domain can be discretized like the time domain, using a finite grid
spacing
h > 0
at locations
x=lh
,
lDZ
, allowing the continuous function to be
3.6 Spatial difference operators 63
approximated by a grid function:
ul(t)u(x, t)
. Correspondingly, discrete spatial operators,
analogous to those in the time domain, can be defined as:
1ul=ul, ex+ul=ul+1, exul=ul1.(3.53)
From here, the forward, backward and centred spatial difference operators (or FD operators
in space) are defined as:
δx+ex+1
hd
dx, δt1ex
hd
dx, δt·ex+ex
2hd
dx.(3.54)
When applied to a grid function, these operators provide different approximations to the first
derivative:
δx+ul=ul+1 ul
h, δxul=ulul1
h, δx·ul=ul+1 ul1
2h.(3.55)
An approximation to the second spatial derivative is constructed as:
δxx δx+δx=ex+2 + ex
h2.(3.56)
Additionally, averaging operators can be defined as:
µx+=ex++ 1
21, µx=1 + ex
21, µx·=ex++ex
21.(3.57)
The Euler-Bernoulli stiff string equation involves a fourth-order spatial derivative, which can
be approximated using a fourth-order difference operator defined as:
δxxxx =δxxδxx δxxxxul=ul+2 4ul+1 + 6ul4ul1+ul2
h4.(3.58)
Notice that this operator has a stencil of width
5
. The same considerations regarding
truncation error that apply to temporal operators also hold for spatial operators. Thus, the
forward and backward difference and mean operators are first-order accurate, while the
centred operators and the second and fourth difference operators are second-order accurate.
Moreover, identities analogous to equations
(3.6)
and
(3.7)
exist in space as well. In addition,
it is useful to write the following bounds explicitly:
|δx±ul| 2|ul|/h, (3.59a)
|δxxul| 2|δx±ul|/h 4|ul|/h2.(3.59b)
64 Numerical discretisation techniques and applications to linear systems
3.6.1 Matrix form
Given that
ul(t)
is interpreted as a grid function, it can be condensed into a vector, referred
to as the state vector:
u(t)[. . . ul1, ul, ul+1, . . . ].(3.60)
For now, the continuous function is considered defined over the entire real domain, meaning
D=R
and
D=Z
; therefore:
uR
. It is possible to define the application of the spatial
difference operators acting element-wise over the entire state vector. For instance:
δxu[...,δxul1, δxul, δxul+1, . . . ].(3.61)
The spatial difference operators can then be regarded as matrices acting on the state vector.
Operators δx+,δxand δxx may be expressed, respectively, as:
D+
·=1
h
......0
1 1
1 1
1...
0...
,D
·=1
h
...0
...1
1 1
1 1
0......
,
D2
·=D+
·D
·=1
h2
......0
...2 1
12 1
12...
0......
.
Here, the subscript
·
indicates that the boundaries of the matrices are not yet defined. Ma-
trix representations of the mean and fourth-order difference operators can be constructed
analogously, particularly D4
·=D2
·D2
·.
3.6.2 Input and interpolation operators
Because much of the interaction between models is considered point-wise, it is important
to introduce the notation used for discrete Dirac delta operators, which are also applicable
beyond excitation, such as in modelling connections between distributed objects. There
are various ways to discretize such a distribution. Consider the excitation location
xi
, then,
define
lixi/h
, where
⌊·⌋
indicates the flooring operation. Possible discretisations of the
3.6 Spatial difference operators 65
Dirac delta operator can be represented by vectors defined as:
j(xi)
11
h
0, l < li
(1 αi), l =li
αi, l =li+ 1
0, l > li+ 1
j3=1
h
0, l < li1
αi(αi1)(αi2)/6, l =li1
(αi1)(αi+ 1)(αi2)/2, l =li
αi(αi+ 1)(αi2)/2, l =li+ 1
αi(αi+ 1)(αi1)/6, l =li+ 2
0, l > li+ 2,
where
αi=xi/h li
. Here,
j1
uses linear interpolation between the neighbouring points,
while j3performs lagrange cubic interpolation.
Interpolation between points can be useful for evaluating the state of a grid function
u
at a specific point
xo
. To achieve this, one may use the vectors defined above:
u(xo)
hj(xo)u, where j(xo)is a generic input vector centred on xo.
3.6.3 Preamble 3: discrete inner product and relations
Before proceeding, it is necessary to define a form for an inner product between grid
functions. Consider now two grid functions
al
and
bl
, defined over a finite domain
D
, so that
lD= [0,1, . . . , N ]
. When condensed into vector form, these functions are denoted as
a
and brespectively. A discrete counterpart of the L2inner product may be defined as:
N
X
l=0
halbl=ha,bD,(3.62)
where the vector inner product is that defined in
(2.47)
, and the subscript indicates the domain
of definition of the inner product. The norm is then denoted as:
haa=ha2
D0.(3.63)
Consequently, the properties listed for the vector inner product also apply to grid functions.
The discrete analogous to integration by parts is summation by parts, which can be
expressed in different variants, such as:
ha, δxbD=hδx+a,bD+aN+1bNa0b1,(3.64a)
=hδx+a,bD+aNbNa0b1.(3.64b)
66 Numerical discretisation techniques and applications to linear systems
Another version, involving the forward difference operator, is given by:
ha, δx+bD=hδxa,bD+aNbN+1 a1b0,(3.65a)
=hδxa,bD+aNbN+1 a0b0,(3.65b)
where it was defined
D[0, . . . , N 1]
and
D[1, . . . , N ]
. The expressions
(3.64)
and
(3.65)
can be obtained through algebraic manipulation. A detailed derivation of equations
(3.64)
is provided in [
223
]. By recalling that
δxx =δx+δx
, the above expressions can be
combined to yield:
ha, δxxbD=hδxxa,bD+aNδx+bNbNδx+aNa0δxb0+b0δxa0,(3.66a)
=hδxxa,bD+aNδx+bNbNδxaNa0δxb0+b0δx+a0,(3.66b)
where
D= [1, . . . , N ]
. Note that these expressions include grid points outside the domain
of definition. This issue must be addressed by imposing appropriate discrete boundary
conditions, as shown later on.
3.7 Discretisation of the 1-D wave equation
3.7.1 Semi-discretisation
Consider the ideal string equation
(2.63)
, defined over the domain
D= [0, L]R
. This
domain is mapped onto the discrete grid
D= [0, N ]Z
, with
NL/h
, resulting in
N+ 1
discretisation points. The continuous function is then approximated by a grid function
at these discretization points, and the semi-discretised equation can be expressed in vector
form as:
ρAd2u
dt2=T0δxxu.(3.67)
Energy analysis begins by taking the inner product of equation (3.67) with hdu
dt:
ρAh *du
dt,d2u
dt2+D
=T0h*du
dt, δxxu+D
.(3.68)
Noting that identities
(2.4)
hold for vectors as well,
(2.4a)
may be applied on the left-hand
side. On the right-hand side, consider that
δxx =δx+δx
. Then, one may apply summation
by parts as per (3.65b). Finally, using (2.4b), yields:
d
dtH=T0
duN
dt(δx+uN)T0
du0
dt(δxu0).(3.69)
3.7 Discretisation of the 1-D wave equation 67
Here, the semi-discrete energy Htakes the form:
H=ρAh
2
du
dt
2
D
+T0h
2δxu2
D,(3.70)
which clearly discretizes
(2.78)
in space. The two components can be identified as the kinetic
and potential energies of the string. Note that the potential energy is defined over the reduced
domain D.
The energy is positive definite, while the boundary terms vanish under the conditions:
u0= 0; uN= 0 Dirichlet.(3.71a)
δxu0= 0; δx+uN= 0 Neumann.(3.71b)
These are discrete versions of the boundary conditions
(2.79)
and
(2.80)
, respectively; mixed
boundaries are also possible. Note that the Neumann conditions involve first-order accurate
operators: a version using a centred operator can also be implemented with a different inner
product definition; further details can be found in [24, Chapter 5].
3.7.2 Dirichlet boundaries in matrix form
Boundary conditions can be incorporated into matrix operators. This discussion will focus on
Dirichlet boundaries, which are the most commonly used in this work. Since the endpoints
u0
and
uN
are always zero, one may completely avoid storing their values and redefine the
state vector as its interior with dimension
N1
. Thus:
u= [u1, . . . , uN1]
. Then, one has:
D=1
h
10
1 1
......
01
.(3.72)
This matrix is rectangular, with dimensions
N×(N1)
. The forward operator may be
defined as:
D+=(D)
, and has dimension
(N1) ×N
. The second difference operator
68 Numerical discretisation techniques and applications to linear systems
is then defined as:
D2=D+D=1
h2
2 1 0
12 1
.........
12 1
012
,(3.73)
which is a square matrix of dimension
(N1) ×(N1)
. Note that the composition is
not symmetric: reversing the product operation would result in a larger operator, conflicting
with the dimensions of the state vector. Furthermore,
D+
has a dimension incompatible with
the state vector length and cannot be applied directly but only through composition with
the backward operator. The semi-discretised wave equation in matrix form, with Dirichlet
boundaries, is:
ρAd2u
dt2=T0D2u.(3.74)
3.7.3 Eigenvalue decomposition of the second difference matrix
It is useful to explicitly write the eigenvalues and eigenvectors of the
D2
matrix. The
complete derivation may be found in [
137
, Chapter 2]. The eigenvalue problem relative to
the m-th eigenvector ˆ
umis:
D2ˆ
umλmˆ
um= 0, m = 1,2, . . . , N 1.(3.75)
The n-th component of the m-th eigenvector is:
un)m=s2
Nsin(nhβm), n = 1,2, . . . , N 1, βm=
Nh .(3.76)
where
βm
is the wavenumber, and
q2/N
is a normalisation factor. The corresponding
m
-th
eigenvalue is:
λm=4
h2sin2(
2N).(3.77)
Thus, matrix
D2
is negative definite, and equation
(3.74)
can be interpreted as a system
of coupled oscillators, analogous to equation
(2.52)
. Consequently, this system can be
completely decoupled. Being negative definite, D2and admits the diagonalisation:
D2=UΛU,(3.78)
3.7 Discretisation of the 1-D wave equation 69
where
Λ
is a diagonal matrix with elements
λm
, and the columns of
U
consist of the
eigenvectors. Note that the following holds:
0< λm<4/h2,(3.79)
which implies that
Λ
is positive definite. Since the eigenvectors are normalised,
U
is
orthonormal. Then, by left-multiplying equation
(3.74)
by
1
ρA U1
and defining
wU1u
one obtains: d2w
dt2=c2Λw,(3.80)
which is a system of decoupled oscillators. By defining
c2Λ2
, one retrieves a form
analogous to
(2.101)
, which may be integrated in time as
(3.44)
, or with the exact integrator
(3.29).
3.7.4 Full discretisation
Time integration of system
(3.74)
can be performed through the time difference operators
previously defined. To this end, the grid function
u(t)
is approximated by a time series vector
un
. Then, a FD scheme is obtained by substituting the time derivative with a second-order
difference operator in time:
ρAδttun=T0D2un.(3.81)
3.7.5 Stability, consistency and convergence
Stability via energy analysis
An energy analysis is performed by taking an inner product of equation (3.81) with t·un:
ρAhδt·un, δttun=T0hδt·un,D2un.(3.82)
Note that the subscript indicating the domain of the inner products has been omitted: since
boundaries are now defined, the inner products and norms are understood to operate over the
entire vector length
N1
. One may consider that
D2=D+D=(D)D
. Utilizing
the properties of the transposition operator and applying identities
(3.7a)
and
(3.7b)
(which
hold for vectors), the following is obtained:
δt+hn1/2= 0,(3.83)
70 Numerical discretisation techniques and applications to linear systems
where the energy is written:
hn1/2=ρAh
2δtun2+T0h
2DDun1,DunE.(3.84)
While the discrete energy balance is conservative, the discrete potential energy exhibits an
indefinite sign. To ensure positivity, one may apply the identity
(3.6f)
and the bound
(3.59a)
,
which leads to:
ρAh
2δtun2+T0h
2µtDun2T0hk2
8δtDun2h ρA
2T0k2
2h2!δtun2.
Then, the discrete energy expression is non-negative if:
ρA
2T0k2
2h2!0h2T0k2
ρA =c2k2.(3.85)
This is referred to as the Courant-Fredrichs-Lewy (CFL) condition and links the space and
time sampling steps.
Consistency
An analysis of the LTE may be performed by applying the difference operators to the
continuous function
¯u(x, t)
(where the
¯
·
helps distinguish between the continuous function
and the time series):
τn
l= (δtt c2δxx)¯u(lh, nk).(3.86)
by Taylor expanding the operators and factorising out the term 2
tc22
x, one gets:
1 + k2
12 2
t+c22
x+k4
360 4
t+c44
x+c22
x3
t+. . .!2
tc22
x¯u=τn
l.
Considering
(2.63)
, the left-hand side vanishes, and one has
τn
l= 0
. Thus, the scheme is
exact.
Initialisation: global error
The global error for a space-time grid is defined as:
En
l=u(lh, nk)un
l.(3.87)
3.8 Discretisation of the complete linear string 71
It has been established that the scheme
(3.81)
is both stable and consistent. Therefore, due
to its linearity, it is also convergent, eliminating the need for further convergence analysis.
However, the LTE is exactly zero when
l
is an inner point of the domain, and
n
is sufficiently
far from the initial state. Indeed, the global error is influenced by both boundary and initial
conditions. As previously discussed, the boundary conditions are discretized using the matrix
D2
. Now, appropriate initial conditions must be defined. The initial displacement can be set
simply as:
u0
l=u0(lh).(3.88)
Similarly to what shown for the SHO, the next step can be initialised with different level of
accuracy:
u1
l=u0
l+kv0(lh)(3.89a)
u1
l=u0
l+kv0(lh) + k2c2
2δxxu0
l,(3.89b)
where the latter was derived using
(3.6c)
and the relation:
δttu0
l=c2δxxu0
l
. These initial-
izations are expected to yield first- and second-order accurate global errors, respectively.
However, in the ideal string case only, the global error obtained with the second initialization
is reduced to machine accuracy, making the scheme effectively exact. Note that this loses
validity as soon as loss is introduced.
3.8 Discretisation of the complete linear string
3.8.1 Semi-discretisation
Consider now the full linear string model
(2.135)
, defined over the domain
D= [0, L]
. A
discretisation of the spatial domain, with point-wise forcing centred on xi, yields:
ρAd2u
dt2=T0δxxuEI0δxxxxu2ρA (σ0σ1δxx)du
dt+j(xi)F, (3.90)
where the boundaries are not yet defined, and uis defined over the points [0, N]Z.
Energy analysis begins by taking the inner product of equation
(3.90)
with
hdu
dt
over the
domain:
ρAh *du
dt,d2u
dt2+D
=h*du
dt, T0δxxuEI0δxxxxu2ρA (σ0σ1δxx)du
dt+j(xi)F+D
.
72 Numerical discretisation techniques and applications to linear systems
The inertia and tension terms are treated as for the wave equation. For the stiffness term,
one may consider that
δxxxx =δxxδxx
and apply summation by parts twice as per
(3.66b)
,
obtaining:
d
dtH=B 2ρAh *du
dt,(σ0σ1δxx)du
dt+D
+h*du
dt,j(xi)+D
F, (3.91)
where the boundary term is:
B=T0"T0
du0
dt(δxu0)duN
dt(δx+uN)#
EI0"dδxu0
dtδxxu0dδx+uN
dtδxxuNdu0
dtδxδxxu0+duN
dtδx+δxxuN#.
(3.92)
The semi-discrete energy His clearly non-negative, taking the form:
H=ρAh
2
du
dt
2
D
+T0h
2δxuD+EI0h
2δxxuD.(3.93)
The boundary term vanishes under the following conditions:
u0=δxu0=uN=δx+uN= 0 clamped,(3.94a)
u0=δxxu0=uN=δxxuN= 0 simply supported,(3.94b)
δxxu0=T0δxu0+EI0δxδxxu0= 0
δxxuN=T0δx+uN+EI0δx+δxxuN= 0
free.(3.94c)
These are a discretisation of, respectively, the clamped, simply supported and free conditions
(2.112), for both ends. Mixed boundaries are also possible.
3.8.2 Simply supported boundaries in matrix form
It is useful to express the finite difference operators in matrix form for simply supported
boundary conditions. Similar to the Dirichlet case, the endpoints are always set to zero,
allowing the state vector to be defined using only its interior points:
u= [u1, . . . , uN1]
.
The backward, forward, and second-order difference matrices are identical to those defined
for Dirichlet conditions in equations
(3.72)
and
(3.73)
. The fourth-order operator can be
3.8 Discretisation of the complete linear string 73
represented as:
D4=D2D2=1
h4
54 1 0
4 6 4 1
14 6 ......
1......1
...64
014 5
.(3.95)
This matrix is symmetric and positive definite, admitting an eigendecomposition with positive
eigenvalues, though their explicit form will not be covered here.
Then, system (3.90), with simply supported boundaries, may be written:
ρAdu
dt=Lu+j(xi)F, L= (T0D2EI0D4)2ρA(σ0Iσ1D2)d
dt,(3.96)
where
I
is the identity matrix of dimension
(N1)×(N1)
, and
L
is the semi-discretisation
of the linear operator
L
. Note that, since
D2
is negative definite and
D4
is positive definite,
system
(3.96)
may be again interpreted as a system of coupled oscillators with loss and
forcing.
3.8.3 Full discretisation
The linear string model can now be fully discretised. A FD scheme for equation
(3.96)
is
written:
ρAδttun=lun+j(xi)Fn,l= (T0D2EI0D4)2ρA σ0δt·σ1δtD2,(3.97)
where
Fn
is a time series sampling the input at time
F(nk)
, and
l
is the fully discrete linear
operator. This scheme is only first-order accurate due to the use of a backward operator
for modelling the frequency-dependent damping term. Achieving second-order accuracy
would require a centred time operator, resulting in an implicit scheme. However, since
the frequency-dependent damping term is typically small, modelling it with a non-centred
operator has only limited impact on accuracy [24, Chapter 7].
74 Numerical discretisation techniques and applications to linear systems
The discrete energy now takes the form:
hn1/2=ρAh
2Dδtun,I1D2δtunE
+T0h
2DDun1,DunE+EI0h
2DD2un1,D2unE,
(3.98)
where, once again, the subscript referring to the domain of the inner products is omitted,
and the inner products and norms are understood to apply over the entire vector. The energy
balance is expressed as:
δt+hn1
2=Qn+hDδt·un,j(xi)EFn,(3.99)
where the loss term has the form:
Qn= 2ρAh Dδt·un,σ0I1D2δt·unE.(3.100)
The stability condition for this scheme can be derived using discrete energy or frequency
domain [223] arguments, and results in the following:
hs4σ1k+c2k2+q(4σ1k+c2k2)2+ 16κ2k2/2¯
h, (3.101)
where cand κare defined in (2.84) and (2.114), respectively.
Notice that the scheme
(3.97)
suffers from numerical dispersion due to the finite difference
approximation in space (unlike the scheme for the wave equation
(3.81)
, which is exact).
While this effect can be solved for modal systems by employing exact integrators for the
modes, no equivalent solution exists for FDTD methods. The only option is to reduce the
spatial sampling step; however, due to the stability condition
(3.101)
, doing this requires
increasing the sample rate, which is not always feasible in audio applications. Further
discussion on numerical dispersion can be found in [24, Chapter 7].
3.8.4 Distributed bridge termination
In this paragraph, the eigenvalue problem of the model of a string coupled to a distributed
bridge at the boundary, presented in Chapter 2, is solved numerically. To proceed, the spatial
domain must be first discretized. A semi-discrete approximation of system
(2.139)
is given
3.8 Discretisation of the complete linear string 75
by:
ρsAs
dus
dt=T2
sδxxusEsI2
sδxxxxus(3.102a)
ρpAp
dup
dt=EpIpδzzz zup+j(zs)F. (3.102b)
The string is simply supported at the left end, and the bar is simply supported at both ends;
hence,
us
is a state vector defined over a domain
Ds= [1, Ns]Z
, and
up
is another state
vector defined over
Dp= [1, Np1] Z
. The input vector
j(zs)
is a discretisation of the
Dirac delta operator centred on
zs
. Next, discrete boundary conditions ensuring numerical
stability are needed. A discretisation of
(2.140)
,
(2.141)
and the contact condition
(2.142)
yields the complete set of discrete boundary conditions:
(us)0=δxx(us)0=δxx(us)Ns= 0,(3.103a)
F(t) = Tsδx+(us)Ns+EsIsδx+δxx(us)Ns,(3.103b)
(up)0=δzz (up)0= (up)Np=δzz (up)Np= 0,(3.103c)
hj(zs)up= (us)Ns,(3.103d)
where the single grid points are denoted as:
(us)l
and
(up)l
. An energy balance of the beam
equation is obtained by taking an inner product of equation (3.102b) with hdup
dt, and yields:
d
dt
ρpAp
2
dup
dt
2
Dp
+EpIp
2δzz up2
Dp
| {z }
Hp
=hj(zs)dup
dtF. (3.104)
Analogously, the energy balance for the string equation is arrived at by taking an inner
product of equation
(3.102a)
with
hdus
dt
. By employing summation by parts as per
(3.64b)
and (3.66a), and considering the boundary conditions one gets:
d
dt
ρsAs
2
dus
dt
2
Ds
+Ts
2δx+us2
Ds+EsIs
2δxxus2
Ds
|{z }
Hs
=d(us)Ns
dtF. (3.105)
Then, through the contact condition
(3.103d)
one obtains:
d
dt(Hs+Hp)=0
, and passivity is
ensured.
By expanding the operators and applying the boundary and contact conditions, expres-
sions for the points of the string outside the domain of definition,
(us)Ns+1
and
(us)Ns+2
, can
76 Numerical discretisation techniques and applications to linear systems
be derived. Then, one may condense the state vectors into a vector
u[u
s,u
p]
, and write
system (3.102) in compact form as:
Mdu
dt=Ku.(3.106)
The mass and stiffness matrices
M
and
K
are symmetric, positive definite block-matrices.
Mis defined as:
M=
ρsAsIs0
0ρpApIp+ρsAsh2j(zs)j(zs)
.(3.107)
Here,
Is
and
Ip
are identity matrices, of dimension
(Ms1) ×(Mp1)
and
(Mp1) ×
(Ms1) respectively. Kis defined as:
K=
TsD2
s+EsIsD4
sT
TEpIpD4
p+T0+2EsIs
h2j(zs)j(zs)
,
T=h0,+EsIs
h3j(zs),Ts
h2+2EsIs
h3j(zs)i,
(3.108)
where
D2
s
and
D4
s
are difference operators of dimension
(Ns1) ×(Ns1)
, and
D4
p
has
dimension
(Np1) ×(Np1)
. All three operators have simply supported boundaries.
T
has dimension
(Np1) ×(Ns1)
, and is a composition of a zero-matrix of dimension
(Np1) ×(Ns3) with two vectors.
To perform a modal expansion of system
(3.106)
, a discrete eigenvalue problem is
formulated as:
M1K=UΩ2U
, where, as before,
U
is a matrix of real eigenvectors, and
2
is a diagonal matrix of real, positive eigenvalues. Note that, altough both
K
and
M
are
symmetric, the product
M1K
generally is not. However, since
M
is positive definite, the
eigenvalues of the product are then real [
96
], and they must also be non-negative since so are
the eigenvalues of
K
. The eigenvalue problem may be solved numerically using a fine grid
h
.
Then, the modal expansion yields a system such as (2.56).
Figure 3.7 illustrates two comparisons of the eigenfrequencies of an isolated string versus
those of the coupled string-bridge system, using different values of
Ep
. It is seen that reduced
stiffness can shift the eigenfrequencies downwards by as much as two octaves in the lower
frequency range. For materials with high
Ep
, like steel, the frequency gap is mostly confined
around the fundamental frequency but can increase by up to two semitones for higher modes.
Figure 3.7 shows the first four, the
10
th and the
12
th eigenmodes for a steel bridge. It can be
observed that the bridge eigenmodes begin to show a third node only from the
10
th mode
onwards.
3.8 Discretisation of the complete linear string 77
Fig. 3.6 Eigenfrequencies of the coupled system compared to those of an isolated simply
supported stiff string, for two different values of
Ep
. The left value corresponds to typical
steel, while the right value is chosen arbitrarily low for demonstration purposes. Other
physical parameters in common between the two cases are
Ls= 0.69
m;
Ts= 147.7
N;
ρsAs= 0.0063
Kg m
1
;
Es= 0.25
GPa;
Lp= 0.07
m;
ρpAp= 0.0251
Kg m
1
. The
contact point is
zs= 0.03
m. Top figures show frequencies in log scale, while the bottom
figures illustrate the frequency difference in cents for the same index. Reproduced from
[181].
78 Numerical discretisation techniques and applications to linear systems
Fig. 3.7 Normalised modes of the coupled string-bridge system displayed and plotted orthog-
onally for visualization purposes. The mode index is indicated by the letter
i
. The blue line
represents the string, while the red line represents the bridge. The contact point projection
onto the
z
-axis is marked with a black dot. The physical parameters are consistent with those
listed in Figure 3.6, using EpIp= 300 GPa. Reproduced from [181].
Chapter 4
Geometric nonlinearities
All the models presented in Chapter 2, along with the corresponding discretizations in
Chapter 3, are linear. These are only approximations of the behaviour of vibrating systems
and lose validity in cases of high-amplitude vibration. In this chapter, the linear models
are extended to account for geometric nonlinearities, arising from large strains. First, the
Duffing oscillator is introduced as a simple case study, extending the concept of the SHO.
This is followed by a discussion on various nonlinear string models, where development
proceeds differently from the rest of the work: starting with the most complex model and
deriving simpler forms through simplifications. Finally, numerical integrators are presented;
in particular, the SAV method will be introduced here.
4.1 The Duffing equation
The Duffing equation represents a linear oscillator with an added cubic restoring force. It
arises in various scenarios, such as a pendulum with moderately large vibration amplitudes
[231]. The equation is given by:
d2u
dt2=ω2
0uγu3,(4.1)
where
γ
is a constant that controls the degree of nonlinearity in the restoring force. As
outlined in Section 2.1, the potential is assumed non-negative; thus
γ0
, which defines a
hardening nonlinearity. The softening case, where
γ < 0
, will not be addressed here. As for
the SHO, an energy balance is computed by left-multiplying equation
(4.1)
by
mdu
dt
, leading
to:
d
dtH= 0, H =m
2 du
dt!2
+Ku2
2+mγu4
4.(4.2)
80 Geometric nonlinearities
The balance is passive; thus, the solution may be bounded with (2.9).
In the undamped, unforced case, with no initial velocity, the Duffing equation admits an
analytic solution in terms of Jacobi elliptic functions:
¯u(t) = u0cn qω2
0+γu2
0t;γu2
0
2γu2
0+ 2ω2
0!,(4.3)
where
cn(z;a)
is the Jacobi elliptic function of argument
z
and parameter
a
, and
u0
is the
initial condition.
4.1.1 Potential quadratisation
Following (2.16), the potential in equation (4.2) may be written as:
V(u) = Ku2
2+ϕd(u), ϕd(u) = γu4
4+ε
2.(4.4)
Here,
ε > 0
is an arbitrary constant that shifts the minimum of the potential without affecting
the motion. Due to its non-negativity, the nonlinear part
ϕd
may be quadratised through an
auxiliary variable ψd, as seen in equation (2.17). The energy can then be re-expressed as:
H=m
2 du
dt!2
+Ku2
2+ψ2
d
2,(4.5)
and, using the definition of
g
from
(2.18)
, the equation of motion
(4.1)
becomes the system
of equations:
d2u
dt2=Ku ψdgd,dψd
dt=gd
du
dt, gd=γu3
qγu4/2 + ε.(4.6)
The system above is linear in
u
and
ψ
and can be solved efficiently using numerical methods,
as will be shown later. The system can be extended to include loss and forcing terms, as
was done for the SHO in Section 2.2.3. However, the analytic treatment of the lossy, forced
Duffing oscillator is beyond the scope of this work; interested readers can refer to [
148
,
Chapter 11] for further details.
4.1 The Duffing equation 81
4.1.2 Simulation
Three possible numerical schemes for the Duffing equation (4.1) are:
δttun+ω2
0un=
γ(un)3
γ(un)2µt·un
γµt·((un)2)µt·un
.(4.7)
Through Taylor analysis, it may be proved that all three schemes are consistent and second-
order accurate. When expanded, they become:
un+1 =2k2ω2
0k2γ(un)2unun1,(4.8a)
1 + k2γ(un)2
2!un+1 =2k2ω2
0un 1 + k2γ(un)2
2!un1,(4.8b)
g(un+1) = 2ω2
0k2un 1 + γk2
4(un1)2!un1f(un, un1),(4.8c)
where
g(un+1)γk2
4(un+1)3+γk2un1
4(un+1)2+ 1 + γk2(un1)2
4!un+1.
The first scheme is fully explicit. The second scheme is said to be linearly implicit, requiring
division by a state-dependent coefficient at each time step. The third scheme is fully implicit,
as it requires the solution of a nonlinear algebraic equation at each time step. In this simple
case, the computational costs of the first two schemes are relatively comparable; however, in
the distributed case linearly implicit schemes become significantly more computationally
expensive than explicit ones. The third scheme requires substantially more computational
effort, even in the lumped case, as solving it generally involves iterative methods, such as
Newton-Raphson, which present various challenges, as discussed in Chapter 1. Through
energy analysis, it can be shown [
24
, Chapter 4] that scheme
(4.8a)
does not possess a
non-negative form of discrete energy and is thus prone to instability. In contrast, the other
two schemes have a non-negative, nonlinear discrete energy, ensuring stability.
Consider now the quadratised system
(4.6)
: following [
28
], a possible discretisation
scheme is given by:
δttun=ω2
0unµt+ψn1/2
dgn
d,(4.9a)
δt+ψn1/2
d=gn
dδt·un.(4.9b)
82 Geometric nonlinearities
Here,
ψn1/2
d
is treated as an independent time series updated at each time step, defined on
a staggered grid. This defines a three-step scheme, where
gn
d
can be computed analytically
from (4.6) as:
¯gn
d=
2γun:ε= 0
γ(un)3
qγ(un)4/2 + ε
otherwise (4.10)
where the
¯
·
indicates that the gradient has the analytic form (this notation will turn useful
later on). The scheme is consistent and second-order accurate, as all operators are centred. A
discrete energy balance is obtained by left-multiplying equation (4.9a) by δt·un:
(δt·un) (δttun) = ω2
0(δt·un)unµt+ψn1/2
d(δt·un
d)gn.(4.11)
By substituting (4.9b) and using the usual discrete identities, one gets:
δt+hn1/2= 0,hn1/2(δtun)2
2+ω2
0unetun
2+ψn1/2
d2
2,(4.12)
which has the dimension of energy scaled by the mass. Due to the quadratisation, the discrete
nonlinear potential remains positive, and ensuring the positivity of the linear potential leads
to the stability condition
(3.20)
. Expanding out the operators in
(4.9)
and substituting the
second equation into the first yields:
kgn
d
2!2
+ 1
un+1 =2ω2
0k2un+
kgn
d
2!2
1
un1k2ψn1/2
dgn
d,(4.13)
which forms a linearly implicit update procedure. Scheme
(4.9)
forms the core of the
IEQ/SAV approaches, which coincide in the lumped case. The scheme must be integrated
with suitable initial conditions, which in this case may be simply set using the true solution
(4.3).
It was shown that the scheme
(4.9)
is consistent and stable; however, since it is nonlinear,
this does not directly imply convergence. A detailed convergence analysis is provided in
[
231
], where the convergence rate is examined for various values of
ε
. The study shows
that the scheme converges when
ε= 0
. Moreover, when the shift is selected near certain
numerically determined optimal values, local variations in the convergence rate are observed,
reaching up to twelfth-order accuracy. In contrast, the scheme fails to converge when
ε= 0
. Figure 4.1 presents a comparison between the numerical solution obtained using
the quadratised scheme
(4.9)
and the exact solution
(4.3)
. The bottom panel displays the
4.2 Geometrically exact string 83
0 0.02 0.04 0.06 0.08 0.1
Time (s)
-10
-5
0
5
10
u (m)
Exact
Quad
0 0.02 0.04 0.06 0.08 0.1
Time (s)
0
2
4
6
|En|
10-4
Fig. 4.1 Analytic and numerically computed solutions of the Duffing oscillator with param-
eters
ω0= 300
rad/s,
γ= 100
,
u0= 10
m, and
v0= 0
m/s. In the numerical scheme,
ε=ϵm
, where
ϵm
denotes machine epsilon in double precision. In the top panel, the solid
line represents the exact solution, while the dashed line shows the computed solution. The
bottom panel illustrates the evolution of the global error over time.
evolution of the global error between the two solutions, highlighting discrepancies not visible
in the top panel. The global error is defined as in
(3.26)
, where now
¯u(nk)
represents the
exact solution
(4.3)
at time
nk
. Although the error accumulates over time, testing reported in
[231] ensures convergence.
It is important to note that the findings from [
231
] are empirical and specific to the
Duffing equation. In particular, initial studies on PDEs suggest that simply adding a shift to
the potential energy does not ensure convergence in all cases. An alternative method, based
on constraining the auxiliary variable, will be presented later in this chapter.
4.2 Geometrically exact string
In Chapter 2, a model of linear string vibration, including the effects of stiffness following
the Euler-Bernoulli theory of beams and frequency-dependent damping in the time domain,
was presented. When the displacement increases, the deflection angle becomes large, and
the linear model is no longer valid. In such cases, geometric nonlinearities arise, and an
accurate model must account for the longitudinal displacement of the string along the
x
axis,
84 Geometric nonlinearities
x
u(x)
v(x)
Fig. 4.2 Transversal and longitudinal displacements in a nonlinear string.
as illustrated in Figure 4.2. In [
152
, Chapter 14], Morse derives a model usually referred
to as geometrically exact, taking into account motion in two polarisations in the transverse
plane. It is common to restrict the motion to one polarisation only [
24
, Chapter 8]; in that
case, the model, including loss and forcing in the transverse plane, may be written as [78]:
ρA∂2
t Lu=xζϕG+Fe,(4.14a)
ρA∂2
t Lvv=xξϕG,(4.14b)
where it was conveniently defined:
ζxu
and
ξxv
. Here,
u=u(x, t), v =v(x, t) :
[0, L]×R+
0R
represent the transverse and longitudinal displacements of the string,
respectively. The linear transverse operator
L
was defined in equation
(2.135)
, while the
linear longitudinal operator Lvis given by:
Lv=T02
x2ρAσlt,(4.15)
and includes a frequency-independent loss term regulated by a constant
σl
. The quantity
ϕG=ϕG(ζ, ξ) : R×RR+
0
is the nonlinear potential density due to large strains, and is
given by:
ϕG=EA T0
2q(1 + ξ)2+ζ212
.(4.16)
4.2 Geometrically exact string 85
Note that this form differs slightly from the one derived by Morse; however, the two are
mathematically equivalent, and one can switch between them through some algebra [
28
]. The
potential density is non-negative under EA T0, which is always true for musical strings.
4.2.1 Energy analysis
An energy balance is obtained by taking an inner product of equation
(4.14a)
with
tu
and
equation (4.14b) with tvover the string length:
ρA Dtu, 2
tuE=tu, Lu+tu, xζϕG+tu, Fe,(4.17)
ρA Dtv, 2
tvE=tv, Lvv+tv, xξϕG.(4.18)
Summing the two equations, applying integration by parts, and using the chain rule
d
dtϕG=tζζϕG+tξ∂ξϕG,(4.19)
leads to the energy balance:
d
dtH=Bu+Bv2ρA σ0tu2+σ1tζ2+σltv2+P. (4.20)
The boundary terms are given by:
Bu[B+tu∂ζϕG]
x=L
x=0 , Bv[T0ξ∂tv+tvξϕG]
x=L
x=0 ,(4.21)
where Bis the linear boundary term obtained in (2.133). The total energy is expressed as:
H=ρA
2tu2+tv2+T0
2ζ2+ξ2+EI0
22
xu2+ ΦG,(4.22)
where it was defined the total nonlinear potential energy as:
ΦG
qϕG
2
+ε
2.(4.23)
Under simply supported boundary conditions for the transverse component and fixed condi-
tions for the longitudinal component, the boundary terms vanish, making the balance
(4.20)
passive in the unforced case. Additionally, the energy remains positive and well-defined
due to the non-negativity of the nonlinear potential density. Thus, bounds on the transverse
solution size, analogous to
(2.81)
and
(2.111)
may be derived, with analogous bounds on the
longitudinal component
v
following, where the initial energy
H0=H(0)
is now computed
86 Geometric nonlinearities
from
(4.22)
. As in the linear case, under simply supported boundary conditions, bounds on
the solution, as well as its derivatives, may be derived. The formulation of the quadratised
equations of motion in the spatially distributed setting will be postponed until after spatial
discretisation, to highlight the differences between the IEQ and SAV approaches.
4.3 Morse-Ingard strings
In the case of moderate amplitude motion, simpler forms of the nonlinear string equations
can be obtained through potential density approximations. To illustrate this, it is convenient
to rewrite equations (4.14) in the form provided by Morse:
ρA∂2
tu=EA∂2
xuEI04
xu2ρA(σ0σ12
x)tu(EA T0)xζϕ
G+Fe,(4.24a)
ρA∂2
tv=EA∂2
xv2ρAσltv(EA T0)xξϕ
G,(4.24b)
where:
ϕ
G=q(1 + ξ)2+ζ21ξ. (4.25)
Since the elongation is small, the potential density can be expanded in a Taylor series around
ζ=ξ= 0. Truncating the series to the fourth order yields:
ϕ
Gζ2
2ξζ2
2ζ4
8+ζ2ξ2
2.(4.26)
This form is the standard approximation provided by Morse in [
152
, Chapter 14], and
sometimes called MI string. Bank employed only the third-order term:
ξζ2/2
while
retaining only the second-order term
ζ2/2
decouples the motion. It was shown [
23
] that both
forms, by Morse and Bank, yield energy with an indefinite sign, exposing the system to
stability issues.
4.3.1 Anand’s form
Anand’s form is obtained by truncating the last term in (4.26):
ϕ
Gζ2
2ξζ2
2ζ4
8.(4.27)
4.3 Morse-Ingard strings 87
It is accurate up to the third order and possesses non-negative energy. Substituting expression
(4.27) in place of ϕ
Gin equations (4.24) yields:
ρA∂2
t Lu=EA T0
2xζ3+ 2ζξ+Fe,(4.28a)
ρA∂2
tv=EA∂2
xv2ρAσltv+EA T0
2xζ2.(4.28b)
This system has been used in various works; see Chapter 1 for a comprehensive list. An
energy analysis demonstrating stability may be found in [23].
4.3.2 Transverse-only system
An additional approximation involves considering only the transverse component of the
system by assuming
v(x, t) = 0
. While this simplification is not physically motivated, the
resulting system is a useful test case for numerical methods. In this case, the potential density
simplifies to:
ϕTζ2
2ζ4
8,(4.29)
and the governing equation becomes:
ρA∂2
t Lu=xEA T0
2ζ3+Fe.(4.30)
This system will be referred to as "System T" in the rest of this work.
An energy analysis under simply supported boundary conditions can be derived by means
of (2.4c), yielding a passive balance identical to (2.136), where the energy takes the form:
H=ρA
2tu2+T0
2ζ2+EI
22
xu2+ ΦT.(4.31)
The total nonlinear potential energy takes the form:
ΦT=EA T0
8ζ22+ε
2.(4.32)
Thus, the energy is non-negative (under the condition
EA T0
), and the solution may be
bounded in terms of the initial energy.
88 Geometric nonlinearities
4.4 Kirchhoff-Carrier string
Consider again Anand’s form in equations
(4.28)
. When
T0/EA 1
, the inertial term
2
tv
may be neglected. Then, assuming fixed boundary conditions for the longitudinal motion,
the system can be reduced to a single equation by integrating
(4.28b)
over the string length,
yielding:
ρA∂2
t Lu=xEA
2Lζ2ζ+Fe.(4.33)
The full derivation can be found in [
5
]. This model is commonly referred to as Kirchhoff-
Carrier string and will be called "System K" from now on. It is simpler than all those
considered above, System T included. Here, the nonlinearity is averaged over the string
length and thus represented as a scalar quantity. This nonlinear component links the wave
speed to the total string length, resulting in pitch glide effects. An energy analysis, under
simply supported boundary conditions, yields again the balance (2.136), with energy
H=ρA
2tu2+T0
2ζ2+EI
22
xu2+ ΦK,(4.34)
where:
ΦK=EA
8Lζ4+ε
2.(4.35)
Again, the solution may be bounded in terms of the initial energy.
4.4.1 A modal form
As seen in Chapter 2, linear and time-invariant systems can be described in the frequency
domain, where the motion is decomposed into independent contributions from various
modes, each associated with a specific modal shape and eigenfrequency. However, as
noted in Chapter 1, when a nonlinear system is projected onto a modal basis, such as
those from Chapter 2, the resulting equations are typically densely coupled, impacting
simulation efficiency. Nevertheless, a modal expansion can still be attempted on System K by
leveraging the spatial invariance of the Kirchhoff-Carrier nonlinearity and using the modes
of a simply supported linear string. To this end, consider a separable solution of the form:
u=χ(x)w(t)
, where
χ
represents the normalised modes, as in
(2.122)
. Substituting this
separable solution into equation
(4.33)
, with point-wise forcing centered on
xi
, and taking an
inner product with another set of modes χyields:
d2w
dt2=2wCdw
dt+E
2 w,SwSw +χ(xi)F
ρA,(4.36)
4.4 Kirchhoff-Carrier string 89
where
F
is a time-dependent forcing term as seen in equation
(2.137)
. Here,
2
is the
eigenfrequencies matrix
(2.123)
,
C
a diagonal damping matrix, and
S
is a diagonal matrix
with elements:
Sm,m =
L2
,(4.37)
where
m
is the mode index. An energy analysis is now performed by left-multiplying
equation (4.36) by ρAdw
dt, leading to:
d
dtH=ρA *dw
dt,Cdw
dt++*dw
dt,χ(xi)+F. (4.38)
The energy has the form:
H=ρA
2*dw
dt,dw
dt++T0
2w,Sw+EI0
2Dw,S2wE+˜
ΦK,(4.39)
where the modal nonlinear potential is defined as:
˜
ΦKEA
8Lw,Sw2+ε
2.(4.40)
In the absence of external forcing, the energy balance is passive, and the energy remains
positive, allowing for a bound on the solution. Thus, the system is stable.
4.4.2 Double polarisation
System
(4.33)
may be extended to account for motion in double polarisation. To this end, the
two functions
u1
and
u2
are defined, representing the string motion along the
y
and
z
axis,
respectively. Then, the equation reads:
(ρA∂2
t L) 0
0 (ρA∂2
t L)
u1
u2
=x
EA
2L
ζ1
ζ2
2
ζ1
ζ2
+Fe,(4.41)
where
ζ1,2=xu1,2
,
Fe
is a two-component vector directing the force in the two polarisations,
and the inner product for vectors of functions was defined in (2.72).
A modal representation can be used for the double polarization system
(4.41)
as well,
adopting the linear, simply supported modes for each polarization. Both functions can be
written as
u1=χw1
and
u2=χw2
, where
w1
and
w2
are two independent sets of
functions describing the time evolution of motion in the modal domain for both polarizations.
90 Geometric nonlinearities
Performing a modal expansion, with point-wise forcing, yields:
d2
dt2
w1
w2
=
0
0
w1
w2
C 0
0 C
d
dt
w1
w2
+E
2 [w
1,w
2]
S 0
0 S
w1
w2
S 0
0 S
w1
w2
+
F1χ(xi)
F2χ(xi)
1
ρA,
(4.42)
where
F1
,
F2
are time functions regulating the amount of force in both polarisations. The
stability of both systems (4.41) and (4.42) may be confirmed through energy analysis.
4.5 Simulation of nonlinear transverse string vibration
The previous paragraphs introduced two models for nonlinear, transverse string vibration:
System T
(4.30)
and System K
(4.33)
. The literature presents two second-order accurate,
conservative numerical schemes discretising these systems. The first, concerning System
K, is described in [
24
, Chapter 8]. It involves an update relation requiring the inversion of
a diagonal matrix with a rank-one perturbation, which can be solved efficiently using the
Sherman-Morrison formula [
189
]. The second scheme, solving to System T, is detailed in
[
23
] and results in a linearly implicit method that requires the inversion of a sparse, state-
dependent matrix at each time step. However, both schemes are model-specific, meaning
they had to be individually designed for each problem. In contrast, quadratised schemes
offer a unified discretization approach, allowing for a highly efficient update process across
different systems. Hence, it is interesting to explore the use of quadratised schemes to
develop a general numerical framework for nonlinear transverse string vibration and compare
their performance with existing reliable schemes. Note that this paragraph also serves as an
introduction to the SAV quadratisation technique as applied to spatially distributed systems.
The results presented here also apply to other types of nonlinearities, as will be demonstrated
later.
First, the models may be expressed in a generic form:
(ρA∂2
t L)u=F+Fe,(4.43)
where here
F=F(ζ)
is a force density representing the conservative nonlinear contribution.
When Ftakes one of the following forms:
FK=xEA
2Lζ2ζ,FT=xEA T0
2ζ3,(4.44)
4.5 Simulation of nonlinear transverse string vibration 91
equation (4.43) corresponds to System K or System T, respectively.
A spatial discretisation of equation
(4.43)
, with simply supported boundaries and point-
wise forcing centred on
xi
, can be performed using the operators outlined in Chapter 3. This
results in a state vector
u
of dimension
N1
. It is useful to express the semi-discrete
equation in terms of the nonlinear potential rather than the force density. By applying the
chain rule and taking into account the transposition properties of the difference operator, the
relation
D+ζ=−∇u(4.45)
is obtained, leading to the following general form:
ρA d2
dt2L!u=1
hD+ζΦ+j(xi)F, (4.46)
where the discretised version of
ζ
, of size N, is given by:
ζ=Du
, and the gradient with
respect to the vector ζis defined as:
ζ= [ζ1, . . . , ζN].(4.47)
The approximation of the linear operator,
L
, follows from equation
(3.96)
, and
Φ
is a
suitable spatial discretisation of the nonlinear potentials
ΦK,ΦT
. In particular, possible
approximations of (4.35) and (4.32) are:
ΦK=EAh2
8L(ζζ)2+ε
2(4.48a)
ΦT=(EA T0)h
8(ζ2)ζ2+ε
2,(4.48b)
where, in the latter equation, the power operator indicates element-wise raising.
A semi-discrete energy balance is obtained by taking an inner product of equation
(4.46)
with
hdu
dt
. Using the chain rule and the definitions of the difference operators, the following
relation is obtained:
dΦ
dt= (ζΦ)dζ
dt= (D+ζΦ)du
dt.(4.49)
By applying this result and integrating by parts, the energy balance
(3.91)
is obtained,
which remains passive under simply supported boundaries and no external forcing. The
92 Geometric nonlinearities
semi-discrete energy is now given by:
H=ρAh
2
du
dt
2
+T0h
2ζ+EI0h
2D2u+Φ.(4.50)
where the norms are taken over the entire vector length.
4.5.1 Potential quadratisation in a distributed system
It is now possible to introduce quadratisation in the distributed setting. There are two distinct
strategies available. Using the IEQ approach, one applies quadratisation to the discrete
potential density. For example, in the case of System T, this density may be written as:
EA T0
8ζ4,
where, again, the power operator indicates element-wise raising. Since this quantity is
represented as a vector, the corresponding auxiliary variable is also a vector. This yields a
linearly implicit scheme, which requires the inversion of a state-dependent matrix at each
time step. Although this approach improves upon solving a fully implicit method, it still
impacts efficiency. Alternatively, quadratisation can be performed through the following
transformation:
ψq2Φ,(4.51)
which here is well defined, given the non-negativity of both
ΦK
and
ΦT
. This approach
introduces a scalar auxiliary variable
ψ
, which forms the basis of the SAV approach. This
lumped variable significantly improves the efficiency of the numerical solution, as will be
seen shortly. After the quadratisation
(4.51)
, equation
(4.46)
can be expressed in terms of
ψ
:
ρA d2
dt2L!u=1
hψg+j(xi)F;(4.52)
where it was used:
D+ζΦ=−∇uΦ=ψuψψg.(4.53)
The chain rule gives:
dψ
dt=g
du
dt.(4.54)
4.5 Simulation of nonlinear transverse string vibration 93
The energy balance is unchanged, while the expression for conserved energy becomes:
H=ρAh
2
du
dt
2
+T0h
2ζ+EI0h
2D2u+ψ2
2,(4.55)
which is clearly non-negative.
This procedure may be applied to the modal scheme
(4.36)
too, through the quadratisation
of the potential (4.40):
˜
ψKq2˜
ΦK.(4.56)
Then, equation (4.36) becomes:
d2w
dt2=2wCdw
dt˜
ψK˜
gK+χ(xi)F
ρA,˜
gKw˜
ψK,(4.57)
which is analogous to (4.52). A non-negative energy follows also in this case.
4.5.2 Time discretisation: SAV update
A possible time discretisation of system
(4.52)
, based on the SAV method, is a vector version
of (4.9) and is written:
(ρAδttIl)un=1
hµt+ψn1/2
gn
+j(xi)Fn,(4.58a)
δt+ψn1/2
= (gn
)δt·un.(4.58b)
The second equation discretises the chain rule
(4.54)
and serves as the update for the auxiliary
variable. Here,
l
is a suitable discretisation of the linear operator, which can be implemented
as in equation
(3.97)
. The energy balance remains the same as obtained in equation
(3.99)
,
and the discrete energy now takes the form:
hn1/2=ρAh
2Dδtun,I1D2δtunE
+T0h
2Dζn1,ζnE+EI0h
2DD2un1,D2unE+ψn1/2
2
2.
(4.59)
Since the nonlinear component only adds a non-negative term to the linear energy
(3.98)
, the
stability condition is governed by the linear part and remains the same as given in equation
(3.101).
94 Geometric nonlinearities
An update equation for scheme
(4.58)
is obtained by expanding the operators and substi-
tuting the second equation into the first one, obtaining:
An
un+1 =bn,(4.60a)
bn=Bun+Cun1+k2
ρAh(1+σ0k)1
4gn
(gn
)un1gn
ψn1/2
+j(xi)Fn.(4.60b)
The matrices take the form:
An
=I+k2
4ρAh(1+σ0k)gn
(gn
),(4.61a)
B=1
1+σ0kh2I+T0k2
ρA + 2σ1kD2EI0k2
ρA D4i,(4.61b)
C=1
1+σ0kh(σ0k1)I2σ1kD2i.(4.61c)
System
(4.60)
is linearly implicit, as solving it requires inverting a full, state-dependent
matrix at each time step. However, the update matrix
An
is in the form of the identity matrix
plus a rank-one perturbation, and it may be inverted through the Sherman-Morrison formula
[189, 28]. Thus, the following update form is obtained:
un+1 =bn
k2
4ρAh(1+σ0k)gn
[(gn
)bn]
1 + k2
4ρAh(1+σ0k)(gn
)gn
,(4.62)
which is fully explicit, allowing for a significant reduction in computation time. Once
(4.62)
is solved for un+1,ψn+1/2
can be computed via (4.58b) as:
ψn+1/2
=ψn1/2
+gn
2un+1 un1.(4.63)
Note that, although this result was derived starting from Systems T and K, the update
(4.62)
is entirely independent of the specific form of the nonlinearity
gn
. Consequently, this
formulation can serve as a numerical solver for any model of transverse string vibration
where the linear part is time-invariant. The only system-specific variation lies in the discrete
nonlinear potential, which can be computed at each time step nas
¯
gn
=uΦn
/q2Φn
,(4.64)
where the bar indicates that the gradient is computed analytically.
4.5 Simulation of nonlinear transverse string vibration 95
For Systems K and T, the analytic gradients take the forms:
¯
gn
K=sEA
LhD2un,(4.65a)
¯
gn
T=(EA T0)hD+(ζn)3
2rEAT0
4h(ζn)2i(ζn)2+ε
.(4.65b)
Note that, for System K, the denominator simplifies when
ε= 0
, which also eliminates the
risk of division by zero. On the other hand, the potential cannot be simplified for System
T, and a nonzero
ε
must be used. The system needs to be initialised by setting appropriate
initial conditions. One may set
u0=u(0)
, and a technique for retrieving a second-order
accurate value for
u1
, based on Taylor arguments, is detailed in Chapter 3. The auxiliary
variable can be then initialised at time-step n= 1/2with: ψ1/2=q2Φ(µt+u0).
The modal system (4.57) may be integrated in time analogously, writing:
δttI˜
lwn=µt·˜
ψn1/2
K˜
gn
K+1
ρAχ(xi)Fn,(4.66a)
δt+˜
ψn1/2
K= (˜
gn
K)δt·wn,(4.66b)
where:
˜
l=2Cδt·,(4.67)
and
I
is the identity matrix of size
M×M
. The modal gradient
¯
˜
gn
can be computed
analytically by evaluating the potential
(4.40)
at time step
n
as:
¯
˜
gn=w˜
Φn
K/q2˜
Φn
K
. An
energy analysis is run by taking an inner product of
(4.66a)
by
ρA(δt·wn)
and yields the
stability condition
(3.45)
, setting a limit on the maximum number of modes
M
. Alternatively,
the exact scheme in
(3.36)
can be used to integrate the linear part, eliminating the need for
a stability condition and avoiding numerical dispersion issues. In this case, a limit on the
number of modes may be set up to the hearing range. A scheme of the form
(4.66)
can be
expanded to obtain an update equation entirely equivalent to (4.60).
The same procedure can be applied to simulate the double-polarisation strings in
(4.41)
and (4.42).
4.5.3 Numerical testing
System K
Figure 4.3a displays the time solution, the energy error and the spectrogram of system
(4.58)
,
with potential
(4.65a)
. Here, the energy error must be defined so that the total energy takes
96 Geometric nonlinearities
0 50 100 150 200
-0.01
0
0.01
u(xo) (m)
100 150 200 250 300 350 400
Time (ms)
0
0.5
1
Frequency (kHz)
0 50 100 150 200
-10
-5
0
H
10-12
(a)
10-3 10-2
h (m)
10-7
10-6
10-5
10-4
|Enk = 0.03|
global error
slope -1
slope -2
0 5 10 15 20 25 30
Time (ms)
0
1
2
3
4
|En|
10-7
OF=16
OF=64
OF=256
(b)
Fig. 4.3 (a) Waveform, energy error and spectrogram of system
(4.58)
with potential K. The
algorithm is run at OF = 10.
(b) Convergence test for system K. The target solution is obtained at OF
= 512
. The SAV
scheme is run at OF
= 2a
, with
a= [0,8]
integer. Two reference lines are included for
comparison: a dash-dotted line with a slope of
1
and a dashed line with a slope of
2
.
Physical parameters are:
ρ= 8 ×103
Kg/m
3
,
T0= 75
N,
A= 3.97 ×107
m
2
,
E= 174
GPa,
σ0= 0.92
,
σ1= 2.86 ×104
. The output point
xo=L/2
is located at the midpoint of
the string. The system is initialised in its first mode of vibration, with an amplitude of
1.5
cm.
4.5 Simulation of nonlinear transverse string vibration 97
into account the accumulated dissipated power; thus, it is expressed as:
Hn+1/2= 1 (Hn+1/2
tot )/(h1/2), Hn+1/2
tot hn1/2+
n
X
ν=0
Qνk. (4.68)
The second plot shows that the energy is indeed conserved, with an error within the order of
machine accuracy. The different zooming times on the third panel highlight the pitch glide
introduced by the nonlinear term, and the nonlinear behaviour is further emphasized by the
appearance of two additional peaks in the spectrum.
A convergence test is performed similarly to that for the SHO in Chapter 3, and dis-
played in Figure 4.3b. Unlike the oscillator case, no analytical solution is available here.
Instead, a target solution is computed using the integrator from [24, Chapter 8], with a high
oversampling factor (OF). The OF is an integer number such that the final sample rate is
OF ×fs
. Here, it was chosen
fs= 44.1
kHz. The global error is then calculated between
the target solution and the solutions computed with system
(4.58)
, run with an increasing
OF. The first panel of Figure 4.3b represents the global error of scheme
(4.58)
, computed
at time
nk = 0.03
s and plotted on a logarithmic scale with two reference lines of slope
1
and
2
. The global error is defined in equation
(3.87)
, where now
¯u
is the target solution,
and
lh =xo=L/2
. The second panel shows the evolution of the error over time for three
solutions computed at different sample rates. An increasing offset of
5×108
is added to the
plots for improved readability. Since the spatial sampling step is linked to the time step from
the stability condition
(3.101)
, the global error is plotted against
h
, which was chosen so that
h= 1.01¯
h, following the rule of thumb #4 reported in [24, Chapter 8]. A comparison with
the reference lines shows that the error decreases with order
h2
, confirming that the scheme is
convergent and second-order accurate. Similar results were obtained with the modal scheme
(4.66)
. Note that, in this case, unlike the Duffing oscillator, convergence is achieved even
with ε= 0.
System T
Figure 4.4a displays the time evolution, energy error and spectrogram of system
(4.58)
,
with potential
(4.65b)
. This potential introduces stronger nonlinear behaviour, which is now
clearly evident in the time domain plot. Energy is still conserved despite the error presenting
more oscillations than in the previous case. The same convergence test used for System K is
applied here. The target solution is computed using the integrator proposed in [
23
], run at a
high OF. Results are displayed in Figure 4.4b. In the second panel, an increasing offset of
5×106
is added to the plots to improve readability. The time evolution of the error shows
higher oscillations compared to System K. However, second-order accuracy is still evident in
98 Geometric nonlinearities
0 50 100 150 200
-0.01
0
0.01
u(xo) (m)
0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8
Time (s)
0
0.5
1
Frequency (kHz)
0 50 100 150 200
0
2
4
H
10-13
(a)
10-3 10-2
h (m)
10-7
10-6
10-5
10-4
|Enk = 0.03|
global error
slope -1
slope -2
0 5 10 15 20 25 30
Time (ms)
0
1
2
3
|En|
10-5
OF=16
OF=64
OF=256
(b)
Fig. 4.4 (a) Waveform, energy error and spectrogram of system
(4.58)
with potential T. The
algorithm is run at OF = 10.
(b) Convergence test for system T. The target solution and the SAV scheme are run at the
same OFs listed in Figure 4.3b.
String parameters are as listed in Figure 4.3. The system is initialised in its first mode of
vibration, with an amplitude of 1cm.
4.5 Simulation of nonlinear transverse string vibration 99
the first panel, confirming the numerical convergence of the SAV algorithm. Note that an
arbitrary potential shift ε= 3 ×105was set in all tests.
During testing of System T, anomalous behaviour of the corresponding auxiliary variable,
ψn1/2
T
, was observed, which is reported in Figure 4.5a. In this test, System T was run
with OF
= 10
and initialized with two different amplitudes, using the same potential shift,
now set as
ε=ϵm
. It can be noted that
µt+ψn1/2
T
exhibits a sign flip and fails to decay to
its theoretical minimum
ε
for the higher initial displacement, instead showing long-term
drift. This leads to unnatural behaviour in longer simulations. The issue is significantly
reduced when using higher oversampling factors. However, employing very high sample rates
diminishes the advantage of the SAV approach, as it compromises real-time computation.
Notably, this issue was not observed in System K.
4.5.4 Psi constraint
Problems similar to that observed in Figure 4.5a have been encountered in other studies
[
120
,
216
] when using SAV. Extensive research on this topic has been conducted, particularly
in collision modelling. It is known that consistently using the analytic value
¯
gn
can lead to
anomalous behaviour in the auxiliary variable
ψn1/2
, which, along with other problems,
exhibits spurious sign flipping [
216
], causing the resulting force to be oriented incorrectly. In
that study, which focuses on collisions, Van Walstijn et al. propose a solution by imposing
the constraint
ψn+1/2
0
. This results in a quadratic equation yielding a scaling factor for
¯
gn
. Here, in order to tackle the issue observed in Figure 4.5a, a similar method is developed,
based on the constraint:
µt+ψn1/2
0.(4.69)
Indeed, from
(4.58a)
, it can be noted that if
µt+ψn1/2
remains positive, the sign of the force
is determined solely by
gn
, ensuring the correct orientation of the nonlinear force density
F
.
By expanding the mean operator and considering equation (4.58b), the constraint becomes:
2ψn1/2
+1
2(gn
)(un+1 un1)0.(4.70)
Then, one may substitute the update form
(4.62)
in place of
un+1
and solve for
gn
, obtaining:
4ψn1/2
+ (gn
)Bun+Cun1un10.(4.71)
Now, define
gn
γ¯
gn
,(4.72)
100 Geometric nonlinearities
1 1.5 2 2.5 3
Time (s) 10-3
-0.06
-0.05
-0.04
-0.03
-0.02
-0.01
0
0.01
0.02
t+
No Constr.
1 cm
3 cm
(a)
1 1.5 2 2.5 3
Time (s) 10-3
-0.06
-0.05
-0.04
-0.03
-0.02
-0.01
0
0.01
0.02
t+
With Constr.
1 cm
3 cm
(b)
Fig. 4.5 (a) Decay of
µt+ψn1/2
T
over time for System T. The string was initialised with
increasing amplitudes of
1
and
3
cm, and the scheme was run with OF
= 10
and
ε=ϵm
.
The string physical values are as in Figure 4.3.
(b) Decay of µt+ψn1/2
Tover time for System T with the constrained gradient (4.72).
4.5 Simulation of nonlinear transverse string vibration 101
No SAV
0.5 1 1.5 2 2.5
Time (s)
0
0.5
1
1.5
Frequency (kHz)
(a)
SAV No Constr.
0.5 1 1.5 2 2.5
Time (s)
0
0.5
1
1.5
Frequency (kHz)
(b)
SAV With Constr.
0.5 1 1.5 2 2.5
Time (s)
0
0.5
1
1.5
Frequency (kHz)
(c)
Fig. 4.6 Spectrograms resulting from the simulation of System T with external forcing, using
(a) the integrator from [
23
], (b) SAV with the analytic gradient
(4.65b)
(c) SAV with the
constrained gradient
(4.72)
. The string physical parameters match those in Figure 4.3. The
force amplitude and duration are set to
famp = 5
N and
∆=2
ms, respectively, with the
input applied at
xi= 0.8L
. The output point,
xo=L/2
, is located at the string midpoint.
The schemes are run with OF= 2,ε=ϵmand h= 1.05¯
h.
102 Geometric nonlinearities
0 0.5 1 1.5 2 2.5 3
Time (s) 10-3
-0.03
-0.02
-0.01
0
0.01
0.02
0.03
0.04
0.05
0.06
0.07
t+
No Constr.
(a)
0 0.5 1 1.5 2 2.5 3
Time (s) 10-3
-0.03
-0.02
-0.01
0
0.01
0.02
0.03
0.04
0.05
0.06
0.07
t+
With Constr.
(b)
Fig. 4.7 Behaviour of
µt+ψn1/2
T
(a) without and (b) with the constraint applied, under
external forcing. Simulation details match those described in Figure 4.6.
4.5 Simulation of nonlinear transverse string vibration 103
where
γ
is a scalar, and
¯
gn
is the analytic gradient. Then,
(4.71)
becomes a first-order,
scalar inequality in
γ
. The linearity of the expression guarantees a unique solution under the
condition:
γ 4ψn1/2/Z,Z(¯
gn
)Bun+Cun1un1(4.73)
Equation
(4.73)
yields a scalar multiplier for
¯
gn
, to be applied when
(4.71)
is not satisfied
for gn
=¯
gn
. Thus, γis set as:
γ=
ϑ4ψn1/2
Z:Z=0&Z<4ψn1/2
1 otherwise,
(4.74)
where
ϑ
is a scalar multiplier that allows for shifting condition
(4.73)
away from the equality
limit. Unless otherwise specified, it is set
ϑ= 1
. Note that the second term in
Z
corresponds
to the linear string update minus the string state at time instant
n1
, and it vanishes only
when these two are equal.
Running the same test reported in Figure 4.5a on System T, using the constrained gradient
form
(4.72)
yields the results illustrated in Figure 4.5b. It can be observed that the method
effectively corrects the behaviour of the auxiliary variable.
As a second test, System T is excited by an external force and run with a lower OF
to observe the effects of applying the constraint in a more typical simulation setting. The
external force is pointwise, centred at
xi
, with the time function modelled as a half raised
cosine to simulate a pluck:
Fe(x, t) = δ(xxi)F(t), F (t) =
famp sin2π(tte)
2∆ :tette+
0 otherwise (4.75)
where here,
famp
is a maximum amplitude in N,
te
is the start time of the pulse in s, and
is
the duration in s. The simulation is run first using the integrator from [
23
] as a reference, and
then using SAV both with the analytic gradient form
(4.65b)
and the constrained form
(4.72)
.
The simulation results are presented as spectrograms, respectively, in Figures 4.6a, 4.6b and
4.6c. It is possible to observe that scalar auxiliary variable (SAV) with the analytic gradient
fails to reproduce the behaviour from Figure 4.6a, while applying the constraint significantly
improves the results. The behaviour of the auxiliary variable for System T,
µt+ψn1/2
T
, as
shown in Figures 4.7a and 4.7b, reflects these results. Without the constraint, the mean of
the auxiliary variable becomes negative, leading to an incorrect sign for the nonlinear force
density. Conversely, Figure 4.7b demonstrates that the constraint effectively maintains a
104 Geometric nonlinearities
positive sign for the mean of the auxiliary variable. Audio files for this test are available on
the companion page.
Testing on the global error report similar results to those obtained without the constraint,
indicating second-order convergence of the system with the constraint applied. Nevertheless,
further evaluation is required to assess the performance of this technique in different scenarios.
Particularly, two factors significantly influence the accuracy of the final result: the shift from
the value
¯
h
and the potential shift
ε
. Both were observed to play a major role in the
final outcome but were chosen arbitrarily in these tests. Still, for System T, second-order
convergence was observed across different values of εand shifts from ¯
h.
As mentioned earlier, a study by Zama et al. on the Duffing oscillator [
231
] demonstrated
that adjustments to the potential shift can affect the algorithm’s convergence properties;
however, no constraint on the auxiliary variable was imposed in that case. Thus, further
investigation of these aspects is left for future work.
4.6 Simulation of the geometrically exact string
A simulation of the GE string using IEQ [
73
,
78
] and SAV [
26
,
77
] was performed by
Ducceschi and Bilbao. A summary is provided here. First, one may perform a spatial
discretisation of equations
(4.14)
, obtaining, with simply supported boundaries, two state
vectors uand vof length N1. The semi-discrete transverse linear operator follows from
equation (3.96), while an approximation of the longitudinal linear operator results in
Lv=T0D22ρAσl
d
dt.(4.76)
The discrete version of ξis given as the vector: ξ=Dv, of length N.
Again, there are two methods for quadratisation: in IEQ, one may quadratise the semi-
discrete potential density
EA T0
2q(1 + ξ)2+ζ212
,
obtaining a vector auxiliary variable. This is the method employed in [
73
,
78
]. Alternatively,
in SAV, one can define a discrete form of the total nonlinear potential (4.23) as:
ΦG=h
N
X
i=1
EA T0
2q(1 + ξi)2+ζ2
i12
.(4.77)
4.6 Simulation of the geometrically exact string 105
Then, the semi-discretised equation may be written in vector form as:
ρA d2
dt2IL0
0ρA d2
dt2ILv
u
v
=1
h
D+ζΦG
D+ξΦG
+
j(xi)
0
F, (4.78)
where the nonlinear force was written in terms of the analytic potential gradients
ζΦG
and
ξΦG. Quadratisation can now be performed by defining:
ψGq2ΦG.(4.79)
Following the procedure outlined earlier, the quadratised system can be written as:
ρA d2
dt2IL0
0ρA d2
dt2ILv
u
v
=1
hψG
gGu
gGv
+
j(xi)
0
F, (4.80)
where the new gradients are defined as:
gGu,v D+ζ,ξψ=D+ζ,ξΦn
G/q2Φn
G+ε. (4.81)
Note that, unlike in the transverse system, the gradients are now given in terms of
ζ
and
ξ
:
one may switch variables with (4.45). Application of the chain rule gives:
dψG
dt=hg
Gu,g
Gvid
dt
u
v
.(4.82)
An energy analysis, omitted here, may be obtained by taking an inner product with
hd
dt[u,v], and yields a result analogous to that obtained for the transverse system.
Time integration can be performed with the SAV procedure, analogously to the transverse
system. The time-stepping algorithm is now expressed as:
ρAδttIl0
0ρAδttIlv
un
vn
=1
hµt+ψn1/2
G
gn
Gu
gn
Gv
+
j(xi)
0
Fn,(4.83a)
δt+ψn1/2
G=hg
Gu,g
Gviδt·
un
vn
,(4.83b)
where
lv=T0D22ρAσlδt·
. This defines a three-step scheme equivalent to
(4.58)
. Expand-
ing the operators allows for an efficient, explicit update by applying the Sherman-Morrison
formula.
106 Geometric nonlinearities
The energy analysis is run by taking an inner product with
t·[(un),(vn)]
. As before,
a passive energy balance is achieved in the unforced case, and the nonlinear component adds
only a non-negative term to the total energy. Thus, a stability condition can be derived by
examining the linear part alone, resulting in equation
(3.101)
. However, as noted in [
73
,
77
],
applying this condition leads to aliasing issues due to the significant difference in wave
speed between longitudinal and transverse motion. Instead, one can use
h=qE/ρk
, the
CFL condition associated with longitudinal motion, which is much less restrictive than the
natural limit for transverse waves. This impacts the choice of the sample rate, which must be
significantly higher than typical audio rates, with OFs of at least
12
. In [
78
], longitudinal
motion is spatially discretized using a modal expansion to address this issue. However,
low OFs in this approach result in a minimal number of longitudinal modes that can be
represented.
The behaviour of
µt+ψn1/2
G
in this system has not been analyzed, and the effects of
applying the constraint have not been observed yet. It is possible that the high oversampling
required for longitudinal motion may reduce the need for a constraint on the auxiliary variable.
However, further investigation is necessary to confirm this.
Chapter 5
Collisions
Collisions play a fundamental role in musical acoustics. In the context of strings, collisions
occur in various scenarios, such as in hammered strings (e.g., in pianos) or in the interaction
between the string and the fretboard of guitars. As discussed in Chapter 1, two primary
approaches exist for mathematically modelling collisions. The first models rigid contact,
while the second, known as the penalty method, is based on Hertz’s contact formulation.
In this work, the second approach is employed, as it allows for the modelling of object
compression by permitting a degree of mutual interpenetration. As in previous chapters, the
discussion begins with a simple case study, a mass-barrier collision, and then extends to the
spatially distributed case of string-fretboard interaction.
5.1 Collision of a mass against a rigid barrier
Though not directly related to a musical instrument, the mass-barrier collision provides a
useful introductory test case for evaluating numerical schemes. The system can be represented
by a SHO with an additional nonlinear forcing term. It is more practical to express the system
in mass-stiffness form as:
md2u
dt2=Ku dϕb
du.(5.1)
The collision potential is written:
ϕb=Kb
αb+ 1[bu]αb+1
++ε
2,(5.2)
where
[·]+
indicates the "positive part of", defined as
[x]+= (x+|x|)/2
. Here,
Kb0
is
a constant representing the barrier’s stiffness,
αb1
is the nonlinearity exponent, which
controls the degree of interpenetration between the objects, and
b0
is a constant offset
108 Collisions
m
K
u(t)
b
0
-dφb/du
Fig. 5.1 Schematic of system
(5.1)
with potential
(5.2)
. The red arrow indicates the direction
of the collision force dϕb
du.
representing the barrier position, which lies below the mass. The collision force is thus active
only when the mass is in contact with the barrier and is otherwise zero. Thus, the potential is
non-negative. A schematic of the system is depicted in Figure 5.1. The energy analysis is
obtained by left-multiplying equation (5.1) by mdu
dt. Using the chain rule:
dϕb
du=dϕb/dt
du/dt,(5.3)
one gets:
d
dtH= 0, H =m
2 du
dt!2
+Ku2
2+ϕb.(5.4)
Thus, the energy balance is passive, and the solution may again be bounded in terms of the
initial energy.
5.1.1 Potential quadratisation
Potential quadratisation can now be performed analogously to the Duffing oscillator, using
an auxiliary variable ψb. The energy may be then written accordingly as:
H=m
2 du
dt!2
+Ku2
2+ψ2
b
2(5.5)
5.1 Collision of a mass against a rigid barrier 109
Next, using the definition of gfrom (2.18), equation (5.1) is re-written as:
d2u
dt2=Ku ψbgb,dψb
dt=gb
du
dt, gb=Kb[bu]αb
+
q2Kb
αb+1 [bu]αb+1
++ε.(5.6)
Note that this equation has the same form of
(4.6)
, the only difference being the form of
g
,
and it can be integrated in time using the same method.
5.1.2 Simulation
As discussed in the introduction, developing energy-conserving schemes for collisions
modelled using the penalty method has gained significant attention in recent years. For
mass-barrier interactions, fully implicit approaches have been explored in [
53
,
34
], though
these will not be covered here. Recently, there has been growing interest in using linearly
implicit or fully explicit methods by discretizing the quadratised equations through IEQ/SAV
techniques. In particular, a discrete version of the quadratised scheme
(5.6)
is derived
analogously to the Duffing oscillator case, as:
ttun=Kunµt+ψn1/2
bgn
b,(5.7a)
δt+ψn1/2
b=gn
bδt·un.(5.7b)
As with the nonlinear oscillator, the discrete energy balance is conservative, with the discrete
energy now given as:
hn1/2m(δtun)2
2+K unetun
2+ψn1/2
b2
2.(5.8)
The scheme is second-order accurate, as all the operators are centred. Expanding the operators
yields the explicit update:
kgn
b
2m!2
+ 1
un+1 =2ω2
0k2un+
kgn
b
2m!2
1
un1k2
mψn1/2
bgn
b.(5.9)
Testing conducted in [
81
] reports convergence of this numerical scheme, although conver-
gence of the auxiliary variable was not examined.
110 Collisions
5.1.3 Gradient calculation
As discussed in Chapter 4, significant effort has been devoted in recent years to optimizing
the computation of the potential gradient in collision modelling. The analytic form can be
computed at time-step nas:
¯gn
b=
sKb(αb+ 1)
2[bun]αb1
+:ε= 0
Kb[bun]αb
+
q2Kb
αb+1 [bun]αb+1
++εotherwise.
(5.10)
However, consistently applying this analytic expression leads to two main issues: (a) the
auxiliary variable experiences sign flipping, resulting in incorrect force orientation, and (b)
the contact energy remains non-zero after contact [
216
]. While the first problem has already
been encountered in Chapter 4, the latter is specific to collisions, where the nonlinear force
is not always active, unlike in the geometric nonlinearity case. In [
81
], Ducceschi et al.
introduced conditional branching for gradient computation. This form is defined here
gb,1
and expressed as:
gn
b,1=
gn
b,: (bun)0 & 1
4gn
b,(bun1)ψn1/2
b
0 : (bun)0 & 1
4gn
b,(bun1)< ψn1/2
b
2ψn1/2
b
(2 ω2
0k2)un2un1: (bun)<0,
(5.11)
with
gn
b,=
¯gn
b:ψn1/2
b0
¯gn
b:ψn1/2
b<0.
This approach effectively address the second issue, eliminating spurious energy after contact.
However, as noted in [
216
], the contact energy does not always have the correct sign. In that
study, Van Walstijn et al. propose to enforce the constraint
ψn+1/2
b>0
to ensure proper force
orientation during collisions. This leads to the quadratic constraint equation:
k2
4mψn1/2
b(gn
b)2+gn
bun111
2ω2
0k2u
| {z }
a
ψn1/2
b0.(5.12)
5.1 Collision of a mass against a rigid barrier 111
Following [216], solving for gn
byields the roots:
˙gn
b,±= 2a±ra2+k2
mψn1/2
b2
rk2
mεa2+k4
m2ψn1/2
b4,(5.13)
(note that the dot does not indicate time differentiation here). The gradient, defined here
gb,2
,
is then set as follows:
gn
b,2=
max(¯gn
b,˙gn
b,) : (bun)>0
˙gn
b,: (bun)=0&(bun1)>0
0 otherwise.
(5.14)
In this formulation, the first branch ensures the auxiliary variable remains positive, while the
second branch sets the contact force to zero after the contact event. Note that Van Walstijn et
al. [
216
] employ the exact integrator in equation
(3.36)
; the constraint was here re-derived
for the second-order accurate integrator.
Finally, the technique described in Chapter 4 is adapted here to handle collisions. The
idea is to impose again the constraint
µt+ψn1/2
b0
. By expanding the mean operator and
using (5.7a), equation (4.70) simplifies in the lumped case to:
4ψn1/2
b+gn
bun+1 un10.(5.15)
where the form for
gn
b
is still undefined. Substituting the expression for
un+1 (5.9)
yields the
inequality:
4ψn1/2
b+gn
bh2ω2
0k2un2un1i= 4ψn1/2
b2gn
ba0,(5.16)
where
a
is the quantity defined in equation
(5.12)
. As in the distributed case discussed in
Chapter 4, the term
(2 ω2
0k2)un2un1=2a
corresponds to the difference between
the linear update and the mass state at time step
n1
, vanishing only when these two are
equal. Finally, the gradient (defined here gb,3) is set as:
gn
b,3=
ϑ4ψn1/2
b
2a: (bun)>0&4ψn1/2
b+z<0 & a= 0
ϑ4ψn1/2
b
2a: (bun)=0&(bun1)>0 & a= 0
¯gn
botherwise
(5.17)
112 Collisions
4.7 4.8 4.9 5 5.1 5.2 5.3
Time (ms)
0
0.1
0.2
0.3
0.4
0.5
Mass Displacement (mm)
SAV0
SAV1
SAV2
SAV3
Fig. 5.2 Single collision event simulated using the scheme
(5.9)
, with gradients
(5.10)
,
(5.11)
,
(5.14)
and
(5.17)
, referred to as SAV0, SAV1, SAV2 and SAV3, respectively. The sample
rate is
fs= 44100
Hz. Physical parameters are:
m= 0.01
Kg,
K= 0
rad/s,
Kb= 109
,
αb= 1.3
. The barrier is positioned at
b= 0
and is represented by the black horizontal line.
The mass is initialised with u0= 0.01m and v0=2m/s, and it is used ε= 0.
where it was defined:
z¯gn
bh2ω2
0k2un2un1i=gn
ba, (5.18)
and, as before,
ϑ
and
ϑ
are scalar multipliers shifting the constraint from the equality. In
the first branch, if equation
(5.16)
is not satisfied with
gn
b= ¯gn
b
, the gradient is adjusted to
enforce the inequality
(5.16)
. The second branch ensures that the contact force is set to zero
immediately after the contact event. Otherwise, the analytic gradient is applied. Additionally,
verifying that
a= 0
in the first two branches serves as an extra safeguard against division by
zero. Note that setting
ϑ= 0
means the nonlinear energy is not reduced to zero immediately
after contact but takes a few samples. Consequently, the natural choice would be to set
ϑ= 1
in all cases. However, this approach leads to spurious oscillations of the auxiliary variable
around the Nyquist frequency. It was observed that introducing a scalar to relax the condition
helped mitigate these oscillations.
5.1 Collision of a mass against a rigid barrier 113
4.5 5 5.5
0
0.02
Energy Components (J)
Tot
Kin
b
2/2
0 2 4 6 8 10
Time (ms)
-3
-2
-1
0
H
10-14
(a)
4.5 5 5.5
0
0.02
Energy Components (J)
Tot
Kin
b
2/2
0 2 4 6 8 10
Time (ms)
-1.5
-1
H
10-14
(b)
4.5 5 5.5
0
0.02
Energy Components (J)
Tot
Kin
b
2/2
0 2 4 6 8 10
Time (ms)
0
2
4
6
H
10-14
(c)
4.5 5 5.5
0
0.02
Energy Components (J)
Tot
Kin
b
2/2
0 2 4 6 8 10
Time (ms)
0
5
H
10-14
(d)
Fig. 5.3 Energy plots for the collision event shown in Figure 5.2 for (a) scheme SAV0, (b)
scheme SAV1, (c) scheme SAV2, and (d) scheme SAV3. The top plots display the total
energy
hn1/2
in blue (from
(5.8)
), kinetic energy
(δtun)2/2
in red, and nonlinear potential
energy
ψn1/2
b2/2
in yellow. Note that since
K= 0
, the linear potential energy is zero.
The bottom plots show the energy error, computed as H=hn1/2/h1/21.
114 Collisions
0 5 10 15 20 25 30
Time (ms)
0
0.5
1
Mass Displacement (m)
SAV1
SAV2
SAV3
0 5 10 15 20 25 30
Time (ms)
-4
-2
0
Collision Force (N)
104
SAV1
SAV2
SAV3
(a)
0 5 10 15 20 25 30
Time (ms)
0
0.5
1
Mass Displacement (m)
SAV1
SAV2
SAV3
0 5 10 15 20 25 30
Time (ms)
-4
-3
-2
-1
0
Collision Force (N)
105
SAV1
SAV2
SAV3
(b)
Fig. 5.4 Multi-collision event simulated using the scheme
(5.9)
, with gradients
(5.11)
,
(5.14)
and
(5.17)
, referred to as SAV1, SAV2 and SAV3, respectively. The stiffness is set to
K= 3.95 ×103
N/m (giving a linear eigenfrequency of
100
Hz). The mass is initialised
with
u0= 1
m and
v0=2
m/s. Other parameters match those in Figure 5.2. In (a), the
barrier stiffness is
Kb= 106
, and in (b),
Kb= 109
. The top plots show the solution, while
the bottom plots display (the negative of) the collision force, computed as
gn
bµt+ψn1/2
. The
sample rate is fs= 44100 Hz.
5.1 Collision of a mass against a rigid barrier 115
105106
fs (Hz)
10-6
10-4
10-2
|Enk = 0.02|
Fig. 5.5 Convergence test for scheme SAV3. The target solution is generated by running
SAV2 with OF
= 512
. Scheme SAV3 is run with OF
= 2a
, with
a= [0,5]
integer. The
dashed line represents a slope of 2for comparison.
5.1.4 Numerical testing
As a first experiment, the quadratised scheme
(5.9)
is tested using the four gradients
(5.10)
,
(5.11)
,
(5.14)
and
(5.17)
, referred to as SAV0, SAV1, SAV2 and SAV3, respectively, in a
single collision event. The results are presented in Figures 5.2 and 5.3. It is observed that
the trajectories of SAV1-3 are nearly identical after the collision, while the analytic scheme
SAV0 exhibits a noticeable deviation. This discrepancy is explained by the energy plots
in Figure 5.3, which show the discrete energy components and the energy error for each
system. In SAV0, the auxiliary variable does not return to zero after the collision, leading to a
non-zero nonlinear potential energy even during non-collision periods. This is the anomalous
behaviour reported by [
74
], [
81
] and [
216
]. Since the total numerical energy is conserved, as
shown in the bottom plot, this numerical anomaly manifests as a reduction in kinetic energy
after the collision, resulting in an altered trajectory. In contrast, SAV1-3 produce correct
energy behaviour. In particular, the correction for
gn
b
can be observed, taking effect in the
sample immediately after the collision, at which point the energy components assume their
correct values. In case of the gradient SAV3, it is set
ϑ= 1
and
ϑ= 0.5
if
4ψn1/2
b
2a<0
,
ϑ= 1
otherwise. As noted earlier, spurious high-frequency oscillations in the auxiliary
variable were observed when ϑ= 1 was used consistently.
A second test, shown in Figure 5.4, involves a multiple collision event. Since previous
testing has demonstrated that system SAV0 is unreliable, only the remaining systems, SAV1,
SAV2, and SAV3, are considered here. Figure 5.4 presents the mass displacement and
collision force for two different barrier stiffness values. The initial displacement was set
116 Collisions
particularly high to test the schemes under more stressful conditions. It is observed that, with
lower stiffness, all schemes produce comparable results. However, as stiffness increases,
differences between the solutions emerge. Notably, Figure 5.4b shows that the SAV1 scheme
produces incorrectly oriented forcing in some instances, as predicted by [
216
]. Figure 5.5
shows a convergence test for scheme SAV3, using the same parameters as those in Figure
5.4b. The reference solution was obtained by running scheme SAV2 with an OF of
512
. A
comparison with a line of slope
2
confirms that the scheme achieves second-order accuracy.
The value ε=ϵmis used when computing equation (5.13) in all tests.
Additional investigation is needed to assess how well the constrained form SAV3 performs
compared to SAV2 for different physical parameters. Moreover, further research is needed
on the effects of the scaling coefficients ϑand ϑand is left for future work.
5.2 Lumped collision: finger or hammer against a string
One common example of a collision in musical instruments is a stopping finger pressing
the string. In this case, the interpenetration represents the compression of the finger during
contact with the string. This concept has been applied in guitar models to simulate finger
articulation [
32
], typically in conjunction with a fretboard model. The same model is often
used to simulate hammer-string interactions [
81
], with the difference being that the hammer
is usually provided with an initial velocity rather than an externally applied force. For
simplicity, no geometric nonlinearity will be considered here, and the string will be treated
as linear. The model can be expressed as:
ρA∂2
t Lu=δ(xxH)uϕH(5.19a)
mH
d2UH
dt2=UHϕH+FH,(5.19b)
where external forces on the string are omitted. The second equation models the dynamics of
the hammer (though the term "hammer" is used here, this model is completely analogous to
that of a finger), where
mH
is the hammer mass,
UH
is a function representing its vertical
displacement, and
FH=FH(t)
is an externally supplied driving force, employed to keep a
finger pressed against the string. Typically, this force is not applied to the hammer, which
instead rebounds off the string. The hammer contact is modelled as lumped and located at a
point xHalong the string. The potential ϕH=ϕH(u, UH)has the form:
ϕH=KH
αH+ 1[u(xH, t)UH]αH+1
+.(5.20)
5.2 Lumped collision: finger or hammer against a string 117
Consider the string to have simply supported boundaries. An energy balance can be
obtained by taking the inner product of the first equation with
tu
, left-multiplying the second
equation by dUH
dtand summing. Using the chain rule, this yields:
d
dtH=Q(t) + dUH
dtFH,(5.21)
where Qis as defined in (2.134), and:
H=ρA
2tu2+mH
2 dUH
dt!2
+T0
2xu2+EI0
22
xu2+ϕH.(5.22)
The energy now includes the kinetic term associated with the hammer and the lumped
nonlinear potential. Without an external force applied, the system is passive.
5.2.1 Simulation
A simulation of system
(5.19)
will now be performed using a quadratised approach. First, a
spatial discretisation of the potential (5.20) can be expressed as:
ΦH=KH
αH+ 1 hj(xH)uUHiαH+1
+,(5.23)
and a semi-discrete version of equation (5.19) can be written:
ρA d2
dt2L!u=1
hj(xH)uΦH(5.24a)
mH
d2UH
dt2=UHΦH+FH.(5.24b)
Next, quadratisation is performed by defining:
ψHq2ΦH,(5.25)
and the quadratised system can now be written as:
ρA d2
dt2L!u=1
hψHgH(5.26a)
mH
d2UH
dt2=ψHgH+FH,(5.26b)
118 Collisions
where, following the definition in the final step of (4.53):
gH=uψH, gH=UHψH.(5.27)
The chain rule gives:
dψH
dt=g
H
du
dt+gH
dUH
dt.(5.28)
An energy analysis, omitted here, can be carried out by taking the inner product of the first
equation with hdu
dtand of the second equation with dUH
dt, and summing.
A time integrator based on SAV may now be written as:
(ρAδtt l)un=1
hψn1/2
Hgn
H(5.29a)
mHδttUH=ψn1/2
Hgn
H+Fn
H,(5.29b)
δt+ψn1/2
H= (gn
H)δt·un+gn
Hδt·UH.(5.29c)
The energy analysis takes an inner product of the first equation with
t·un
and the second
by δt·Un
H. Summing yields the energy balance:
δt+hn1
2=Qn+δt·Un
HFn
H,(5.30)
where the loss term is as in equation
(3.100)
. The discrete energy includes the hammer
kinetic term and takes the form:
hn1/2=ρAh
2Dδtun,I1D2δtunE+mH
2(δtUn
H)2
+T0h
2DDun1,DunE+EI0h
2DD2un1,D2unE+ψn1/2
H2
2.
(5.31)
Ensuring the positivity of the energy leads to the stability condition (3.101).
By expanding the operator and combining the two states into a single vector, the system
can be expressed in matrix form as:
An
un
Un
H
=B
un
Un
H
+C
un1
Un1
H
+1
4D
gn
H
gn
H
gn
H
gn
H
un1
Un1
H
D
gn
H
gn
H
ψn1/2
H+
0
k2
mH
Fn
H,
(5.32)
5.3 Distributed collisions: fretboard and frets 119
where the matrices take the following form:
An=
I0
0 1
+1
4D
gn
H
gn
H
gn
H
gn
H
,B=
B0
02
,
D=
k2
ρAh(1+σ0k)I 0
0k2
mH
,C=
C0
01
.
Here,
I
is the
(N1) ×(N1)
identity matrix and
B
and
C
have the form
(4.61)
.
The update matrix retains the structure of an identity matrix with a rank-one perturbation,
allowing for an efficient, explicit update via the Sherman-Morrison formula.
Here, the analytic form of the gradient was employed, and a thorough study of constrained
gradient forms is left for future work. Thus, it is set:
gn
H=KHhj(xH)unUn
HiαH
+
r2KH
αH+1 h(j(xH))unUn
HiαH+1
++ε
,gn
H=j(xH)gn
H.(5.34)
Figure 5.6 presents an illustrative example of a hammer striking the string. The hammer
is given an initial velocity with no external forcing applied. As no restoring force acts on the
hammer, it continues moving at a constant positive velocity after contact while the string is
set into vibration. No comparative study has been conducted to assess the performance of
SAV for this case, thus, the test primarily serves to illustrates the system functionality. An
animation of the hammer-string collision can be found on the companion page.
5.3 Distributed collisions: fretboard and frets
As with geometric nonlinearities, the nonlinear potential becomes a potential density when
collisions are distributed in space. Thus, the model of a string undergoing distributed
collisions is quite similar to the case of transverse nonlinear motion. The continuous equation
remains identical to
(4.43)
, where now
F=uϕ
represents a collision force density based
on a generic potential density ϕ. Two specific systems are examined here: string-fretboard
and string-frets collisions, common in guitars. For these cases, it is often simpler to express
the total nonlinear potentials directly. To this end, the energy analysis is first performed using
the usual approach, taking the inner product of equation
(4.43)
with the velocity. Applying
the chain rule to the nonlinear potential results in a conservative energy balance analogous to
120 Collisions
0 0.1 0.2 0.3 0.4 0.5 0.6
x (m)
-5
0
5
u (m)
10-3 t =0.022676 (ms)
0 0.1 0.2 0.3 0.4 0.5 0.6
x (m)
-5
0
5
u (m)
10-3 t =2.2902 (ms)
0 0.1 0.2 0.3 0.4 0.5 0.6
x (m)
-5
0
5
u (m)
10-3 t =9.093 (ms)
0 0.1 0.2 0.3 0.4 0.5 0.6
x (m)
-5
0
5
u (m)
10-3 t =36.3039 (ms)
0 0.1 0.2 0.3 0.4 0.5 0.6
x (m)
-5
0
5
u (m)
10-3 t =72.585 (ms)
0 0.1 0.2 0.3 0.4 0.5 0.6
x (m)
-5
0
5
u (m)
10-3 t =81.6553 (ms)
Fig. 5.6 Snapshots of the hammer-string collision at the indicated times. The string physical
parameters are:
L= 0.68
m,
E= 2e11
GPa,
T0= 12.1
N,
A= 1.26 ×107
,
ρ= 8 ×103
Kg/m
3
,
σ= 0.92
,
σ1= 6.1×104
. The hammer physical parameters are:
mH= 0.05
Kg,
KH= 1010
,
αH= 1.3
. The hammer has an initial displacement of
0.1
mm and an initial
velocity of
0.1
m/s. The input point is located at
xH= 0.3L
. The sample rate is
fs= 44100
Hz.
5.3 Distributed collisions: fretboard and frets 121
xi
xi
F
e
u(x,t)
b0
Fig. 5.7 Model of a string (in green) with a fretboard (in blue). External excitation is shown
in yellow.
equation (2.136), and the energy is now expressed as:
H=ρA
2tu2+T0
2xu2+EI0
22
xu2+ Φ,(5.35)
where the total nonlinear potential energy was defined:
Φ
qϕ
2
+ε
2.(5.36)
The fretboard (in the absence of frets) is modelled as a smooth function
b(x)
, with
b(x)0
, so that the fretboard lies below the rest position of the string. In the simplest
case, one may assume
b(x) = b0
, representing a constant offset. This situation is depicted in
Figure 5.7. The collision potential in this case is given by:
ΦB=KB
αB+ 1 ZL
0[bu]αB+1
+dx, (5.37)
where KBrepresents the fretboard stiffness and αB1is the nonlinearity exponent.
Now, assume there are
R
frets located at coordinates
x=x1, . . . , xR
(
R
typically ranges
from 19 to 24 for standard guitars). Interactions of the string with the frets are assumed to
occur at the tips, located at a vertical height
m0
, with
m00
so that the rest position of the
string lies above the fret tip. Additionally,
m0b(xr)
for
r= 1, . . . , R
, meaning that the
frets protrude above the fretboard. The resulting collision potential for the frets is:
ΦF=KF
αF+ 1
R
X
r=1
[m0u(xr, t)]αF+1
+,(5.38)
122 Collisions
where as before
KF
and
αF
are constants regulating the nonlinearity. The eventual algorithm
design is insensitive to the placement of frets: for standard semitone tuning, frets should be
located at coordinates xr=L12r/12.
5.3.1 Simulation
A spatial discretisation of a distributed collision system follows analogously to the approach
presented in Chapter 4, with the difference that now the potential depends on the state, rather
than its derivative. Therefore, considering relation,
(4.45)
, the semi-discrete equation
(4.46)
may be re-written as:
ρA d2
dt2L!u=1
huΦ+j(xi)F, (5.39)
where the semi-discrete linear operator
L
is as defined in equation
(3.96)
. Here,
Φ
is a
suitable discretisation of the nonlinear potentials (5.37) and (5.38), taking the forms
ΦB=KBh
αB+ 1
N1
X
l=1
[blul]αB+1
++ε
2(5.40a)
ΦF=KF
αF+ 1
R
X
r=1 hm0j(xr)uiαF+1
++ε
2,(5.40b)
where
b1, . . . , bN1
is the fretboard profile sampled at the
N1
interior grid locations. As
mentioned earlier, one may choose a flat barrier with an offset so that
bl=b0l[1, N 1]
.
Quadratisation can be performed in the same manner as in Chapter 4, by introducing
an auxiliary variable as defined in
(4.51)
. This leads to the quadratised equation of motion
(4.52)
, and the chain rule
(4.54)
, which will serve as the update equation for the auxiliary
variable. The energy analysis yields the same results, with semi-discrete energy taking the
form (4.55).
Time discretisation proceeds in the same way, resulting in the fully discrete system
(4.58)
,
leading to the update form
(4.62)
, and the update for the auxiliary variable follows from
(4.63).
5.3 Distributed collisions: fretboard and frets 123
As for the other systems, the calculation of the potential gradients needs to be handled
carefully. The analytic forms, following from equation (4.64), are:
¯
gn
B=hKB[bun]αB
+
q2KBh
αB+1 PN1
l=1 [blun
l]αB+1
++ε(5.41a)
¯
gn
F=KF[m0dun]αF
r2KF
αF+1 PR
r=1 hm0(j(xr))uniαF+1
++ε
,(5.41b)
where dis a (N1) ×Rmatrix whose columns are the fret interpolators j(xr).
Applying the constraint to distributed collisions is somewhat more complex than in the
case of geometric nonlinearities. In [
216
], the constraint
(5.12)
is extended to handle the
distributed case. Similarly, the constraint
(4.69)
, already adapted for lumped collisions, is
modified here by incorporating a branched form of the gradient, following the approach
in [
216
]. The constraint equation is then derived in the same way as for the geometric
nonlinearity case, resulting in equation
(4.71)
. A scalar multiplier
γ
is then defined, as in
equation (4.72), to scale the analytic gradient such that gn
=γ¯
gn
. This is set as follows:
γ=
ϑ4ψn1/2
Z:Z=0&Z<4ψn1/2
ϑ4ψn1/2
Z:Z=0&Z= 0
1otherwise,
(5.42)
where Zis defined in equation (4.73) and:
Z¯
gn1
Bun+Cun1un1.(5.43)
Note that the equation for
γ
includes an additional branch compared to
(4.74)
. The upper
condition ensures the non-negativity of
µt+ψn1/2
, functioning analogously to what was
seen in Chapter 4, and activates when
(4.71)
is not satisfied for
gn
=¯
gn
. The middle branch
condition is satisfied only during the initial instants without contact. Using the gradient from
the previous time step enforces
µt+ψn1/2
= 0
, ensuring no residual energy is stored during
non-contact periods. As before,
ϑ
and
ϑ
are scalars shifting the constraint away from the
equality limit.
124 Collisions
5.3.2 Numerical testing
The system, with the analytic potential
(5.41a)
, is now tested by initialising it in its first
mode of vibration. Figure 5.8a shows the time solution and spectrogram, while Figure 5.8b
presents the different energy components and the energy error, computed as in
(4.68)
. The
spectrogram reveals significant noise as the time solution remains "trapped" below the barrier,
causing continuous collisions. This behaviour is further explained by the energy plots, where
the nonlinear energy is always active and fails to decay to zero, even though the total discrete
energy is conserved. In contrast, Figures 5.9a and 5.9b show the same data for the system
under identical conditions, but with the constraint
(5.42)
applied. In this case, the time
solution and spectrogram are much cleaner, as collisions only occur in the initial moments.
This is also reflected in the energy plots, showing that the string collides a few times before
the vibration diminishes, preventing further contact with the barrier. The energy behaviour is
paired by the trend of the auxiliary variable
µt+ψn1/2
B
, reported in Figure 5.10 both with and
without the constraint applied. In the first case, the auxiliary variable drops below zero and
oscillates with a noisy behaviour. When the constraint is applied, the trend becomes much
more regular, and the variable remains constrained. It can be seen that it assumes negative
values only for one sample after the collision and then returns to zero. This is the result of
the parameter choice for
ϑ
, which was set, as in the lumped case,
ϑ= 0.5
if
4ψn1/2
Z<0
,
ϑ= 1
otherwise. Figure 5.11 shows the same data as the other figures but with
ϑ= 1
. In
this case, the auxiliary variable remains properly constrained, never becoming negative, but
there is an unusual response in the nonlinear potential, as seen in Figure 5.11b. Additionally,
the energy error drops to the order of
108
. This is likely due to high-frequency oscillations
in the auxiliary variable: while the mean remains zero,
ψn
B
oscillates between two opposing
values at Nyquist frequency. Note that similar results were obtained with the potential
(5.41b)
but are not shown here to avoid redundancy. Audio files relative to this test are available on
the companion page.
This preliminary test suggests that the constraint
(5.42)
yields promising results in
handling collisions. However, further study is needed. Convergence must be verified, and an
investigation into the role of the parameter
ϑ
is required. Additionally, a comparison with
the constraint developed in [216] is necessary. These tasks are left for future work.
5.3 Distributed collisions: fretboard and frets 125
0 0.5 1 1.5 2
-2
0
2
4
u (m)
10-3 No Constr.
0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8
Time (s)
0
1
2
3
4
Frequency (kHz)
(a)
0 50 100 150
Time (ms)
-20
-10
0
H
10-13
0 50 100 150
10-15
10-10
10-5
Energy Components (J)
No Constr.
Tot
Lin
B
2/2
Loss
(b)
Fig. 5.8 (a) Time domain solution and spectrogram, (b) evolution of the energy components
and energy error for the system
(5.41a)
without the constraint
(5.42)
applied. The system is
initialised in its first mode of vibration, with an amplitude of
4
mm. The string parameters
are as specified in Figure 5.6, and the barrier parameters are
KB= 1013,αB= 2.3
. The
string rest position is set to zero, with a flat barrier positioned at
b0=1
mm. The output
point
xo=L/2
is located at the string midpoint. The sample rate is
fs= 44100
Hz. The
value ε=ϵmis used throughout the test.
126 Collisions
0 0.5 1 1.5 2
-2
0
2
4
u (m)
10-3 With Constr.
0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8
Time (s)
0
1
2
3
4
Frequency (kHz)
(a)
0 50 100 150
Time (ms)
0
5
10
H
10-13
0 50 100 150
10-15
10-10
10-5
Energy Components (J)
With Constr.
Tot
Lin
B
2/2
Loss
(b)
Fig. 5.9 (a) Time domain solution and spectrogram, (b) evolution of the energy components
and energy error for the system
(5.41a)
with the constraint
(5.42)
applied. Other details are
as provided in Figure 5.8.
5.3 Distributed collisions: fretboard and frets 127
0 10 20 30 40 50 60 70 80 90
Time (s)
-4
-2
0
2
4
6
8
10
+ b
10-3 No Constr.
(a)
0 10 20 30 40 50 60 70 80 90
Time (s)
-2
0
2
4
6
8
10
+ b
10-3 With Constr.
(b)
Fig. 5.10 Behaviour of the auxiliary variable
µt+ψn1/2
B
for the test reported in Figures 5.8
and 5.9: (a) without and (b) with the constraint (5.42) applied.
128 Collisions
0 0.5 1 1.5 2
-2
0
2
4
u (m)
10-3
0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8
Time (s)
0
1
2
3
4
Frequency (kHz)
(a)
0 50 100 150
Time (ms)
0
10
20
H
10-8
0 50 100 150
10-15
10-10
10-5
Energy Components (J)
Tot
Lin
B
2/2
Loss
(b)
0 10 20 30 40 50 60 70 80 90
Time (s)
0
2
4
6
8
10
+ b
10-3
(c)
Fig. 5.11 Results of the test reported in Figure 5.9, with ϑ= 1 throughout.
Chapter 6
Friction: the bow
As discussed in Chapter 1, friction in stringed instruments is predominantly associated
with the bowing mechanism. When a string is bowed to produce musical tones, it exhibits
Helmholtz motion, alternating sticking and slipping phases. This motion is typically modelled
by a force that depends on the relative velocity between the string and the bow at the bowing
point. The force is thus represented by a friction curve, which varies nonlinearly with
the relative velocity. Several models exist for this friction coefficient, some of which are
illustrated in Figure 6.1. The discussion here begins with the case of a bowed mass and later
extends to spatially distributed cases.
Audio files and code for this chapter are available on the companion page.
6.1 Bowed mass
As in previous chapters, the lumped system serves as an introductory example for numerical
methods. A system with two degrees of freedom, consisting of a SHO excited by a bow, can
be described by two coupled ODEs as [24, Chapter 4]:
d2u
dt2=ω2
0uFCϕC(η)(6.1a)
η=du
dtvC(6.1b)
Here, the function
vC(t)
is the bow velocity in m/s, while
FC(t)>0
is the bow force
normalised by the object mass ("C" here stands for "Cello"). Both are assumed to be known.
Here, the "soft" friction characteristic illustrated in panel (d) of Figure 6.1 is employed. It is
expressed as:
ϕC(η) = 2a η e2+1/2,(6.2)
130 Friction: the bow
-1 0 1
-1
-0.5
0
0.5
1
C( )
-1 0 1
-1
-0.5
0
0.5
1
C( )
-1 0 1
-1
-0.5
0
0.5
1
C( )
-1 0 1
-1
-0.5
0
0.5
1
C( )
(a)
(c)
(b)
(d)
Fig. 6.1 Various friction characteristics: (a) Coulomb dry friction, with equation
ϕC(η) =
sgn(η)/2
; (b) the "classical" curve by Woodhouse and Smith [
192
], with the form
ϕC(η) =
sgn(η)(0.4e−|η|/0.01 + 0.45e−|η|/0.1+ 0.35)
; (c) the reconstructed curve by Galluzzo [
98
],
defined by
ϕC(η) = sgn(η)(0.4e−|η|/0.7+ 0.35)
; (d) the continuous approximation defined
in equation 6.2, with
a= 10
(dashed) and
a= 100
(solid). Here,
η(t)
is the relative
velocity between the bow and the mass in m/s, and the function
ϕC=ϕC(η) : RR
is a
dimensionless friction coefficient, expressed as a function of the relative velocity only. Since
sgn(η)=0
, curves (a), (b) and (c) are defined for nonzero values of
η
only. The vertical
portion of these curves shows the range of possible values during the sticking phase [
98
].
Specifically, this can be expressed as: min ϕCϕC(0) max ϕC.
where ais a free parameter. Note that ϕCsatisfies:
η ϕC(η)0,(6.3a)
lim
|η|→0ϕC(η) =2ae < .(6.3b)
Property
(6.3a)
is referred to as sector-boundedness, here to sector
[0,]
. Both this and
property
(6.3b)
are fundamental for numerical discretisation. As noted in Chapter 1, the
friction curve
(6.2)
was not designed on physical principles. However, since the focus here is
on the efficiency of the numerical algorithm, this characteristic was used for convenience.
Any other curve may be used instead, provided it satisfies properties (6.3a) and (6.3b).
6.1 Bowed mass 131
An energy balance is obtained by multiplying equation
(6.1a)
by the velocity
du
dt
, yielding:
d
dtH=FC(η+vC)ϕC(η),(6.4)
where
H
corresponds to the energy of a SHO scaled by the mass, already seen in equation
(2.25)
. In the zero-velocity case (
vC= 0
), owing to the property
(6.3a)
, the system is
dissipative. Since the nonlinear force is non-conservative, there is no nonlinear potential to
quadratise in this case.
In preparation for time discretisation, it is helpful to express the equation of motion
(6.1)
in first-order form. As shown in Chapter 2, this can be done by defining the generalised
coordinates qand pas qω0uand pdu/dt, resulting in:
dx
dt=JxHiFCϕC(η)(6.5a)
η=ixvC,(6.5b)
with
i= [0,1]
, and other terms as defined in Chapter 2. The energy balance is obtained by
left-multiplying
(6.5a)
by
(H)
. Owing to the skew-symmetry of
J
, and by applying the
chain rule, one obtains the passive balance (in the zero-velocity case):
d
dtH=FCp ϕC(p)0.(6.6)
Note that system
(6.5a)
retains the structure of a PHS, now including dissipation induced
by the bow. As in the linear case, system
(6.5)
and equation
(6.1)
are equivalent in the
continuous domain.
6.1.1 Iterative discretisation of the second-order system
A possible discretisation of equation (6.1), referred to here as SOIT, is given by:
δttun=ω2
0unFn
CϕC(δt·unvn
C),(6.7)
where
Fn
C
and
vn
C
are time series representing the bow force and velocity, allowed to vary over
time. A discrete energy balance, in the zero-velocity case, is obtained by left-multiplying by
δt·un, yielding:
δt+hn1/2=Fn
Cδt·unϕC(δt·un)0,(6.8)
132 Friction: the bow
where the energy has the form
(3.17)
, divided by the mass. The balance is dissipative, and
ensuring energy positivity leads to the stability condition
(3.20)
. Alternatively, an exact
integrator may be employed to avoid stability conditions and frequency warping issues.
Scheme (6.7) can be written as:
2t·un+ 2un12un+ω2
0k2un+k2Fn
CϕC(δt·unvn
C)=0.(6.9)
This is a nonlinear algebraic equation, solvable for
δt·un
with a nonlinear root finder such
as Newton-Raphson. Then,
un+1
may be retrieved by simply applying the centred operator
definition. Notice that a condition on the existence and uniqueness of the solution of
(6.9)
must be given, and this appears as an additional constraint on the time step
k
. Further details
can be found in [
24
, Chapter 4]. Alternatively, the "Friedlander construction" [
227
] may be
used to explicitly lock the string and bow velocities during the sticking phase, thus preventing
the need for bounds on the time step.
6.1.2 Iterative discretisation of the first-order system
A possible discretisation of the first-order system
(6.5)
can be obtained using the midpoint
method detailed in equation (3.5). The resulting scheme is:
δt+xn=Jhn+1/2iFCϕC(µt+ηn), ηn=ixnvn
C,(6.10)
where the form of the discrete gradient is as given in equation
(3.52)
. This scheme is referred
to here as FOIT. The discrete energy balance is obtained by left-multiplying
(6.10)
by
h
,
yielding, in the zero-velocity case:
δt+hn=Fn
Cµt+pnϕC(µt+pn)0.(6.11)
Thus, the system is dissipative. Note that, in this case, the scheme is unconditionally stable
due to the non-negativity of the discrete energy. The update equation of (6.10) is:
I
kJ
2xn+1 I
k+J
2xn+iFn
CϕC(µ+ηn) = 0,(6.12)
where
I
here indicates the
2×2
identity matrix. Scheme
(6.16)
forms a nonlinear algebraic
system due to the implicit definition of
xn+1
appearing in the argument of the nonlinear
function ϕC. Therefore, an iterative root-finding method is required.
6.1 Bowed mass 133
6.1.3 Non-iterative discretisation of the first-order system
The quadratisation techniques employed in the previous chapters are not applicable in this
case, as the nonlinear force is non-conservative. Therefore, an alternative discretization of the
first-order system
(6.5)
is provided, adapted from [
80
,
76
], where a family of non-iterative
schemes is introduced in the context of stiff nonlinear ODEs modelling audio circuits. These
schemes demonstrate good numerical behaviour without requiring iterative techniques, as
shown in the examples below. The discretization is given by:
σ(P)δt+xn=Jhn+1/2iFn
Cξnµt+ηn.(6.13)
Here,
σ(P)=σ(P)(xn)
is a factor taking the form of a perturbation expansion, which can be
set to yield a truncation error with an accuracy of order (P+ 1). Its expression is:
σ(P)(xn) =
P
X
p=0
kpζ(p)(xn).(6.14)
The functions
ζ(p)(xn)
are obtained through Taylor expansion by means of a technique which
has strong links to the modified equation method [Chapter 10][
137
]. The first two terms are
here given explicitly as:
ζ(0)(xn) = I(6.15a)
ζ(1)(xn) = kFC
2(λnξn)ii(6.15b)
where it was defined:
λndϕC
dηη=ηn,ξnϕC
ηη=ηn.(6.16)
Note that both
λ
and
ξ
are well-defined due to properties
(6.3a)
and
(6.3b)
. The definition of
ηis as in (6.10), and the discrete gradient is as in (3.52). With P= 1, one gets a factor:
σ(1)(xn) = I+kFC
2(λnξn)ii,(6.17)
which allows the formulation of the second-order accurate numerical scheme:
Anxn+1 =Bnxn+iFn
Cξnµt+vn
C,(6.18)
134 Friction: the bow
where the matrices have the form:
AnI
k+FCλn
2iiJ
2,BnI
k+FC λn
2ξn!ii+J
2,(6.19)
and
I
again indicates the
2×2
identity matrix. Note that both
An
and
Bn
are computed
using values from previous time steps, allowing the update to be expressed as the solution of
a single linear system, making the scheme linearly implicit. Proof of the accuracy order may
be obtained through Taylor series arguments, as shown in Chapter 3. Ensuring numerical
passivity for schemes like
(6.13)
is more challenging than the iterative discretisations shown
earlier. Partial results are available in [
76
]. However, numerical testing provides insights
into the stability properties of these schemes compared to the iterative discretisations and
a standard explicit integrator. In particular, since the linear part is unconditionally stable,
no stability conditions are required for it, and the scheme remained stable in all simulations
performed.
6.1.4 Numerical testing
Figure 6.2 presents the results computed with different solvers for two empirically chosen
values of
FC
, representing force normalized by mass. A reference solution is obtained
running scheme
(6.7)
with an OF
= 30
and a base sample rate
fs= 44100
Hz. Then,
schemes
(6.7)
,
(6.10)
and
(6.13)
are run with OF
= 2
, and the global error is computed
as in equation
(3.26)
. Newton-Raphson is used with a
109
threshold. Additionally, the
forward euler (FE) integrator, detailed in equation
(3.47)
, is included in the test. For the
lower bowing pressure (
FC= 100
), FE yields an error three orders of magnitude larger than
the other schemes. More notably, for the larger bowing pressure (
FC= 4000
) FE exhibits
instability. In contrast, the FONIT scheme displays robust numerical behaviour, comparable
to the iterative schemes.
6.2 The bowed ideal string
As an extension to a spatially distributed case, consider a bowed ideal string without stiffness
or damping, where the bowing force is assumed to act pointwise at the bowing location. The
string-bow system is described by:
2
tu=c22
xuFCδ(xxC)ϕC(η),(6.20a)
η=tu|xCvC,(6.20b)
6.2 The bowed ideal string 135
0 100 200 300 400
Time (ms)
-0.01
0
0.01
u (m)
Ref. (Fb=4000)
0 100 200 300 400
Time (ms)
-0.02
0
0.02
Error (m)
FE
0 100 200 300 400
Time (ms)
-4
-2
0
Error (m)
10-5 SOIT
0 100 200 300 400
Time (ms)
-4
-2
0
Error (m)
10-5 FOIT
0 100 200 300 400
Time (ms)
-4
-2
0
Error (m)
10-5 FONIT
0 50 100 150
Time (ms)
-5
0
5
u (m)
10-4 Ref. (Fb=100)
0 50 100 150
Time (ms)
-1
0
1
Error (m)
10-3 FE
0 50 100 150
Time (ms)
-2
0
2
Error (m)
10-6 SOIT
0 50 100 150
Time (ms)
-2
0
2
Error (m)
10-6 FOIT
0 50 100 150
Time (ms)
-2
0
2
Error (m)
10-6 FONIT
Fig. 6.2 Comparison between the different bowed mass simulations, using the friction
function
(6.2)
. All cases used:
a= 100
,
f0=ω0/2π= 100
Hz,
vC= 0.2
m/s. "Ref."
indicates the reference solution. Reproduced from [180].
136 Friction: the bow
where the wave speed
c
is defined in equation
(2.84)
, and
FC
is the bow force normalised
by the string linear mass
ρA
. Here,
η=η(t)R
represents the relative velocity of the
bow and the string at the bowing location
xC
. The energy balance is obtained by taking the
inner product of equation
(6.20a)
with
ρAdu
dt
. With Dirichlet boundary conditions, the energy
balance in the zero-velocity case is given by:
d
dtH=ρAFCtu(xC, t)ϕC(tu(xC, t)) 0,(6.21)
where Hhas the form (2.78).
As in the case of the mass, it is convenient to express the system in first-order form. First,
one defines the generalised coordinate and momentum:
qc xu, p tu. (6.22)
The energy may be then re-written in terms of the energy density Has:
H=ZL
0H dx; H = p2
2+q2
2.(6.23)
The equations of motion in first-order form then are:
tx=JH
0
δ(xxC)
FCϕC(η),(6.24a)
η=ZL
0[0, δ(xxC)]xdxvC,(6.24b)
where:
x=
q
p
,J=c
0x
x0
.
The energy balance is obtained by left-multiplying
(6.24a)
by
H
, and integrating. Con-
sidering Dirichlet boundary conditions and using the identity:
RL
0Htxdx=d
dtH
, one
obtains again the energy balance (6.21).
6.2 The bowed ideal string 137
6.2.1 Simulation of the second-order system
Following the definitions in Chapter 3, a spatial discretisation of system
(6.20)
, with Dirichlet
boundary conditions, is given by:
d2u
dt2=c2D2uj(xC)FCϕC(η)(6.25a)
η=hj(xC)du
dtvC.(6.25b)
Time integration can then be performed as follows:
δttun=c2D2unj(xC)FCϕC(ηn)(6.26a)
ηn=hj(xC)δt·unvC(6.26b)
A discrete energy balance is obtained by taking an inner product of equation
(6.26a)
with
ρAhδt·un. In the zero-velocity case, this results in:
δt+hn1/2=ρAF n
Chhj(xC)δt·uniϕChj(xC)δt·un0,(6.27)
where the discrete energy is as per
(3.84)
. Ensuring the energy positivity leads to the stability
condition
(3.85)
. However, ensuring the existence and uniqueness of a solution leads to a
further constraint, as discussed in [
24
, Chapter 7]. Since the update
un+1
appears implicitly
in the argument of
ϕC
, the scheme is fully implicit, and a solution may be found using a
suitable iterative routine in vector form. System (6.26) will be referred to as SOIT.
6.2.2 Simulation of the first order system
Iterative discretisation
A spatially discretized version of the generalized coordinates and momenta can be expressed
as:
q=cDu,p=du
dt,(6.28)
and the energy is now given by:
H=hpp
2+hqq
2.(6.29)
138 Friction: the bow
The equations of motion in semi-discrete form are then written as:
dx
dt=JHdFCϕC(η),(6.30a)
η=hdxvC.(6.30b)
where:
x=
q
p
,d=
0
j(xC)
,J=c
0 D
D+0
.(6.31)
Note that
J
is a square, skew-symmetric matrix, retaining the structure characteristic of
PHS.
One possible time integrator for system
(6.30)
is the Midpoint method, applied as follows:
δttxn=Jhn+1/2dFCϕC(µt+ηn),(6.32a)
µt+ηn=hdµt+xnµt+vn
C,(6.32b)
Here, the discrete energy is:
hn=h(pn)pn
2+h(qn)qn
2,(6.33)
and the discrete gradient results:
hn+1/2=
µt+qn
µt+pn
=µt+xn.(6.34)
As mentioned in Chapter 3, the Midpoint method is unconditionally stable. Indeed, it can be
noticed that the discrete energy here remains non-negative
pn,qn
. Scheme
(6.32)
, referred
to here as FOIT, is fully implicit, and an iterative root-finding method is required for its
solution.
Non-ierative discretisation
Alternatively, the non-iterative method proposed for the bowed mass can be extended to the
spatially distributed case. This is achieved with:
σ(P)(xn)δttxn=Jhn+1/2dFn
Cξnµt+ηn.(6.35)
6.2 The bowed ideal string 139
The definitions of
λ
and
ξ
are given in
(6.16)
, while
µt+ηn
is defined in
(6.32b)
. The operator
J
is described in
(6.31)
, and the energy gradient follows from
(6.34)
. Choosing
P= 1
, one
has
σ(1) =I+kh
2FC(λnξn)dd(6.36)
and a second-order accurate discretisation arises. Isolating the state vector
xn+1
results in
the linearly implicit update:
Anxn+1 =Bnxn+Fn
Cξndµt+vn
C,(6.37)
where the matrices have the form:
An=I
k+Fn
Cλn
2ddJ
2,Bn=I
k+Fn
C λn
2ξn!dd+J
2.(6.38)
Scheme (6.37) will be referred to here as FONIT.
6.2.3 Modal form
As an alternative approach, the continuous equations
(6.20)
are now semi-discretised using a
modal approach. Consider a separable solution of the form:
u=χ(x)w(t)
with
M
modes,
where
χ
represents the normalised modes from
(2.94)
. Substituting this solution form into
equation (6.20) and performing a modal projection yields:
d2w
dt2=2wFCχ(xC)ϕC(η)(6.39a)
η=χ(xC)dw
dtvC,(6.39b)
where 2is as defined in (2.101).
For a non-iterative discretization it is necessary to express the equation of motion
(6.39)
in first-order form. First, define:
˜
q0w,˜
pdw
dt,˜
x
˜
q
˜
p
.(6.40)
Then, the energy takes the form:
˜
H=˜
p˜
p
2+˜
q˜
q
2,(6.41)
140 Friction: the bow
and system (6.39) can be re-written as:
d2˜
x
dt2=˜
J˜
H˜
dFCϕC(˜η)(6.42a)
˜η=˜
d˜
xvC,(6.42b)
where:
˜
J=
0
0
,˜
d=
0
χ(xC)
,˜
H=
˜
q
˜
p
.(6.43)
Note that ˜
Jretains the typical stricture of a PHS.
The non-iterative solver can be used for the integration of the modal system 6.42, resulting
in a fully discrete form analogous to (6.35). Expanding out the operators gives the update:
˜
An˜
xn+1 =˜
Bn˜
xn+Fn
Cξn˜
dµ+vn
C,(6.44)
and the system matrices in the modal case take the form:
˜
An=I
k+Fn
Cλn
2˜
d˜
d˜
J
2,˜
Bn=I
k+Fn
C λn
2ξn!˜
d˜
d+˜
J
2.(6.45)
By defining:
TI
k˜
J
2=
I/k 0/2
0/2I/k
.(6.46)
The matrix
˜
An
can be expressed as the sum of
T
plus a rank-1 perturbation, allowing its
inversion using the Sherman-Morrison formula [189]:
(˜
An)1=T1Fn
Bλn
2
T1˜
d˜
dT1
1 + Fn
Bλn
2˜
dT1˜
d.(6.47)
Furthermore,
T
is block-diagonal, which allows for efficient decomposition using a block
LUD factorisation [38]:
T=
T11 T12
T21 T22
=
I 0
T21T1
11 I
T11 0
0 Ξ
I T1
11 T12
0 I
,(6.48)
6.2 The bowed ideal string 141
and the inverse is computed as:
T1=
IT1
11 T12
0 I
T1
11 0
0 Ξ1
I 0
T21T1
11 I
=
T1
11 +T1
11 T12Ξ1T21T1
11 T1
11 T12Ξ1
Ξ1T21T1
11 Ξ1
.
(6.49)
Here,
ΞT22 T21T1
11 T12
is the Schur complement, which is diagonal due to algebraic
operations between diagonal matrices. This decomposition allows for efficient matrix-vector
multiplication involving
T
by breaking down the operation into serial steps involving diagonal
matrices. Furthermore, since
T
is composed entirely of constant values, the factorisation
components can be precomputed offline, significantly reducing compute time. Note that the
same approach can be applied to system
(6.37)
. In this case, however, the components
T12
and
T21
are tridiagonal, making multiplication of
T
with vectors less efficient due to the
additional non-zero off-diagonal elements that need to be handled during the operation.
6.2.4 Numerical testing
Figure 6.3 reports the output displacement
u(t, xo)
of the string computed using schemes
(6.26)
,
(6.32)
,
(6.35)
and
(6.44)
, under two values of
FB
. All schemes were run with OF
= 2
at a base sample rate
fs= 44100
Hz. As described previously, both SOIT and FOIT
require the Newton-Raphson algorithm in vector form, including Jacobian inversion at each
iteration; this was achieved using Matlab’s backslash function, with a tolerance set to
109
.
The backslash function was also employed for the non-iterative FONIT scheme, whereas
the modal system used the efficient inversion technique detailed above. The two chosen
values of
FB
yield different motion types. When
FB= 1
, the resulting motion is steady
but not Helmholtz-like. Increasing the bowing pressure to
FB= 5
leads to fully developed
Helmholtz motion. This change of motion regime with bowing pressure is consistent with
the typical behaviour of musical strings, as represented by diagrams like Schelleng’s [
184
]
mentioned in Chapter 1. All solvers produce comparable results.
Table 6.1 presents the run-time/real-time ratio for the solvers and, for the iterative
schemes, the average number of iterations per time-step at two different sample rates under
different values of FB. Run-times were measured using the Matlab tic toc function. As
expected, the number of iterations rises with
FB
as the system becomes "stiffer". On the
other hand, the run-time for non-iterative schemes remains unaffected by
FB
. The modal
algorithm is the fastest among all the solvers. In contrast, the non-modal first-order systems
are the slowest due to the explicit inversion of non-diagonal matrices (the Jacobian for FOIT
142 Friction: the bow
300 350 400
Time (ms)
-2
0
2
u(t,xo) (m)
10-4 SOIT (Fb=5)
300 350 400
Time (ms)
-2
0
2
u(t,xo) (m)
10-4 FOIT
300 350 400
Time (ms)
-2
0
2
u(t,xo) (m)
10-4 FONIT
300 350 400
Time (ms)
-2
0
2
u(t,xo) (m)
10-4 MOD
400 450 500
Time (ms)
-2
0
2
u(t,xo) (m)
10-6 SOIT (Fb=1)
400 450 500
Time (ms)
-2
0
2
u(t,xo) (m)
10-6 FOIT
400 450 500
Time (ms)
-2
0
2
u(t,xo) (m)
10-6 FONIT
400 450 500
Time (ms)
-2
0
2
u(t,xo) (m)
10-6 MOD
Fig. 6.3 Ideal string simulation. Both cases used:
c= 150
m/s,
L= 0.7
m,
vB= 0.2
m/s,
a= 100
. The input and output positions were, respectively,
0.633L
and
0.33L
. Reproduced
from [180].
6.3 Addition of stiffness and damping 143
OF FBSOIT FOIT FONIT MOD
1
1 3.91 (3.00)33.46 (3.00)16.97 0.69
5 4.89 (3.61)47.39 (3.83)17.05 0.88
30 6.45 (4.58)54.26 (4.28)16.86 0.87
2
1 9.95 (3.00)106.66 (3.00)54.48 2.51
5 12.21 (3.48)144.99 (3.72)54.72 2.47
30 25.14 (6.34)167.38 (4.15)54.90 2.58
Table 6.1 Run-time/real-time ratio for the different schemes with two OFs, under different
values of
FB
The string parameters are the same as in Figure 6.3. The average number of
iterations per time step requested by Newton-Raphson to converge is reported in brackets for
the iterative schemes. Reproduced from [180].
and
A
for FONIT), both of which are twice the size of the SOIT Jacobian. It should be noted
that no specific optimizations were applied for SOIT, FOIT, or FONIT. In particular, efficient
matrix inversion is also possible for the FONIT scheme, as described earlier. The results in
Table 6.1 highlight the importance of optimizing linear system solvers, particularly in cases
involving structured matrices, which are often overlooked by compilers.
As in the lumped case, analysing the energy behaviour of systems FONIT (in the dis-
tributed case) and MOD is complex. A case study can be found in [
76
]. Notably, the midpoint
method eliminates the need for stability conditions on the linear parts, and these schemes
remained stable in all simulations.
Since the focus here was on algorithmic optimization, the second-order integrator
(3.14)
was used for the modes. Employing the exact integrator
(3.29)
would have helped reduce
dispersion issues without impacting the system’s performance; this is left for future work.
6.3 Addition of stiffness and damping
The addition of stiffness and damping terms can be achieved directly in the modal domain.
When considering a stiff string with simply supported boundaries, the mode shapes remain
unchanged, while the eigenfrequencies are adjusted to include stiffness, as discussed in
Chapter 2. To account for damping, a diagonal damping matrix can be introduced, with each
diagonal element representing the damping coefficient for a specific mode, thereby enabling
the modelling of complex damping profiles, such as that proposed by Valette and Cuesta
[206]. The resulting system is:
d2w
dt2=2wCdw
dtFCχ(xC)ϕC(η),(6.50)
144 Friction: the bow
where
2
now stores the eigenfrequencies as given by equation
(2.123)
. The resulting system
can be simulated with an algorithm analogous to that used for the ideal string, the only
difference being that the matrices
T
and
B
are now augmented by the diagonal matrix
C
.
Since these can be computed offline, the efficiency of the algorithm is unaffected.
300 320 340
Time (ms)
-1
0
1
u(t,xo) (m)
10-4 Fb=5
300 320 340
Time (ms)
-2
0
2
u(t,xo) (m)
10-4 Fb=15
4100 4120 4140
Time (ms)
-2
0
2
u(t,xo) (m)
10-4 Fb=5
4100 4120 4140
Time (ms)
-5
0
5
u(t,xo) (m)
10-4 Fb=15
Fig. 6.4 Vibration regimes of the stiff string under two values of
FB
. Plots on the same row
are snapshots of the same waveform, taken in different time instants. String parameters were
the ones of a D3 cello string, taken from [
67
]. Bowing parameters, input and output positions
are as in Figure 6.3. Reproduced from [180].
Figure 6.4 illustrates different vibration regimes of the stiff string for two values of
FB
,
selected empirically to achieve specific types of string excitation. The plots in each row
show snapshots of the same waveform at different times, capturing the string motion both at
the onset of excitation and after reaching steady state. When
FB= 5
, the string exhibits a
multi-slip motion, whereas for
FB= 15
it reaches Helmholtz motion after a few seconds.
Table 6.2 presents the run-time/real-time ratio for the stiff string simulations, demonstrating
that the algorithm can achieve real-time performance even at high sample rates in Matlab.
Notably, including string stiffness reduces the number of degrees of freedom (i.e., the number
of harmonics in the audible range), thereby decreasing computational load compared to the
simple wave equation.
6.3 Addition of stiffness and damping 145
OF = 1 OF = 2 OF = 5
0.19 0.39 0.91
Table 6.2 Run-time/real-time ratio for the stiff string, tested with different OF values. The
base sampling frequency is fs= 44100 Hz. Reproduced from [180].
While adding stiffness and damping significantly improves the realism of the string
model, several approximations remain in the bowing mechanism. One such simplification, as
previously mentioned, is the use of a non-physical friction curve; another is the reliance on a
second-order integrator, which introduces frequency warping. Additionally, the bow-string
interaction is modelled as a point-wise contact. In reality, a bow has a finite width, with
multiple hairs touching the string simultaneously, and previous works have addressed this
aspect, see, e.g. [
186
]. In principle, the non-iterative method presented here imposes no
restrictions on incorporating this effect. However, further investigation is needed in this
sense.
Chapter 7
Case studies
This chapter presents two papers that serve as musical case studies for the techniques
introduced in the preceding chapters. All bibliographic references are provided within this
chapter rather than at the end of the manuscript. Audio examples related to these papers are
available on the companion page.
7.1 Physical modelling of the guitar
This section corresponds to a paper presented at the International Conference on Digital
Audio Effects (DAFx) in 2024 [
30
]. It introduces a comprehensive guitar fretboard model
incorporating the Kirchhoff-Carrier geometric nonlinearity for the string, along with three
distinct collision nonlinearities representing the fretboard, individual frets, and a moving
finger. Collisions are modelled using the SAV approach, resulting in a system involving three
auxiliary variables and four nonlinear gradients (including the geometric nonlinearity). An
important contribution of this work is the demonstration of a method for solving multiple
nonlinearities altogether using SAV, achieved by employing multiple auxiliary variables. The
paper’s conclusion states: "A better approach would be to consolidate all of the nonlinear
dynamics into a single scalar potential". Here, "better" refers to algorithmic efficiency.
This approach necessitates inverting a small matrix with dimensions corresponding to the
number of nonlinear gradients. In contrast, previous methods, such as that in [
77
], combined
multiple nonlinearities into a single scalar auxiliary variable, enabling a fully explicit solver.
However, the technique presented below offers greater control over the algorithmic design
and flexibility for managing individual nonlinearities. For instance, as demonstrated in
the paper, individual constraints may be introduced for each auxiliary variable, something
impossible with the approach developed in [77].
Proceedings of the 27th International Conference on Digital Audio Effects (DAFx24), Guildford, United Kingdom, 3 - 7 September 2024
REAL-TIME GUITAR SYNTHESIS
Stefan Bilbao
Acoustics and Audio Group
University of Edinburgh
Edinburgh, UK
sbilbao@ed.ac.uk
Riccardo Russo, Craig J. Webb and Michele Ducceschi
Department of Industrial Engineering
University of Bologna
Bologna, Italy
riccardo.russo19@unibo.it,
craigjonathan.webb@unibo.it,
michele.ducceschi@unibo.it
ABSTRACT
The synthesis of guitar tones was one of the first uses of physical
modeling synthesis, and many approaches (notably digital waveg-
uides) have been employed. The dynamics of the string under
playing conditions is complex, and includes nonlinearities, both
inherent to the string itself, and due to various collisions with the
fretboard, frets and a stopping finger. All lead to important percep-
tual effects, including pitch glides, rattling against frets, and the
ability to play on the harmonics. Numerical simulation of these
simultaneous strong nonlinearities is challenging, but recent ad-
vances in algorithm design due to invariant energy quadratisation
and scalar auxiliary variable methods allow for very efficient and
provably numerically stable simulation. A new design is presented
here that does not employ costly iterative methods such as the
Newton-Raphson method, and for which required linear system
solutions are small. As such, this method is suitable for real-time
implementation. Simulation and timing results are presented.
1. INTRODUCTION
Sound synthesis based on physical models of stringed instruments
is a very old topic, with its origins in the quasi-physical feedback
delay model of Karplus and Strong [1, 2]. Major advances fol-
lowed from the physical interpretation of the bidirectional delay-
line pair or digital waveguide [3, 4] in terms of traveling waves—
opening the door to physical modeling for a wide array of instru-
ment types, including the guitar [5, 6], the subject of this paper.
More recently, increasingly sophisticated models of the gui-
tar have seen investigation. One avenue has been pure musical
acoustics research, where full three-dimensional modeling of the
interaction of the guitar body with the acoustic field is incorpo-
rated [7, 8]. Another, geared towards synthesis applications, has
been the investigation of interactions between the string, finger and
fretboard, allowing for a great deal of gestural control and nuance
in performance. Various techniques have been employed, includ-
ing digital waveguides [9], modal methods [10] and time-stepping
methods such as the finite difference time domain (FDTD) method
[11, 12], which have their roots in very early attempts at synthesis
[13]. Here, we adopt the latter approach, due to the very general
This work was supported by the European Research Council (ERC)
under the Horizon2020 framework, grant number 950084-StG-NEMUS
Copyright: © 2024 Stefan Bilbao et al. This is an open-access article distributed
under the terms of the Creative Commons Attribution 4.0 International License, which
permits unrestricted use, distribution, adaptation, and reproduction in any medium,
provided the original author and source are credited.
flexibility of FDTD in handling multiple nonlinearities simultane-
ously. Such methods capture many subtle musical effects, includ-
ing tapping, the rattling of strings against the frets and fretboard,
and also the ability to play on string harmonics. See [14].
Such brute-force simulation methods are computationally in-
tensive, and the move to real time is non-trivial. This expense
stems from the strong collision nonlinearities, and the need for
provably stable numerical methods (such as those ensuring en-
ergy conservation) for robust behaviour. These nonlinearities
have been dealt with previously using iterative methods, such as
Newton-Raphson, which are computationally intensive, and inher-
ently serial. Recent algorithmic advances, based on invariant en-
ergy quadratisation (IEQ) [15, 16] and scalar auxiliary variable
(SAV) [17, 18] approaches offer a means of sidestepping iterative
methods entirely, and have been employed previously in order to
accelerate physical modeling synthesis for strongly nonlinear in-
struments to the real-time threshold [19]. In particular, IEQ/SAV
have seen use in modeling collisions within the context of musical
acoustics [20, 21, 22]. In these studies, it was noted that computing
the nonlinear collision force directly as the analytic potential en-
ergy gradient produced spurious oscillations, causing anomalous
results in simulation, and various solutions have been proposed.
Here, we present a variation of that in [22].
This paper can thus be viewed as a belated follow-up to a
DAFx paper [11] from 2014, which outlined a full synthesis model
of the finger/string/fretboard interaction—though well out of real
time. Applying IEQ and SAV approaches allows for real-time
performance for a full model of guitar string vibration for multi-
ple strings, including four simultaneous nonlinearities: a) the dis-
tributed geometric nonlinearity in a string vibrating at high ampli-
tudes; b) the interaction between a string with a smooth fretboard;
c) the interaction between a string and an array of point-like obsta-
cles (frets), and d) the interaction between the finger and string.
A complete model of transverse string vibration in a single
polarization, including the various nonlinearities listed above, is
described in Section 2, followed by a spatially semi-discrete form
in Section 3, and a fully time-discrete algorithm in Section 4. Real-
time implementation details and timing results follow in Section
5. and some numerical illustrations appear in Section 6. Some
concluding remarks are offered in Section 7. Sound examples are
available at the companion page 1.
2. MODEL SYSTEM
The model employed here appeared previously, with some minor
alterations, in [11, 12], and will be presented in condensed form
1https://physicalaudio.co.uk/guitar/
DAFx.1
Proceedings of the 27th International Conference on Digital Audio Effects (DAFx24), Guildford, United Kingdom, 3 - 7 September 2024
Figure 1: Guitar model, illustrating the string (in green), the fretboard and frets (in blue), the finger (in red), and plucking excitation force
(in yellow).
here. See Figure 1. The general equation of motion is
L=Fe+FKC +FB+FF+FFG .(1)
The terms above are differential operators applied to u=u(x, t),
which represents the transverse displacement of a string in a single
polarization (generally taken here to be perpendicular to the fret-
board), and depends on spatial coordinate x[0, L], for a string
length Lin m, and time tin s. Boundary conditions are assumed
to be of simply supported type at the string endpoints, so that
u(0, t) = 2
xu(0.t) = u(L, t) = 2
xu(L, t) = 0 .(2)
Output is assumed drawn directly from the string displacement at
x=xoas y(t) = u(xo, t).
The linear free vibration of the string is encapsulated in the
standard term L(u), defined as
L=ρA∂2
tuT02
xu+EI 4
xu+2ρAσ0tu2ρAσ1t2
xu(3)
where tand xindicate partial differentiation with respect to t
and x, respectively. The various parameters that appear here are: ρ,
the mass density in kg·m3;A=πr2, the string cross-sectional
area in m2for a string of radius rm; T0, the string tension in N;
E, Young’s modulus for the string, in Pa; I=πr4/4, the moment
of inertia of the string; and σ00and σ10, two parameters
that give frequency-dependent control over decay time—see [23]
for a means of calibrating these values against 60 dB decay times.
The remaining terms in (1) are force densities, defined over
the domain x[0, L], and are presented consecutively below.
2.1. Plucking Excitation
Fe=Fe(x, t)constitutes the pointwise external forcing of the
string due to a single upward pluck, and may be modelled as
Fe=δ(xxe)fe(t).(4)
Here, δ(xxe)is a Dirac delta function selecting the plucking
location x=xe, and fe(t)is a parameterized function of the form
fe(t) = (famp sin2π(tte)
2∆ when tette+
0 otherwise
(5)
where here, famp is a maximum amplitude in N, teis the start time
of the pulse in s, and is the duration in s.
2.2. Geometric Nonlinearity
There are many possible models of geometric nonlinearity in
strings [24]—most important here is the pitch glide effect, audible
in guitar plucks at high amplitudes. This is most easily modeled
through the simple Kirchhoff-Carrier model [25, 26], for which the
additional force density FKC is defined as
FKC =EA
2LZL
0
(xu)2dx2
xu . (6)
The Kirchhoff-Carrier model has been used extensively in sound
synthesis algorithms—see, e.g., [27, 23].
2.3. Fretboard Interaction
The fretboard (in the absence of frets) is modeled as a smooth
function b(x), with b(x)0(so that the fretboard lies below the
rest position of the string). In the simplest case, one may simply
take b(x) = b0, for a constant offset. The collision force density
may be modelled through a penalty potential as
FB=KB[bu]αB
+(7)
where here [·]+indicates the “positive part of," so [η]+= (η+
|η|)/2. Here, KB0is the fretboard stiffness, and αB1is
the nonlinearity exponent. This collision force density is active
only when the string is in contact with the barrier, and is otherwise
zero. We employ a simple Hertzian model of contact, in line with
models used in, e.g., piano hammer modelling [28], and in other
models of string-barrier interaction [29, 30].
2.4. Fret Interaction
Assume that there are Mfrets, located at coordinates x=
x1,...,xM. (Mis normally between 19 and 24 for standard gui-
tars.) Interactions of the string with the frets is assumed to occur
at their tips located at vertical height m0—again with m00,
so that the rest position of the string lies above the fret tip. In ad-
dition, m0b(xq),q= 1,...,M, so that the frets themselves
protrude from the fretboard. The resulting force density is
FF=
M
X
q=1
KF[m0u(xq, t)]αF
+δ(xxq).(8)
DAFx.2
Proceedings of the 27th International Conference on Digital Audio Effects (DAFx24), Guildford, United Kingdom, 3 - 7 September 2024
As in the case of the barrier, KF0is the fret stiffness, and αF
1is the nonlinearity exponent. The eventual algorithm design is in-
sensitive to the placement of frets—for standard semitone tuning,
frets should be located at coordinates xq=L12q/12.
2.5. Finger Interaction
The finger interaction must also be modelled as a collision, but in
this case has its own dynamics to account for, as well as exter-
nal forcing. The finger, of mass MFG in kg is assumed to act at
location x=xFG. It is defined by
FFG =fFGδ(xxFG)fFG =KFG[u(xFG , t)w(t)]αFG
+.
(9)
Here, w(t)is the vertical displacement of the finger—its dynamics
are governed by
MFG ¨w=fFG +fe,FG ,(10)
where dots indicate ordinary time differentiation. Here, fe,FG (t)
is an externally-supplied driving force, employed in order to trap
the string against the fretboard and frets. (Though we assume xFG
to be constant in this paper, it will ultimately be allowed to vary
over time, in order to effect pitch changes.)
2.6. Energy Balance
The governing equation (1), accompanied by the definitions of the
various force densities in Sections 2.1 to 2.5, satisfies an energy
balance of the following form:
˙
H+Q=P . (11)
Here, His the total stored energy in the system in J, Qand P
are the power loss and supplied power, respectively, in W. Fur-
thermore, the stored energy may be decomposed into components
representing the various storage mechanisms:
H=TL+VL+VKC +VB+VF+TFG +VFG ,(12)
where components Tand Vindicate kinetic and potential energy,
respectively. The constituent energy components and power terms
are defined as follows:
TL=ρA
2ZL
0
(tu)2dx (13a)
VL=T0
2ZL
0
(xu)2dx +EI
2ZL
02
xu2dx (13b)
VKC =EA
8LZL
0
(xu)2dx2
(13c)
VB=KB
αB+ 1 ZL
0
[bu]αB+1
+dx (13d)
VF=KF
αF+ 1
M
X
q=1
[m0u(xq, t)]αF+1
+(13e)
TFG =MFG
2˙w2(13f)
VFG =KFG
αFG+1 [u(xFG, t)w]αFG +1
+(13g)
Q= 2ρA ZL
0
σ0(tu)2+σ1(txu)2dx(13h)
P=fetu(xe, t) + fe,FG ˙w . (13i)
Note that H0and Q0, implying that the system is dissipa-
tive in the absence of external forcing, or that H(0) H(t)0.
3. SEMI-DISCRETE FORM
It is useful, as an intermediate step, to perform a spatial semi-
discretisation of the system defined in the previous section. Sup-
pose that the domain [0, L]has been discretised with a grid spacing
h, for integer N=L/h. Under supported boundary conditions in
(2), a semi-discrete approximation to u(x, t)may then be written
as the (N1) ×1column vector u(t), where
u= [u1,...,uN1]T,(14)
where Tindicates transposition. In the vectorised setting, the sec-
ond spatial derivative 2
xmay be approximated by the (N1) ×
(N1) negative-definite matrix D, which is of the form
D=1
h2
-2 1
1-2 1
.........
1-2 1
1-2
.
Consider a Dirac delta function selecting the location x=xc.
It may be approximated as
δ(xxc)1
hj(xc),(15)
where j(xc)is an (N1)×1column vector. It may be constructed
by a variety of means using, perhaps, Lagrange interpolation. In
general, it will be sparse and must satisfy the first moment condi-
tion [31], or that 1Tj(xc)= 1, where 1is an (N1) ×1vector
consisting of ones (mirroring the property of the delta function that
it integrates to unity). See [23]. Such a representation here can be
used directly in order to simulate a pointwise forcing (as in (4), (8)
or (9)), or as an interpolant, as in (8) or (9), so that
u(xc, t)j(xc)T
u(t).(16)
The object here is to arrive at a semi-discrete form of (1):
L(s) =F(s)
e+F(s)
KC +F(s)
B+F(s)
F F(s)
FG .(17)
Distinct approaches to semi-discretisation will be taken for the dif-
ferent components of the model, grouped into categories as below.
3.1. Linear Operator and Excitation
The linear operator (3) may be semi-discretised immediately as
L(s) =ρA¨
uT0Du +EI D2u+ 2ρAσ0˙
u2ρAσ1D˙
u.(18)
Using an approximation to a delta function as in (15), centered at
xe, the excitation force density (4) may be semi-discretised as
F(s)
e=1
hj(xe)fe(t).(19)
3.2. Geometric Nonlinearity
For the geometric nonlinearity, with force density as defined in (6),
a semi-discrete form follows, using summation by parts, as
F(s)
KC =EAh
2LuTDuDu .(20)
DAFx.3
Proceedings of the 27th International Conference on Digital Audio Effects (DAFx24), Guildford, United Kingdom, 3 - 7 September 2024
3.3. Fretboard and Frets
For the fretboard and frets, a different approach is taken here,
following the SAV methodology. Here, beginning from a semi-
discrete potential energy term V(s)
(u), one may write
V(s)
=1
2ψ2
,(21)
where here, ψis a scalar auxiliary variable—the key here is that the
potential energy contribution has been quadratised. At this point,
semi-discrete force densities follow as
F(s)
=1
huV(s)
=1
hψuψ
|{z}
g
,(22)
where uis a gradient with respect to the dependent variable u.ψ
becomes a new state variable, to be updated in an eventual discrete-
time implementation. To this end, note that one may write
˙
ψ= (uψ)T˙
u=gT
˙
u.(23)
The relevant semi-discrete potential energy terms, correspond-
ing to the fretboard and frets are:
V(s)
B=KBh
αB+1 1T[bu]αB+1
+(24a)
V(s)
F=KF
αF+ 1
M
X
q=1 m0j(xq)T
uαF+1
+
.(24b)
Here, b= [b1,...,bN1]Tis the fretboard profile sampled at the
N1interior grid locations.
3.4. Finger
The case of the finger is similar to that of the frets and fretboard
outlined above, but now the potential energy must include contri-
butions from both the string and finger. Now, one may write
V(s)
FG =KFG
αFG + 1 j(xFG )T
uwαFG+1
+
=1
2ψ2
FG (25)
and thus
F(s)
FG =1
hψFG uψFG
| {z }
gFG
and f(s)
FG =ψFG
∂ψFG
∂w
| {z }
g
FG
.(26)
The defining equation for wremains as in (10). It also follows that
˙
ψFG =gT
FG ˙
u+g
FG ˙w . (27)
The computation of gand g
FG needs to be handled
carefully—see Section 4.7 for details.
3.5. Energy Balance
An energy balance in the semi-discrete case is of the form of (11):
˙
H(s) +Q(s) =P(s) ,(28)
where H(s) has the same decomposition as in the continuous case
in (12). For the linear system,
T(s)
L=ρAh
2˙
u2V(s)
L=T0h
2uTDu+EIh
2uTD2u(29)
where for a vector f,f2=fTf. For the nonlinearities,
V(s)
KC =EAh2
8LuTDu2V(s)
B,F,FG =1
2ψ2
B,F,FG .(30)
The kinetic energy for the finger, from (13f) remains unchanged
under discretisation, and the loss and power terms become
Q(s) = 2ρAh σ0˙
u2σ1˙
uTD˙
u(31a)
P(s) =fej(xe)T˙
u+f(ext)
FG ˙w . (31b)
The non-negativity property of H(s) and Q(s) persists in the semi-
discrete case (note that Dis negative definite by construction).
4. FULLY DISCRETE FORM
First define a time step k= 1/fsin terms of a specified audio
sample rate fsin Hz. The (N1) ×1vector unrepresents an
approximation to u(t)at t=nk, for integer n. The excitation
force signals fe(t)and fFG(t)may be sampled as fn
eand fn
FG,
respectively. For auxiliary variables ψ(t), as defined in (21), an
interleaved approximation ψn+1/2
is employed, representing an
approximation to ψ(t)at t= (n+ 1/2)kfor integer n.
Basic shifts e+and e, applied to a time series ζν, where νis
either integer, or half-integer, are defined as
e+ζν=ζν+1 eζν=ζν1.(32)
Forward, backward and centered difference approximations to a
first time derivative follow as
D±=±1
k(e±1) D=1
2k(e+e)(33)
and averaging operators M±and Mas
M±=1
2(1 + e±)M=1
2(e++e).(34)
An approximation to a second time derivative follows as
D2=D+D=1
k2(e+2 + e).(35)
As in the semi-discrete case, we proceed through the various
components of the full model.
4.1. Linear Operator and Excitation
The linear semi-discrete operator defined in (18) may be discre-
tised as follows
L(d),n =ρAD2unT0Dun+EI D2un(36)
+ 2ρAσ0Dun2ρAσ1DDun.
This is the standard “explicit" discretisation of the linear stiff string
[23]. The semi-discrete form of the excitation force density from
(19) remains the same, under the replacement of fe(t)by fn
e.
4.2. Geometric Nonlinearity
Following early work on energy-conserving numerical methods
for the Kirchhoff-Carrier string [32], the fully discrete form of the
force density is chosen to be
F(d),n
KC =EAh
2L(un)TDMunDun.(37)
Note the appearance of the additional time-averaging operation
M, as defined in (34). A scalar auxiliary variable is not neces-
sary in the discretisation of this nonlinearity.
DAFx.4
Proceedings of the 27th International Conference on Digital Audio Effects (DAFx24), Guildford, United Kingdom, 3 - 7 September 2024
4.3. Collisions: Fretboard and Frets
For the fretboard and frets, one may begin from the semi-discrete
forms in (22) and (23), which may be discretized [18] as
F(d),n
=1
hMψn+1/2
gn
(38a)
Dψn+1/2
= (gn
)TDun.(38b)
4.4. Collisions: Finger
Finally, the dynamics of the finger are discretised as
MFGD2wn=f(d),n
FG +fn
e,FG (39)
where fn
e,FG is sampled from fe,FG(t). The force density and
force may be written as
F(d),n
FG =1
hMψn+1/2
FG gn
FG f(d),n
FG =(MψFG)g,n
FG .
(40)
It also follows that
Dψn+1/2
FG = (gn
FG)TDun+g,n
FGDwn.(41)
4.5. Energy Balance and Stability Condition
A discrete-time energy balance follows from the scheme above as
DH(d) +Q(d) =P(d) ,(42)
where the decomposition of H(d) =H(d),n+1/2is as in the con-
tinuous and semi-discrete cases, with all terms now assumed de-
fined at time step n+ 1/2. For the linear system,
T(d)
L=ρAh
2(Dun+1)T(IN1+σ1kD)Dun+1 (43a)
V(d)
L=h
2(un)TT0D+EI D2un+1 .(43b)
For the nonlinearities,
V(d)
KC =EAh2
8Lun+1TDun2V(d)
B,F,FG =1
2ψn+1/2
B,F,FG2.
(44)
For the finger inertia, one has
T(d)
FG =MFG
2(Dwn+1)2.(45)
The loss and power terms, defined at time step n, become
Q(d) = 2ρAh σ0Dun2σ1(Dun)TDDun(46a)
P(d) =fn
ej(xe)TDun+fn
e,FGDwn.(46b)
For stability, note first that Q(d) 0. It remains to find
conditions under which the stored energy H(d) 0. Given that
the nonlinear potential energy contributions from (44) are all non-
negative, all that is necessary is to find a non-negativity condition
on the linear potential and kinetic energy terms, from (43). This
leads, ultimately, to the bound hhmin, where
h2
min =k
2 T0k
ρA + 4σ1+rT0k
ρA + 4σ12+16EI
ρA !.(47)
This serves as a numerical stability condition for the scheme [11].
4.6. Condensed Vector-matrix Update Form
The scheme presented in the previous sections is undeniably
complex—mainly because of the use of disparate discretisation
approaches for different parts of the problem—all in the interest
of maximizing efficiency. The key feature is that in all the up-
dates presented, the unknown appears linearly, meaning that iter-
ative methods such as Newton-Raphson are not needed. What is
perhaps less obvious is that the algorithm is mainly explicit, with
only a small (size four) linear system solution required. It is thus
useful to see the ultimate form of the update.
First, define a combined state zn= [(un)T, wn]T, including
both the string displacement and finger displacement in a single
N×1column vector. Furthermore, one may also consolidate
the three scalar potentials into a single 3×1column vector as
Ψn+1/2= [ψn+1/2
B, ψn+1/2
F, ψn+1/2
FG ]T, and the two input force
signals into a 2×1vector fn= [fn
e, f n
e,FG]T. Given znand zn1,
as well as Ψn1/2, it is possible to write the entire update as the
sequence of operations
Anzn+1 =bnΨn+1/2=Ψn1/2+1
2(Gn)Tzn+1 zn1.
(48)
In the primary update of zn+1,Anand bnare an N×N
matrix and N×1vector, respectively; both must be constructed
anew at each time step. The vector bnmay be written as
bn=Bzn+Czn1+Ef n(49)
ΛGnΨn1/2+1
4ΛGn(Gn)Tzn1kn(kn)Tzn1.
Here, Band Care N×Nconstant matrices, and Eis an N×2
constant matrix, defined by
B="1
1+σ0k2IN1+T0k2
ρA DEI k2
ρA D2+2σ1kD0
02#
(50a)
C=1
1+σ0k((σ0k1)IN12σ1kD)0
01(50b)
E="k2
ρAh(1+σ0k)je0
0k2
MFG #(50c)
that represent the linear dynamics of the string simulation, where
IN1is the (N1) ×(N1) identity matrix. All are extremely
sparse. The term involving the N×3matrix Gnand N×N
constant diagonal scaling matrix Λ, defined by
Gn=gn
Bgn
Fgn
FG
0 0 g,n
FG Λ="k2
ρAh(1+σ0k)IN10
0k2
MFG #
(51)
follow from the collision model. Notice that the same matrix Gn
is used in the update of Ψn+1/2, from (48). The N×1vector kn
follows from the Kirchhoff-Carrier model, and is defined as
kn=k
2qEh
ρL(1+σ0k)[(Dun)T,0]T.(52)
Finally, the matrix Ais defined as
A=IN+1
4ΛGn(Gn)T+kn(kn)T.(53)
In terms of computational cost, the main nontrivial operations
are the calculations of the vectors g—see the next section for
DAFx.5
Proceedings of the 27th International Conference on Digital Audio Effects (DAFx24), Guildford, United Kingdom, 3 - 7 September 2024
more details. Beyond this, all other operations are sparse. An
exception is the need for a linear system solution in (48) involv-
ing the N×Nmatrix Anin (53). But Anis in the form of a
low-rank (four) perturbation of the identity, and thus very efficient
resolution methods such as the Woodbury identity [33] can be em-
ployed. This avoids both the computational expense of iterative
methods, and of fully linearly-implicit methods, where in general
one would require the resolution of a full linear system of size N,
and thus is the key to real-time performance.
Audio output ynis drawn from the string as yn= (j(xo))Tun,
where j(xo)is an interpolant selecting the location x=xo.
4.7. Calculation of Potential Gradients
Vectors of the form gn
, which scale with the gradient of a poten-
tial, and as defined in (22), play a central role in the operation of
the scheme described above. The simplest choice for computing
the nonlinear potential gradients is using the analytic expressions:
˜
gn
=(uV)n
2Vn
+ϵ˜g,n
FG =(∂VFG/∂ w)n
p2Vn
FG +ϵ(54)
where ϵis a small gauge constant [18], in this case set as machine
epsilon. Here, the values Vn
are obtained by evaluating equations
(24) and (25) at time step n, and the gradients take the form:
(uVB)n=hKB[bun]αB
+(55a)
(uVF)n=KF[m0Jun]αF(55b)
(∂VFG /∂w)n=KFG j(xFG )T
unwnαFG
+
(55c)
(uVFG)n=j(xFG)(VFG/∂w)n(55d)
where Jis a (N1) ×Mmatrix whose columns are the fret
interpolators j(xq).
It is known, however, that simply using the analytic values pro-
duces an anomalous behaviour of the auxiliary variable ψn1/2,
that a) can exhibit long-term drift [34], and b) exhibits spurious
sign flipping, meaning that the resulting force may be oriented in-
correctly. The solution proposed in [22] is to impose the constraint
ψn+1/20. This results in a quadratic equation to be solved dur-
ing contact times, yielding a scaling factor for ˜
gn
. In this work,
we propose a similar method, applied here to the computation of
˜
gn
Band ˜
gn
F(and not to the finger, which exhibited less drift than
in the case of the fretboard or frets). The technique described here
is based on the constraint: Mψn+1/2
0. In fact, from (38a),
it is apparent that if Mψn+1/2
remains positive, the sign of the
expression is determined only by gn
, which is negative by defi-
nition. This ensures that the force F(s)
is oriented upwards. By
considering equation (38b), the constraint becomes:
2ψn1/2
+1
2(gn
)T(ˆ
un+1 un1)0.(56)
Here, ˆ
un+1 is the update of the system with no external forc-
ing, and in presence of only the relevant nonlinearity (from the
fretboard or frets). In this case, the Woodbury identity reduces to
the Sherman-Morrison formula [35], and one has:
ˆ
un+1 =ˆ
bn
1
4ˆ
Λgn
(gn
)ˆ
bn
1 + 1
4(gn
)ˆ
Λgn
,(57)
with
ˆ
bn=ˆ
Bun+ˆ
Cun1ˆ
Λgn
ψn1/2
+1
4ˆ
Λgn
(gn
)un1.(58)
Here, ˆ
B,ˆ
C,ˆ
Λare the upper left-hand (N1) ×(N1)
blocks of (50a), (50b) and Λin (51) respectively. By inserting (57)
and (58) into (56) and solving for gn
one gets:
4ψn1/2
+ (gn
)(ˆ
Bun+ˆ
Cun1un1)
| {z }
ξn
0.(59)
Now, as in [22], let gn
γ˜
gn
, where γis a scalar. Then, (59)
becomes a first-order, scalar inequality in γ. The linearity of the
expression guarantees a unique solution under the condition:
γ 4ψn1/2n.(60)
Equation (60) yields a scalar multiplier for ˜
gn
, to be applied
when (59) is not satisfied for gn
=˜
gn
. Thus, we set γas:
γ=
4ψn1/2
ξn,if ξn= 0 and ξn<4ψn1/2
λ4ψn1/2
ξn1,if ξn= 0 and ξn1= 0
1,otherwise
.
(61)
While the upper condition is designed to ensure the non-
negativity of Mψn+1/2
, the purpose of the middle condition is
perhaps less obvious. Here, ξn1= (˜
gn1
)(ˆ
Bun+ˆ
Cun1
un1), and the condition is satisfied only at the first instants with-
out contact. Using the gradient from the previous time-step en-
forces Mψn+1/2= 0, meaning that no residual energy is stored
during non-contact periods. Finally, λis a scalar multiplier that
allows the condition (60) to be satisfied away from the equality.
Here, it was set λ= 0.5if 4ψn1/2n1<0and λ= 1.5if
4ψn1/2n10.
5. REAL-TIME IMPLEMENTATION AND TIMING
RESULTS
The algorithm was prototyped initially in the Matlab environment,
and then ported to offline C++ in order to gauge the CPU per-
formance on a number of different machines. Whilst the vector-
matrix form described in Section 4.6 is algebraically compact and
efficient for prototyping in Matlab, for high performance C++ the
sparse matrix operations are unrolled into their equivalent vector
updates. The core elements of the algorithm that are performed at
each time step are as follows: a) compute the linear update to the
string and finger, for the terms in (49) employing the matrices B,
Cand E; b) compute knfrom (52), and the accompanying term
in (49); compute the columns of Gnfrom (51) corresponding to c)
the fretboard, d) the frets and e) the finger, and the accompanying
term in (49); and f) perform the linear system solution required in
(48), using the construction of Anfrom (53) and the Woodbury
identity, and the update of Ψn+1/2from (48). Final steps of neg-
ligible computational cost are the reading the output and a pointer
swap of the state vectors. With attention to the content and data
arrangement in the FOR loops being used, the Clang compiler at
-Ofast was able to fully vectorise all of the core updates of the
algorithm without the use of manual intrinsics.
Performance testing was carried out on a model containing a
single string with 20 frets on the fretboard and a single finger. The
DAFx.6
Proceedings of the 27th International Conference on Digital Audio Effects (DAFx24), Guildford, United Kingdom, 3 - 7 September 2024
tension and radius of the string were varied to give results for a
typical set of acoustic guitar strings from low E to top E tuning.
Test machines were a Mac Pro with a Xeon E5 processor, a Mac
mini with Apple Silicon M1 processor, and MacBook Pro with
an M2 Pro. Table 1 shows the resulting computation times for
simulations of 44100 timesteps.
Table 1: Computation times for C++ over 44100 time-steps.
String Xeon E5 Apple M1 Apple M2 Pro
1 (low E) 0.18s 0.13s 0.11s
2 0.18s 0.13s 0.11s
3 0.15s 0.11s 0.10s
4 0.13s 0.09s 0.08s
5 0.12s 0.08s 0.06s
6 (top E) 0.09s 0.06s 0.04s
These results show that it is possible to run a 6-voice model for
a full guitar simulation within the necessary bounds for a real-time
instrument. Examining the CPU usage for the various elements of
the time-loop computation gives a breakdown as shown in Table 2
for a low E string (the worst case in terms of compute time).
Table 2: Computation breakdown for optimised C++ for a low E
string.
Section Compute %
a) Linear update 2.3%
b) Kirchhoff-Carrier 1.9%
c) Fretboard 19.1%
d) Frets 7.7%
e) Finger 5.1%
f) SAV update and solver 63.9%
6. SIMULATION RESULTS
6.1. Numerical Energy Balance
The numerical energy balance (42) is easily demonstrated under
unforced conditions. In order to incorporate the effects of loss,
it is direct to define a total energy E(d), including stored energy
H(d) and accumulated dissipated energy Q(d) as in Section 4.5, as
E(d),n+1/2=H(d),n+1/2+
n
X
ν=0
kQ(d) .(62)
This quantity should be conserved to near machine precision. See
Figure 2, illustrating the time evolution of the various components
of the discrete energy, as well as the relative deviation, defined as:
En=E(d),n+1/2E(d),n1/2
H(d),1/22, where the operator η2indi-
cates the nearest power of two to η, rounding towards zero.
6.2. Audio Simulations
Figure 3 displays the spectrograms of the output signals in three
different situations: a) the string is plucked with force of fe=
5N, at xe= 0.8L, and only the geometric nonlinearity is active.
A pitch glide is clearly observable; b) the string is plucked as in
0 2 4 6 8 10
Time (ms)
-2
0
2
10-12
0 2 4 6 8 10
Time (ms)
10-15
10-10
10-5
Energy components (J)
Figure 2: Numerical energy balance. The upper panel displays the
evolution of the discrete energy components over time. The string
is at rest, while the finger is initially positioned above the string,
with a starting velocity of 0.7m/s. The second panel represents
the relative energy deviation in the same situation, as defined in
Section 6.1.
(a), and all nonlinearities but the finger are active. The rattling
of the string against the fretboard and the frets is evident at the
first instants; c) all nonlinearities are active, and the string is not
plucked, but the finger is excited with a constant force of fe,FG =
0.9N, the result is similar to a finger tap sound.
7. CONCLUDING REMARKS
An efficient method for the simulation of complex dynamics of
the guitar string has been presented here. In terms of efficiency,
it is near to the “baseline" cost of the simulation of a string under
linear conditions, while retaining the feature of an energy balance,
leading to a stable algorithm. Simulation in real time for a full
six-string acoustic guitar is comfortably within the capability of
modest commercially-available hardware.
This good performance relies on judicious choices of discreti-
sation strategies for the different parts of the problem—explicit
methods for the linear part of the problem, coupled with spe-
cialised energy-based discretisation methods for the nonlinear
components of the dynamics. Here, we have chosen to attack
the four distinct nonlinearities separately, leading to a 4×4lin-
ear system—which is not expensive. A better approach would be
to consolidate all of the nonlinear dynamics into a single scalar
potential, eliminating the need for any linear system solution, at
the expense of less algorithmic control (and in particular the dis-
tinct approaches to the calculation of the potential gradients, as
discussed in Section 4.7.
Many features have not been included here. Most important
are: a) string motion in distinct polarisations, and b) the model-
ing of the coupling to the body and radiation. Incorporating a) is
certainly possible, and would roughly double computational cost,
DAFx.7
Proceedings of the 27th International Conference on Digital Audio Effects (DAFx24), Guildford, United Kingdom, 3 - 7 September 2024
(a)
50 100 150 200 250
Time (ms)
0
0.5
1
1.5
2
2.5
3
3.5
4
Frequency (kHz)
(b)
50 100 150 200 250
Time (ms)
(c)
50 100 150 200 250
Time (ms)
Figure 3: Audio simulations: a) plucked string with geometric nonlinearity alone; b) plucked string with geometric, fretboard and frets
nonlinearities; c) finger tap simulation. These spectrograms correspond to a guitar D string, with parameters as given in [11].
and introduce a wider sound palette, through the angle of plucking
relative to the fretboard (and the accompanying additional con-
trol complexity). Incorporating b) through a full physical model
is infeasible, though such effects can be approximated through the
use of measured body responses. Further work in the very near
future will include plugin development, and examining the very
large problem of instrument control—not addressed here.
8. REFERENCES
[1] K. Karplus and A. Strong, “Digital synthesis of plucked-string and drum tim-
bres,” Comp. Music J., vol. 7, no. 2, pp. 43–55, 1983.
[2] D. Jaffe and J. O. Smith III, “Extensions of the Karplus-Strong plucked string
algorithm,” Comp. Music J., vol. 7, no. 2, pp. 56–68, 1983.
[3] J. O. Smith III, “Efficient simulation of the reed-bore and bow-string mech-
anisms,” in Proc. of Int. Comp. Music Conf., The Hague, The Netherlands,
October 1986, pp. 275–280.
[4] J. O. Smith III, “Physical modelling using digital waveguides, Comp. Music
J., vol. 16, no. 4, pp. 74–91, 1992.
[5] M. Karjalainen, V. Välimäki, and Z. Janosy, “Towards high-quality sound syn-
thesis of the guitar and string instruments,” in Proc. Int. Comp. Music Conf.,
Tokyo, Japan, September 1993, pp. 56–63.
[6] M. Laurson, C. Erkut, V. Välimäki, and M. Kuuskankare, “Methods for model-
ing realistic playing in acoustic guitar synthesis,” Comp. Music J., vol. 25, no.
3, pp. 38–49, 2001.
[7] G. Derveaux, A. Chaigne, P. Joly, and E. Bécache, “Time-domain simulation
of a guitar: Model and method,” J. Acoust. Soc. Am., vol. 114, no. 6, pp. 3368–
3383, 2003.
[8] R. Bader, Computational Mechanics of the Classical Guitar, Springer-Verlag,
Berlin Heidelberg, 2005.
[9] G. Evangelista and F. Eckerholm, “Player instrument interaction models for
digital waveguide synthesis of guitar: Touch and collisions, IEEE Trans. Audio
Speech Language Proces., vol. 18, no. 4, pp. 822–832, 2010.
[10] V. Debut and J. Antunes, “Physical synthesis of six-string guitar plucks using
the Udwadia-Kalaba modal formulation,” J. Acoust. Soc. Am., vol. 148, no. 2,
pp. 575–587, 2020.
[11] S. Bilbao and A. Torin, “Numerical modeling of string/barrier collisions: The
fretboard,” in Proc. 17th Int. Conf. Digital Audio Effects, Erlangen, Germany,
Sept. 2014.
[12] S. Bilbao and A. Torin, “Numerical modeling and sound synthesis for artic-
ulated string/fretboard interactions,” J. Audio Eng. Soc., vol. 63, no. 5, pp.
336–347, 2015.
[13] L. Hiller and P. Ruiz, “Synthesizing musical sounds by solving the wave equa-
tion for vibrating objects: Part I,” J. Audio Eng. Soc., vol. 19, no. 6, pp. 462–70,
1971.
[14] S. Bilbao, C. Desvages, M. Ducceschi, B. Hamilton, R. Harrison, A. Torin,
and C. Webb, “Physical modeling, algorithms and sound synthesis: The NESS
project,” Comp. Music J., vol. 43, no. 2/3, pp. 15–30, 2020.
[15] X. Yang and D. Han, “Linearly first- and second-order, unconditionally energy
stable schemes for the phase field crystal model,” J. Comp. Phys., vol. 330, pp.
1116–1134, 2016.
[16] X. Yang, J. Zhao, and Q. Wang, “Numerical approximations for the molecu-
lar beam epitaxial growth model based on the invariant energy quadratization
method,” J. Comp. Phys., vol. 333, pp. 104–127, 2017.
[17] J. Shen, J. Xu, and J. Yang, “The scalar auxiliary variable (SAV) approach for
gradient flows,” J. Comp. Phys., vol. 353, pp. 407–416, 2018.
[18] S. Bilbao, M. Ducceschi, and F. Zama, “Explicit exactly energy-conserving
methods for hamiltonian systems,” J. of Comp. Phys., vol. 472, pp. 111697,
2023.
[19] M. Ducceschi and S. Bilbao, “Simulation of the geometrically exact nonlinear
string via energy quadratisation,” J. Sound Vib., vol. 534, pp. 117021, 2022.
[20] M. Ducceschi and S. Bilbao, “Real-time simulation of the struck piano string
with geometrically exact nonlinearity via novel quadratic hamiltonian method,
in Proc. 10th Eur. Nonlinear Dynamics Conf., Lyon, France, July 2022.
[21] M. Ducceschi, S. Bilbao, S. Willemsen, and S. Serafin, “Linearly-implicit
schemes for collisions in musical acoustics based on energy quadratisationa),”
J. Acoust. Soc. Am., vol. 149, no. 5, pp. 3502–3516, 05 2021.
[22] M. van Walstijn, V. Chatziioannou, and A. Bhanuprakash, “Implicit and ex-
plicit schemes for energy-stable simulation of string vibrations with collisions:
Refinement, analysis, and comparison,” J. Sound Vib., vol. 569, pp. 117968,
2024.
[23] S. Bilbao, Numerical Sound Synthesis: Finite Difference Schemes and Simula-
tion in Musical Acoustics, John Wiley and Sons, Chichester, UK, 2009.
[24] P. Morse and U. Ingard, Theoretical Acoustics, Princeton University Press,
Princeton, NJ, USA, 1968.
[25] G. Kirchhoff, Vorlesungen über Mechanik, Tauber, Leipzig, 1883.
[26] G. F. Carrier, “On the non-linear vibration problem of the elastic string,” Q.
Appl. Math., vol. 3, no. 2, pp. 157–165, 1945.
[27] T Tolonen, V. Välimäki, and M. Karjalainen, “Modelling of tension modulation
nonlinearity in plucked strings,” IEEE Trans. Speech Audio Proces., vol. 8, pp.
300–310, 2000.
[28] A. Chaigne and A. Askenfelt, “Numerical simulations of struck strings. I. A
physical model for a struck string using finite difference methods,” J. Acoust.
Soc. Am., vol. 95, no. 2, pp. 1112–1118, 1994.
[29] S. Bilbao, A. Torin, and V. Chatziioannou, “Numerical modeling of collisions
in musical instruments,” Acta Acustica u. Acustica, vol. 101, no. 1, pp. 155–
1731, 2015.
[30] V. Chatziioannou and M. van Walstijn, “Energy conserving schemes for the
simulation of musical instrument contact dynamics,” J. Sound Vib., vol. 339,
pp. 262–279, 2015.
[31] B. Hosseini, N. Nigam, and J. Stockie, “On regularizations of the Dirac delta
distribution,” J. Comp. Phys., vol. 305, pp. 423–447, 2016.
[32] S. Bilbao and J. O. Smith III, “Energy conserving finite difference schemes for
nonlinear strings,” Acustica, vol. 91, pp. 299–311, 2005.
[33] M Woodbury, “Inverting modified matrices,” Tech. Rep., Princeton, New Jer-
sey, USA, 1950, Statistical Research Group, Memo. Rep. no. 42.
[34] R. Russo, S. Bilbao, and M. Ducceschi, “Scalar auxiliary variable techniques
for nonlinear transverse string vibration,” IFAC-PapersOnLine, Accepted for
publication, IFAC Workshop on Lagrangian and Hamiltonian Methods for Non-
linear Control LHMNC.
[35] J. Sherman and W. J. Morrison, “Adjustment of an inverse matrix corresponding
to a change in one element of a given matrix, Ann. Math. Stat., vol. 21, pp.
124–127, 1950.
[36] G. Evangelista and J. O. Smith, “Structurally passive scattering element for
modeling guitar pluck action,” in Proc. 13th Int. Conf. Digital Audio Effects,
Graz, Austria, Sept. 2010, pp. 10–17.
DAFx.8
156 Case studies
7.2 Physical modelling of the yaybahar
This section is based on a paper presented at the International Conference on Digital Audio
Effects (DAFx) in 2023 [
181
]. It introduces the physical model of the yaybahar, a recently
invented acoustic musical instrument. The model uses a modal approach featuring a bowed
string connected to a distributed bridge at the boundary. Springs are attached to the bridge, set
in motion by its vibrations, and are connected, at the opposite end, to a tensioned membrane.
The elements are interconnected using an energy-consistent framework through boundary
forces. Additionally, a modal model of a thin spring is presented, utilizing analytic modes.
This specific model is not detailed elsewhere in the thesis.
The springs and the membranes are treated here as feed-forward elements, as discussed
in Section 2 of the paper. This approximation significantly simplifies the modal approach
and allows for the formulation of a set of boundary conditions for the spring that yield a
closed-form expression for the mode shape functions, similar to that of the linear string
discussed in Chapter 2. The simplification has little impact on the instrument sound when
the excitation originates from the string. However, the yaybahar was also designed to be
excited from the membranes and springs, producing echo and reverb effects [
59
, Instrumental
Interlude 2]: this part of the dynamics cannot be captured with the simplified inter-object
connections. Future work should incorporate physically motivated boundary conditions for
the spring, along with a fully coupled model with bi-directional connections.
Additionally, in the original yaybahar design, the springs were attached to the strings
near the bridge, whereas other iterations of the instrument have them attached directly to the
bridge. The latter approach was adopted in this work.
Paper errata
The curve in Figure 3(c) of the paper, along with the corresponding formula in the caption, is
incorrect. The correct version is presented in Figure 6.1 of this thesis.
Proceedings of the 26th International Conference on Digital Audio Effects (DAFx23), Copenhagen, Denmark, 4 - 7 September 2023
EFFICIENT SIMULATION OF THE YAYBAHAR USING A MODAL APPROACH
Riccardo Russo, Michele Ducceschi
Department of Industrial Engineering
University of Bologna
Viale Risorgimento 2, Bologna, Italy
riccardo.russo19@unibo.it
michele.ducceschi@unibo.it
Stefan Bilbao
Acoustics & Audio Group
University of Edinburgh
Edinburgh, UK
sbilbao@ed.ac.uk
ABSTRACT
This work presents a physical model of the yaybahar, a recently
invented acoustic instrument. Here, output from a bowed string is
passed through a long spring, before being amplified and prop-
agated in air via a membrane. The highly dispersive character
of the spring is responsible for the typical synthetic tonal qual-
ity of this instrument. Building on previous literature, this work
presents a modal discretisation of the full system, with fine control
over frequency-dependent decay times, modal amplitudes and fre-
quencies, all essential for an accurate simulation of the dispersive
characteristics of reverberation. The string-bow-bridge system is
also solved in the modal domain, using recently developed non-
iterative numerical methods allowing for efficient simulation.
1. INTRODUCTION
The yaybahar is an acoustic musical instrument, recently invented
by Turkish artist Görkem ¸Sen 1. It consists of a neck, with two
strings and a fretboard, to which two long springs are attached;
each spring is in turn connected, on its opposite end, to a tensioned
membrane. The instrument, depicted in Figure 1, is played by ei-
ther bowing and plucking the strings, or by hitting the springs and
the membranes with a mallet. The yaybahar can be described as
a cello-like instrument, where amplification is provided by springs
and membranes, and not by a resonant body. This structure pro-
vides a distinctive reverberant sound, mainly due to the character-
istic sound transmission of springs [1]. Given its modular design,
the yaybahar lends itself well to physical modeling simulation:
in fact, all its components are widely studied systems in physi-
cal modeling literature [1, 2, 3]; therefore, a model can be imple-
mented by first simulating the different modules, and by then con-
necting them together appropriately. A first physical model of the
yaybahar was recently proposed by Christensen et al. [4]. There,
the strings and membranes are described by the Kirchhoff-Carrier
and the Berger models respectively [2, Chapters 8, 13], thus incor-
porating mild nonlinear effects, while the spring is modeled by a
linear stiff bar, following [5]. The components are then coupled
by lumped, spring-like connections, and the full model is simu-
lated by using finite-difference-time-domain (FDTD) methods.
1https://www.gorkemsen.com/
gorkem-sen- s-yaybahar
2https://commons.wikimedia.org/wiki/File:
Yaybahar.jpg
Copyright: © 2023 Riccardo Russo et al. This is an open-access article distributed
under the terms of the Creative Commons Attribution 4.0 International License, which
permits unrestricted use, distribution, adaptation, and reproduction in any medium,
provided the original author and source are credited.
Figure 1: The yaybahar (Source 2)
In this work, a different approach is proposed, based on a
modal decomposition of the subsystems. The bowed string, in
particular, is simulated in the modal domain following the non-
iterative procedure developed in [6], and building on the results
presented in [7]. The spring and the membrane, acting as rever-
beration units, can be simulated efficiently in the modal domain,
incorporating refined loss profiles for realistic reverberation [8, 9].
Here, the interconnection between subsystems is performed in an
energy-consistent framework via boundary forces, rather than us-
ing additional spring-like connections as in [4]. To this end, a
novel model for the coupling between a vibrating string and a dis-
tributed bridge is presented, in the modal domain, which serves as
an emulation for the neck. Given the low amplitude of vibration in
the subsystems, linear models for the resonators are adopted with-
out compromising the realism of the sound synthesis overall, as the
nonlinear bowing mechanism is largely responsible for the typical
drone-like sound of the instrument.
The paper is structured as follows: Section 2 presents the math-
ematical models of the instrument subcomponents, Section 3 de-
scribes the semi-discretisation in the modal domain, Section 4 il-
lustrates the time-stepping algorithms, Section 5 presents the re-
sults of a case study and, finally, Section 6 concludes the paper.
2. MODELS
In this section, continuous models for the various components of
the yaybahar are presented. A diagram of the instrument’s sub-
systems (bow, string and bridge) and their couplings is as shown
in Figure 2. The resulting bridge force is fed to the spring, and
the spring sets the membrane into vibration. As shown below,
DAFx.1
Proceedings of the 26th International Conference on Digital Audio Effects (DAFx23), Copenhagen, Denmark, 4 - 7 September 2023
Figure 2: A scheme of the instrument model and the elements con-
nections.
the string-bridge coupling modifies significantly the distribution
of the eigenfrequencies compared to the isolated string. On the
other hand, the spring and the membrane, acting as reverberant
units characterised by a large modal density, are less affected by
couplings at the boundaries. This justifies their inclusion as non-
interacting subsystems, thus considerably simplifying the modal
approach. This design shares some similarities with the commuted
synthesis approach [10].
For simplicity, in this section, the models are presented
here with no damping, except for friction losses induced by the
bow. Viscous-type and radiation damping will be introduced in a
frequency-dependent manner in the modal domain, as illustrated
in Section 3.4.
2.1. Bowed Stiff String and Distributed Bridge
The equations for the coupled bowed string/bridge system are
given here as follows:
ρs2
tus=Ts2
xusκ2
s4
xusFbδ(xxb)ϕ(η),(1a)
ρp2
tup=κ2
p4
zup+δ(zzs)Fs(t).(1b)
Here, subscripts s,p,brefer, respectively, to the string, the bridge
(“ponticello”) and the bow. In the system above assumes that the
string and the bridge vibrate in a single, vertical polarisation, thus
neglecting the rocking motion observed in instruments such as the
violin [11]. In (1a), us=us(x, t) : [0, Ls]×R+
0Rrepresents
-1 0 1
-1
0
1
( )
-1 0 1
-1
0
1
( )
-0.5 0 0.5
-1
0
1
( )
-1 0 1
-1
0
1
( )
(a)
(c)
(b)
(d)
Figure 3: Some friction characteristics: (a) Coulomb dry friction;
(b) the curve by Woodhouse and Smith [12]; (c) the curve by Gal-
luzzo [13]; (d) the continuous curve defined in equation 3, with
a= 10 (dashed line) and a= 100 (solid line). For the mathemat-
ical expressions of the four friction characteristics refer to [6].
the transverse displacement of a string of length Lsin a single
polarisation, as a function of spatial coordinate xand time t.ρs
is the string linear density in kg m1;Tsis the string tension in
N, and κsis a rigidity constant in N1/2m (κ2
sis typically given
as the product of Young’s modulus times the moment of inertia).
Analogous definitions hold for (1b), the equation describing the
displacement up=up(z, t) : [0, Lp]×R+
0Rof the bridge.
Here and elsewhere the nth partial derivative with respect to the
variable αis denoted by n
α.
In (1a), the string is coupled with a bow model, following [6].
The bow excitation is assumed to act pointwise downward at xb,
according to the dimensionless friction coefficient ϕ, as seen in
[14]. Various choices for this coefficient are available, see e.g. [12,
13, 2] and also Figure 3. Note that all the four curves displayed in
Figure 3 satisfy:
η ϕ(η)0,lim
|η|→0ϕ(η) < ,(2)
allowing a non-iterative time stepping procedure to be used, fol-
lowing recent results in [7]. Here, for illustrative purposes, the
“soft” characteristic defined in [2] was chosen, defined as:
ϕ(η) = 2a η e2+1
2, η := tu(xb, t)vb.(3)
The input bow parameters are the bow force Fb, in N, and the bow
velocity vbin m s1. Furthermore, in (3), ais a free parameter of
the model adjusting the slope of the curve.
The coupling between the string and the bridge takes place at
the string’s right boundary, and is expressed as an input force Fs
in the bridge equation (1b). The string is assumed to be in contact
with the bridge at zsalong the bridge’s domain. The string’s left
boundary, as well as the bridge’s endpoints, are all assumed to be
simply-supported. The complete set of boundary conditions to be
imposed is:
up(0, t) = 2
zup(0, t) = up(Lp, t) = 2
zup(Lp, t) = 0,(4a)
us(0, t) = 2
xus(0, t) = 2
xus(Ls, t) = 0,(4b)
Fs(t) = T0xus(Ls, t) + κ2
s3
xus(Ls, t),(4c)
up(zs, t) = us(Ls, t).(4d)
The relations above are assumed to hold t0. Note that (4d)
represents a rigid contact condition between the string and the
bridge.
2.1.1. Energy Balance
An energy balance for the bridge is obtained after multiplying (1b)
by tupand integrating over [0, Lp]. After integration by parts,
and owing to (4a), one obtains:
d
dtZLp
0ρp
2(tup)2+κ2
p
2(2
zup)2
| {z }
Hp
dz= ˙up(zs, t)Fs.(5)
The string energy balance is obtained analogously, by multiplying
equation (1a) by tusand integrating. After suitable integration
by parts, and taking into account the boundary conditions (4b) and
(4c), one obtains:
d
dtZLs
0ρs
2(tus)2+Ts
2(xus)2+κ2
s
2(2
xus)2
| {z }
Hs
dx=
=Fs˙us(Ls, t)Fb˙u(xb, t)ϕ( ˙u(xb, t)).(6)
DAFx.2
Proceedings of the 26th International Conference on Digital Audio Effects (DAFx23), Copenhagen, Denmark, 4 - 7 September 2023
Finally, owing to the contact condition (4d), and by means of (5),
one may express (6) as:
d
dtZLs
0Hsdx+ZLp
0Hpdz=−Q +P,(7)
where the dissipated and supplied power are defined as, respec-
tively, Q:= Fbη ϕ(η),P:= Fbvbϕ(η). Owing to property
(2), in the combined system the energy is non-increasing when the
bow velocity vb(and, therefore, the supplied power P) is identi-
cally zero, leading to boundedness of the solutions.
Finally, the output force exerted by the bridge onto the spring
is then computed at the desired location zoas:
Fp(t) = κ2
p3
zup(zo, t).(8)
2.2. Spring
A model of a thin spring that takes into account the helical struc-
ture is here implemented, following [3]. In fact, the “bar" model
of a spring holds for specific geometries [5], and cuts the low-
frequency echoes that are characteristic of spring reverberators [1].
The system is developed starting from Wittrick’s equations [15],
under the assumption that the wire radius-helix radius ratio rc/Rc
is small [16] (see Figure 4). This allows the model to be reduced
to a system of four equations, which relate the displacement in the
transverse and longitudinal directions to the moments along the
same directions:
A2
tv=Rsm+δ(ssp)αpFp,Dm =Rsv.(9)
Here, v:= [vτ(s, t), vλ(s, t)]: [0, Lc]×R+
0R2is the vec-
tor of displacements, where the subscripts τand λrefer to the
transverse and longitudinal directions, respectively. Analogously,
m:= [mτ, mλ]is the vector of moments. Above, sexpresses
the arclength of the coil, such that 0sLc. The input force
Fp, computed in equation (8), is applied pointwise at s=sp,
while the vector αpis a unit vector that indicates the amount of
force exerted in both polarisations. The matrices A,DR2×2
are diagonal, and given by:
A=ρc1 0
0 1 l22
s,D=κ2
c1 0
0 1 + νcl22
s.(10)
Above, ρcis the linear density of the coil, in kg m1,κcis a
rigidity constant in N1/2m, and νcis the Poisson ratio of the coil.
RR2×2is a symmetric matrix, of the form:
R=2µ/l (1 µ2)/l +l2
s
0 2µ(l2
s+ 1/l).(11)
The symbol ldenotes the ratio Rc/cos2(θ), where θis the pitch
angle, Rcthe coil radius, and µis shorthand for tan(θ). A graph-
ical representation of the spring physical quantities is provided in
Figure 4.
2.2.1. Energy Analysis
The energy balance and boundary conditions may be obtained, in
the zero-input (Fp= 0) case, as follows. First, left-multiply the
first equation in (9) by tv. Then, take a time derivative of the
(a) Directions. (b) Wire/helix radius. (c) Tilt angle.
Figure 4: Spring physical quantities.
second equation in (9), and left-multiply by m, where is the
transposition operator. Integrating the resulting equations gives:
ZLc
0
tvA2
tvds=ZLc
0
tvRsmds, (12a)
ZLc
0
mDtmds=ZLc
0
mR(stv) ds. (12b)
Integrating by parts to the right-hand side of (12b), one is able to
express the right-hand side of (12a), which, in turn, can be rewrit-
ten as:
ZLc
0tvA2
tv+mDtmds= (B0+mRtv)Lc
0.
Here
B0:= lstvλ(smτ+ 2µ∂smλ) + tvλ(2µl2
smλl2
smτ)
lstvτ(smλ)tvτ(l2
smλ).(13)
By further applying integration by parts, one derives the energy
balance:
d
dtZLc
0Hcds= (B0+B1+mRtv)Lc
0:= BcLc
0.(14)
Here, the energy density is:
Hc=ρc
2(tvτ)2+ (tvλ)2+l2(tsvλ)2+
+κ2
c
2m2
τ+ (1 + νc)m2
λ+l2(smλ)2;(15)
while B1is:
B1=l2ρc(tvλ)(s2
tvλ) + l2κ2
cmλ(stmλ).(16)
It is useful to write the boundary terms in terms of the conjugate
variables forces / velocities and moments / angular velocities [3].
To that end, rearranging the boundary terms in (14) allows to write:
Bc=Fτtvτ+Fλtvλ+Fσtvσ+mτϕτ+mλϕλ+mσϕσ.
DAFx.3
Proceedings of the 26th International Conference on Digital Audio Effects (DAFx23), Copenhagen, Denmark, 4 - 7 September 2023
Here, the σdenotes the direction perpendicular to the (τ, λ)-plane.
Denoting g:= µ2
l+1
l+l∂2
s, one has
Fτ=g mλ2µmτ/l, (17a)
Fλ=g mτ+ 2µl∂2
s+ 1/lmλ+l2ρcs2
tvλ,(17b)
Fσ=s(mτ+ 2µmλ),(17c)
ϕτ=l∂2
stvλ,(17d)
ϕλ= 2µl∂2
stvλ+l2κ2
cstmλ+l∂2
stvτ,(17e)
ϕσ=stvτ,(17f)
mσ=l∂smλ,(17g)
vσ=l∂svλ.(17h)
Setting boundary displacements, forces and moments to zero leads
to a generalisation of the classic beam boundary conditions of free,
simply-supported or clamped type. Here, a variant of free bound-
ary conditions along τ, λ will be used, combined with clamped
conditions along σ. Hence:
Fτ=Fλ=mτ=mλ=vσ=ϕσ= 0.(18)
These are intended to hold at the boundary points s={0, Lc},
and t0. An output signal Fc(t)may be then be extracted by
computing the sum of the forces Fτ,Fλ,Fσat a so, close, but not
equal, to the boundary Lc. Thus:
Fc(t) = Fτ(so, t) + Fλ(so, t) + Fσ(so, t).(19)
2.3. Membrane
A model for the membrane is given by the 2D wave equation [2,
Chapter 11]:
ρm2
tw=Tm2w+δ(XXc)δ(YYc)Fc(t).(20)
In the above, the two dimensional Laplacian was introduced as
2:= 2
X+2
Y. For simplicity, and to avoid the introduction
of further symbols, the membrane is supposed to be defined over
a square, of side length Lm. Thus, w=w(X, Y, t) : [0, Lm]×
[0, Lm]×R+Rdescribes the displacement of the membrane
in the transversal direction, ρmis the material surface density in
kg m2, and Tmis the tension applied at the edges in N m1. An
energy analysis for this system can be found in [2, Chapter 11].
Boundary conditions of fixed type will be considered here, such
that:
w(0, Y ) = w(Lm, Y ) = w(X, 0) = w(X, Lm) = 0.(21)
3. SEMI-DISCRETISATION
The equations presented in Section 2 will be now semi-discretised
in space using a modal approach. While the spring and the mem-
brane possess an analytical form for the modes of vibration, this is
not true in the case of a string coupled with a distributed bridge on
one end. For this reason, the modal expansion for the latter system
will be performed by solving the eigenvalue problem numerically.
3.1. Bowed Stiff String and Distributed Bridge
First, it is convenient to introduce spatial difference operators. The
string domain is divided into Mssubintervals of length h, the grid
spacing. This yields Ms+ 1 discretisation points, including the
end points. Analogously, the bridge is divided into Mpsubinter-
vals of length h. The continuous functions us(x, t)and up(z, t)
are then approximated by grid functions um
s(t)us(mh, t)and
un
p(t)up(nh, t), for integer m, n. In light of the numerical
boundary conditions given below, one has m[1, ..., Ms1],
n[1, ..., Mp1]. In vector notation, the grid functions will be
denoted us,up.
Basic forward and backward difference operators, approxi-
mating the first spatial derivative, and acting on um
s, are:
δ±
xum
s=±(um±1
sum
s)/h. (22)
Analogous definitions hold for the grid function un
p, thus, for in-
stance, δ+
zun
p= (un+1
pun
p)/h. The second and fourth spatial
derivatives are approximated by difference operators obtained by
combining the operators above, as:
δ2
x:= δ+
xδ
x, δ4
x:= δ2
xδ2
x,(23)
with similar definitions holding for δ2
z,δ4
z. Discrete versions of the
Dirac deltas in (1) are also needed. To that end, δ(xxb)in (1a)
is approximated by the column vector db, of length Ms1, as:
dν
b= (1 α)/h, dν+1
b=α/h, (24)
where ν:= floor(xb/h),α:= xb/hν. An analogous definition
holds for ds, approximating δ(zzs)in (1b).
3.1.1. Semi-Discrete Formulation
Given the definitions above, a semi-discrete approximation of (1)
is given as:
ρs¨um
s=Tsδ2
xum
sκ2
sδ4
xum
sFbdm
bϕ(η),(25a)
ρp¨un
p=κ2
bδ4
zun
p+dn
sfs(t).(25b)
Here, η=hd
b˙
usvb. A discrete version of the boundary con-
ditions and contact condition (4) ensuring numerical stability is:
u0
p=δ2
zu0
p=uMp
p=δ2
zuMp
p= 0,(26a)
u0
s=δ2
xu0
s=δ2
xuMs
s= 0,(26b)
fs(t) = Tsδ+
xuMs
s+κ2
sδ+
xδ2
xuMs
s,(26c)
hd
sup=uMs
s.(26d)
By expanding the operators and applying the boundary conditions,
the semi-discrete equations can be arranged in vector form. To
that end, define u:= [u
s,u
p]. System (25) can be then written
in compact form as:
M¨
u=Ku FbJbϕ(η).(27)
Here, Jbis a vector obtained by concatenating dbwith a zero-
vector of dimension Mp1, and η=hJ
b˙
uvb.Mis positive-
definite, symmetric, square diagonal block matrix, with diagonal
blocks given as:
M11 =ρsIs,M22 =ρpIp+ρsh2dsd
s.(28)
Here, Isand Ipare identity matrices, of dimension (Ms1) ×
(Mp1) and (Mp1) ×(Ms1) respectively. Furthermore,
DAFx.4
Proceedings of the 26th International Conference on Digital Audio Effects (DAFx23), Copenhagen, Denmark, 4 - 7 September 2023
the stiffness matrix is a positive-definite, square block matrix, with
blocks:
K11 =TsD2
x+κ2
sD2
xD2
x,
K12 =K
21 K21 =h0,κ2
s
h3ds,Ts
h2+2κ2
s
h3dsi,
K22 =κ2
pD2
zD2
z+Ts+2κ2
s
h2dsd
s,
(29)
where D2
xand D2
zare the second difference operators with
Dirichlet end conditions of dimensions, respectively, (Ms1) ×
(Ms1), and (Mp1) ×(Mp1) (for the explicit form
of these matrices, see [2, Chapter 5]). K21 has dimension
(Mp1) ×(Ms1), and is a composition of a zero-matrix of
dimension (Mp1) ×(Ms3) with two vectors.
An energy balance in the modal domain is readily available
from (27), after left-multiplying by h˙
u. When vb= 0, one has:
d
dth
2˙
uM˙
u+h
2uKu=ηϕ(η)0.(30)
Since both M,Kare non-negative, the energy is non-negative, and
decays over time.
0 50 100
Index
102
103
104
Hz
p = 3.0619
Coupled
Isol.
0 50 100
Index
0
100
200
Cents
0 50 100
Index
102
103
104
Hz
p = 0.0968
Coupled
Isol.
0 50 100
Index
0
1000
2000
Cents
Figure 5: Eigenfrequencies of the coupled system and the ones of a
simply supported stiff string in isolation, under two different values
of κp. The left value is typical of steel, while the right one was
chosen arbitrarily low for demonstration purposes. Other physical
parameters, on common between the two cases, were: Ls= 0.69
m; Ts= 147.7N; ρs= 0.0063 Kg m1;κs= 0.4835 N1/2
m; Lp= 0.07 m; ρp= 0.0251 Kg m1.The contact point was
set to: zs= 0.03 m. The top figures report the frequencies in
log scale, while the bottom figures display the difference in cents
between frequencies with the same index.
3.1.2. Modal Expansion
A modal expansion of system (27) is now performed by solving the
generalised eigenvalue problem. For that, consider the following:
KU =MUΩ2
u.(31)
Figure 6: Modes of the coupled string-bridge system, which were
normalized, and plotted orthogonal one to another for visualisa-
tion purposes. The letter igives the mode index. The blue line
represents the string, and red one the bridge, while the projection
of the contact point on the z-axis is highlighted with a black dot.
The physical parameters were the same listed in Figure 5, with
κp= 3.0619 N1/2m.
Here, Uis a matrix of real eigenvectors, and 2is a diagonal ma-
trix of real, positive eigenvalues. Note that, while both Kand M
are symmetric, the product M1Kgenerally will not be. How-
ever, since Mis positive definite, the eigenvalues are then real
[17], and they must also be non-negative since so are the eigen-
values of K. Then, define u=U1u. System (27) may then be
written as:
¨
u=2
uuFbξbϕ(η), η =ξ
η˙
uvb,(32)
with ξ
η:= hJ
bU,ξb:= (MU)1Jb. This a modal system
with a diagonal linear part, with modal coordinates u. One may of
course solve the numerical eigenvalue problem (31) using a very
fine grid (i.e., using a small grid spacing h), though only a number
Nuis kept in (32), fixed by Nyquist requirements.
Before proceeding, it is useful to compare the eigenfrequen-
cies of the string in isolation against those of the coupled string-
bridge system. Figure 5 shows two such comparisons, under two
different values of κp. These are computed for a bar of circular
cross section, with a diameter of 5 mm. The first value (κp3)
is typical of steel, while the second value (κc0.1) was selected
to artificially amplify the effects of the coupling. The top panels
report the frequencies in a log scale: it is seen that the reduced
stiffness shifts the eigenfrequencies downwards by up to two oc-
taves in the lowest range, as seen in the bottom panels. With suf-
ficiently large values of κp, as is the case of steel, the frequency
gap remains contained around the fundamental, as expected, but
it increases up to two semitones for larger modal indices. These
results underline the importance of considering the string-bridge
coupling for in the distribution of the eigenfrequencies.
DAFx.5
Proceedings of the 26th International Conference on Digital Audio Effects (DAFx23), Copenhagen, Denmark, 4 - 7 September 2023
The eigenmodes are represented in Figure 6, for a steel bridge.
Here, the first four modes are displayed, along with the 10th and
the 12th. It is possible to see that the bridge eigenmodes start
exhibiting a third node only after the 10th mode.
3.2. Spring
A modal version of the thin spring model was originally proposed
by van Walstijn [18]. In van Walstijn’s model, the modal expansion
is carried out numerically, by first performing a semi-discretisation
in space, and then computing the eigenvalues of the resulting ma-
trix. Such model found practical application in [19], where a vir-
tual analogue simulation of a spring reverb is developed. In this
work an analytic form for the modes is available under a choice
of the boundary conditions as per (18). To that end, consider the
following:
v(s, t) = p2/Lccos (γs)¯
v(t),
m(s, t) = p2/Lcsin (γs)¯
m(t),(33)
where ¯
v,¯
mare the time modal coordinates, and the factor
p2/Lcis just a useful normalisation constant. It is immedi-
ate to see that these satisfy the boundary conditions (18) when
γ={π/Lc,2π/Lc, ..., /Lc, ...}.
Let now γn:= nπ/Lc, for integer n. A solution to the
equation of motion is obtained using the quantised expressions
of the modes to solve an eigenvalue problem. Left-multiplying
the first equation in (9) by p2/Lccos (γns), and the second by
p2/Lcsin (γns)and integrating, one is able to express (9) as:
¯
A¨
¯
v=γn¯
R¯
m+p2/Lccos(γnsp)αpFp(t),(34a)
¯
D¯
m=γn¯
R¯
v.(34b)
Here, the transformed matrices are obtained by applying the
derivatives to the modal functions, and have the form (10), (11)
under the replacement of 2
sby γ2
n. Then, (34b) is used to ex-
press ¯
mis terms of ¯
v, and this is substituted in (34a). One gets:
¨
¯
v=VΩ2
nV1¯
v+p2/Lccos(γnsp)¯
A1αpFp.
where it was set:
VΩ2
nV1:= γ2
n¯
A1¯
R¯
D1¯
R.(35)
Here Vis a 2×2matrix of eigenvectors for the wavenumber γn,
and nis a diagnoal 2×2matrix of eigenfrequencies. Figure 7
reports the solution to the eigenvalue problem for a typical spring.
The eigenfrequencies lay on the yellow an purple lines.
Then, define vn:= (V)1¯
v. Thus, one gets:
¨
vn=2
nv+p2/Lccos(γnsp)( ¯
AV)1αpFp(t).(36)
Assume now n= 1, ..., Nv. The modal equations for the spring
are then a system of 2Nvequations, of the form:
¨
v=2
vv+ξpFp(t),(37)
where vis a vector of length 2Nv,vis a 2Nv×2Nvdi-
agonal matrix, whose diagonal elements are the 2×2diag-
onal blocks n,n= 1, ...Nvdefined in (35), and ξpis
a2Nvvector made composed by stacking the 2×1blocks:
p2/Lccos(γnsp)( ¯
AV)1αp,n= 1, ..., Nv.
Output (19) is extracted by substituting the solution (33) into
the boundary forces (17c) (17b) and (17a) computed at a position
close to Lc.
Figure 7: Plot of the dispersion relation of a thin spring. Physical
parameters were chosen to be coherent with a possible yaybahar
spring: Rc= 9 mm, rc= 1 mm, θ= 2°, Lc= 40 m, κc= 9.9
and νc= 0.3.These values yield Nv= 2812 within the hearing
range.
3.3. Membrane
A particular solution to equation (20) with fixed boundary condi-
tions (21) is given by:
w(X, Y, t) = 2
Lm
sin βj
XπX
Lm
sin βj
YπY
Lm
wj(t),(38)
for integers βj
X,βj
Y[20]. The associated modal frequency is:
ωj=π
LmrTm
ρm(βj
X)2+ (βj
Y)2.(39)
The modal system for the membrane is then given by:
¨
w=2
ww+ξcFc(t),(40)
where wis a Nw×1vector, wis a Nw×Nwdiagonal matrix
where the jth diagonal element is ωjgiven above. The frequencies
should here be sorted in ascending order, such that ωj1ωj
ωj+1,j= 2, ..., Nw1. This allows to find the corresponding
modal indices βj
X,βj
Y. Above, ξcis a Nw×1vector whose jth
component is 2
Lmρmsin βj
XπXc
Lmsin βj
YπYc
Lm.
Output is extracted as:
wo(t) =
Nw
X
j=1
2
Lm
sin βj
XπXo
Lm
sin βj
YπYo
Lm
wj(t),(41)
though for synthesis purposes it may be convenient to use ˙wo(t)
instead.
3.4. Modal Equations of the Full System with Loss
The full system in the modal domain can thus be written as an
augmented version of (32), (37) and (40). This is:
¨
u(t) = 2
uu(t)Cu˙
u(t)ξbFbϕ(η),(42a)
¨
v(t) = 2
vv(t)Cv˙
v(t) + ξpFp(t),(42b)
¨
w(t) = 2
ww(t)Cw˙
w(t) + ξcFc(t),(42c)
DAFx.6
Proceedings of the 26th International Conference on Digital Audio Effects (DAFx23), Copenhagen, Denmark, 4 - 7 September 2023
where Cu,Cv,Cware, respectively, Nu×Nu,2Nv×2Nv,
Nw×Nwpositive, diagonal matrices containing the modal loss
coefficients in s1. System (42) depends on time only, and a suit-
able time stepping routine is offered below. Here, the input pa-
rameters are the bow force Fb, velocity vband position along the
string xb, which may be time-varying. The output is given by the
membrane displacement at the output location, as per (41).
4. TIME DISCRETISATION
Now, time is discretised with a time step k, yielding a sample rate
fs= 1/k. Then, a continuous function u(t)is approximated at
time step t=nk by the time series un. Time difference operators
are then introduced, as:
δ±
tun:= ±(un±1un)/k, δ
tun:= (un+1 un1)/2k. (43)
The second time difference is defined by combining the operators
above: δ2
tun:= δ+
tδ
tun. Finally, a time averaging operator is
defined as:
µ+
tun:= (un+1 +un)/2.(44)
4.1. String-Bridge System
It is now possible to adapt the numerical solver proposed in [7,
6] to numerically integrate equation (42a) in time. To that end,
(42a) is first turned into a 2Nu×2Nusystem of first-order-in-time
equations. Thus, define q:= uu,p:= ˙
u. Therefore, (42a)
becomes:
˙
q
˙
p=0 u
u1
uCu
| {z }
G
q
p0
1
uξbFbϕ(η),
η=0,ξ
ηq
pvb.
(45)
A second-order accurate, non-iterative numerical scheme is given
as:
σnδ+
tqn
δ+
tpn=Gµ+
tqn
µ+
tpn0
1
uξbFb
ϕ(ηn)
ηnµt+ηn.(46)
The form of σn, adapted from [6], is:
σn=I+kFb
2
ϕ
ηt=kn 0
1
uξb0,ξ
η,(47)
and is well-defined, owing to (2). Here, Jband Uare as per Sec-
tion 3.1.1 and 3.1.2, respectively. Expanding out the operators in
(46), one is able to compute qn+1,pn+1 as the solution of a single
linear system, thus avoiding entirely the need for iterative nonlin-
ear root finders. The update equation in this case is:
I+kFb
2
0
1
uξb0,ξ
ηk
2Gqn+1
pn+1=bn,
where bnis known from previous time steps. It is seen that the
update matrix is in the form of a block matrix with fully diagonal
blocks, plus a rank-1 perturbation. This can be solved efficiently,
via the Sherman-Morrison formula [21], as detailed in [6].
Stability of scheme (46) is somewhat harder to prove, though
partial results are available in [7]. Provided one chooses a num-
ber Nuof modes lower than the Nyquist limit, empirical evidence
suggests that the proposed scheme greatly outperforms simpler
explicit designs such as forward Euler or Runge-Kutta-type al-
gorithms [22] in terms of stability, while keeping compute times
within reference bounds for efficient simulation.
4.2. Spring & Membrane
The numerical integration of (42b), (42c) may be performed sim-
ply as:
δ2
tvn=2
vvnCvδ
tvn+ξpFn
p,(48a)
δ2
twn=2
wwnCwδ
twn+ξcFn
c.(48b)
Various other designs are possible, varying greatly in terms of sta-
bility and spectral accuracy. An attractive alternative is represented
by exact integrators [23, 2], though the schemes above yield a per-
ceptually reasonable reverberation characteristic [8]. Note that sta-
bility conditions arise as: v,w<2/k. These set upper limits for
the modal frequencies.
5. OUTPUT SIGNALS
Figure 8 displays the spectrograms of the normalised signals ex-
tracted from the three subsystems. The string physical values were
the ones of a C2 cello string, taken from [14], while the bridge
parameters were the same listed in Figure 5. The bow pressure
was Fb= 0.02 N, and the input and output positions were set to
0.73 ·Lsand 0.34 ·Lprespectively. The latter values were chosen
empirically to obtain a Helmholtz motion-shaped output sound [2,
Chapter 7]. The damping profile applied was the one proposed by
Valette [24]. The spring parameters were the ones detailed in Fig-
ure 7. Finally, the membrane physical values were: Lm= 0.5
m, Tm= 3000 N m1and ρm= 1.26 Kg m2, and the out-
put point was (Xo, Yo) = (0.47,0.62) ·Lm. A damping profile
was chosen, for the spring and the membrane, which consists of
a frequency-independent (F-I) and a frequency-dependent (F-D)
part; as proposed by Bilbao [2, Chapter 7] the latter depends on
the square of the mode number. The damping coefficients for the
spring were taken from [18]; in the mebrane case, the F-I coeffi-
cient was set to 10, while the F-D one to 5×105, both chosen em-
pirically. Only a few seconds-long portion of data was analysed,
in order to avoid including too many signal variations. The spring
and the membrane act here as reverberant components. Panel (b)
from Figure 8 clearly exhibits cross stripes which correspond to
the spring chirps. The membrane, on the other hand, introduces
a broadband signal, which mimics late reflections. This is clearly
visible in Panel (c) from Figure 8. Sound samples can be found at
the following Github link3.
6. CONCLUSION
This paper presented a physical model of the yaybahar in the
modal domain. To this end, a modal decomposition of its subcom-
ponents was offered, including a model for the coupling between
a vibrating string and a distributed bridge, and the analytic modal
expansion of a helical spring. In addition, an energy-consistent
method for connecting the instrument components was here pre-
sented, making use of boundary forces.
This work focused on the development of a yaybahar physical
model; nevertheless, different aspects were overlooked, and will be
3https://github.com/Nemus-Project/yaybahar- nit
DAFx.7
Proceedings of the 26th International Conference on Digital Audio Effects (DAFx23), Copenhagen, Denmark, 4 - 7 September 2023
Figure 8: Spectrograms of the three subsystems outputs after the
initial transient. Panel (a) displays the spectrogram of the ex-
tracted force Fp, panel (b) shows the spectrogram of the force
signal Fc, and panel (c) represents the output signal ˙woat the
output position (Xo, Yo).
subject of future work. The physical values for the spring and the
membrane were empirically tuned, while running proper measure-
ments on a real instrument would significantly improve the sound
quality. This is valid for the damping profiles as well. In addition,
the membrane was considered to be rectangular, while an accurate
reproduction would employ a circular model. Further future work
will also include a real-time implementation.
7. ACKNOWLEDGMENTS
This work was supported by the European Research Council
(ERC), under grant 2020-StG-950084-NEMUS.
8. REFERENCES
[1] J Parker and S. Bilbao, “Spring reverberation: A physi-
cal perspective, in Proc. Digital Audio Effects (DAFx-09),
Como, Italy, 09 2009.
[2] S. Bilbao, Numerical Sound Synthesis, John Wiley & Sons,
Ltd, Chichester, UK, 2009.
[3] S. Bilbao, “Numerical simulation of spring reverberation,” in
Proc. Digital Audio Effects (DAFx-13), Maynooth, Ireland,
09 2013.
[4] P.J. Christensen, S. Willemsen, and S. Serafin, “Applied
Physical Modeling for Sound Synthesis: the Yaybahar,” in
Proc. 2nd Nordic SMC Conf., Online, 11 2021.
[5] J. Parker, H. Penttinen, S. Bilbao, and J.S. Abel, “Modeling
methods for the highly dispersive slinky spring: A novel mu-
sical toy, in Proc. Digital Audio Effects (DAFx-10), Graz,
Austria, 09 2010.
[6] Riccardo Russo, Michele Ducceschi, and Stefan Bilbao, “Ef-
ficient simulation of the bowed string in modal form, in
Proc. Digital Audio Effects (DAFx-2022), Vienna, 09 2022.
[7] M. Ducceschi and S. Bilbao, “Non-iterative simulation meth-
ods for virtual analog modelling,” IEEE/ACM Trans. Audio
Speech Lang. Process., vol. 30, pp. 3189–3198, 2022.
[8] M. Ducceschi and C.J. Webb, “Plate reverberation: Towards
the development of a real-time plug-in for the working musi-
cian,” in Proc. Int. Conf. Acoust. (ICA 2016), Buenos Aires,
Argentina, 09 2016.
[9] R. Russo, “Physical modeling and optimisation of a emt 140
plate reverb, M.S. thesis, Aalborg University Copenhagen,
Copenhagen, Denmark, 2021.
[10] J.O. Smith, Physical Audio Signal Processing,https://
ccrma.stanford.edu/~jos/pasp/pasp.html,
accessed April 2023, online book, 2010 edition.
[11] J. Woodhouse, “On the "bridge hill" of the violin,” Acta
Acust. united Acust., vol. 91, pp. 155–165, 2005.
[12] J.H. Smith and J. Woodhouse, “The tribology of rosin,” J.
Mech. Phys. Solids, vol. 48, pp. 1633–1681, 08 2000.
[13] P. Galluzzo, J. Woodhouse, and H. Mansour, “Assessing fric-
tion laws for simulating bowed-string motion, Acta Acust.
united Acust., vol. 103, pp. 1080–1099, 11 2017.
[14] C. Desvages, Physical modelling of the bowed string and
applications to sound synthesis, Ph.D. thesis, The University
of Edinburgh, 2018.
[15] W.H. Wittrick, “On elastic wave propagation in helical
springs,” Int. J. Mech. Sci., vol. 8, no. 1, pp. 25–47, 1966.
[16] L. Della Pietra and S. della Valle, “On the dynamic behaviour
of axially excited helical springs, Meccanica, vol. 17, pp.
31–43, 1982.
[17] J.N. Franklin, Matrix Theory, Dover Publications, Mineola,
NY, USA, 2000.
[18] M. Van Walstijn, “Numerical calculation of modal spring
reverb parameters, in Proc. Digital Audio Effects (DAFx-
2020), Online, 09 2020.
[19] J. McQuillan and M. Van Walstijn, “Modal spring reverb
based on discretisation of the thin helical spring model,” in
Proc. Digital Audio Effects (DAFx-2021), Online, 09 2021,
vol. 2.
[20] L.E. Kinsler, A.R. Frey, A.B. Coppens, and J.V. Sanders,
Fundamentals of Acoustics, 4th Edition, Wiley, Hoboken,
NJ, USA, 1999.
[21] J. Sherman and W.J. Morrison, “Adjustment of an inverse
matrix corresponding to a change in one element of a given
matrix,” Ann. Math. Stat., vol. 21, pp. 124–127, 1950.
[22] R.J. LeVeque, Finite Difference Methods for Ordinary and
Partial Differential Equations. Steady State and Time Depen-
dent Problems, SIAM, Philadelphia, USA, 2007.
[23] J. Cieslinski, “On the exact discretization of the classical
harmonic oscillator equation,” J. Differ. Equ. Appl., vol. 17,
no. 11, pp. 1673–1694, 2009.
[24] C. Valette and C. Cuesta, Mécanique de la corde vibrante,
Hermès, Paris, 1993.
DAFx.8
Chapter 8
Conclusion and perspectives
This chapter provides a summary of the content and results of each chapter, followed by
concluding remarks and directions for future research.
8.1 Summary
Chapter 1 serves as a broad introduction to musical string vibration modelling. It reviews
the most significant mathematical models, starting from linear ones and extending to ge-
ometric nonlinearities, collisions, and friction, while presenting fundamental numerical
techniques. Following this review, an examination of state-of-the-art frameworks for the
efficient simulation of nonlinear systems is included, and the specific objectives of the thesis
are outlined.
Chapters 2 and 3 cover linear vibration and introduce the mathematical tools and notation
used throughout the text. Chapter 2 focuses on the continuous domain: it begins with the
concept of potential quadratisation in the lumped case and proceeds with the presentation
of the linear oscillator. It extends to systems of coupled oscillators; then, linear strings are
introduced. This chapter also details modal techniques, including refined, finite-impedance
boundary conditions. Chapter 3 illustrates numerical simulation techniques, starting with
time-stepping methods for both first- and second-order ODEs, discussing differences be-
tween one-step and two-step methods, and introducing the fundamental concepts of stability
(achieved through energy analysis), consistency, and convergence. The FD method is then
discussed for spatial domain discretisation and is applied to linear string models. An original
contribution of these chapters is the development of a model for a linear stiff string terminat-
ing with a spatially distributed boundary condition, serving as a model for a bridge within
an energy-consistent framework. The eigenfrequencies and vibration modes are derived by
solving a discrete eigenvalue problem.
166 Conclusion and perspectives
Chapter 4 discusses geometric nonlinearities. It begins with the lumped case of the
Duffing oscillator. Then, it extends to nonlinear string models, concluding with the KC
string, which is also presented in a modal form and with double polarisation. Quadratisation-
based approaches are first examined in the lumped case, followed by a description of the
SAV procedure for general spatially distributed nonlinear systems. The chapter includes an
in-depth analysis of the performance of SAV in the context of nonlinear transverse string
vibration, including a study on the global error demonstrating convergence. An issue arising
at lower sample rates, linked to anomalous behaviour of the auxiliary variable, is reported.
Finally, a technique based on a physical constraint is presented to mitigate this anomalous
behaviour while maintaining convergence. The chapter concludes with a brief discussion on
applying SAV to the GE string, building on prior work.
Chapter 5 focuses on simulating collisions using penalty models. The discussion begins
with the lumped case of a mass-barrier collision: the performance of a quadratised method is
here evaluated, confirming earlier observations of anomalous behaviour. Three techniques are
compared to address this issue: two from previous works and one adapted from the constraint
introduced in Chapter 4. Convergence is reported for the latter. The discussion then extends
to collisions involving strings, considering both lumped and distributed scenarios. These
cases are solved using SAV, and the constraint technique presented in Chapter 4 is further
adapted to handle distributed collisions. It is demonstrated that this approach effectively
helps in improving the simulation results. However, an open question remains regarding
the role of a shift constant, which must be non-zero to ensure the correct behaviour of the
simulation.
Chapter 6 deals with nonlinear friction induced by a bow. Here, a different non-iterative
approach is utilised, adapted from virtual-analogue modelling. The chapter begins by
discussing a lumped, bowed mass-spring system. Then, the analysis of a spatially distributed
case is examined, by considering the bowed ideal string, which is spatially discretised using
both FD and modal methods. A comprehensive comparison is made between traditional
iterative methods and newly developed non-iterative approaches for both the lumped and
distributed systems. The proposed schemes are shown to produce results comparable to those
obtained with fully implicit methods, while avoiding the need for iterative routines. Moreover,
they demonstrate robust numerical behaviour, outperforming classic explicit integrators, such
as forward Euler, in terms of stability. Yet, the stability properties of these new schemes still
require further study.
Chapter 7 proposes two case studies of physical models of musical instruments using the
techniques and models detailed in previous chapters. It corresponds to two papers presented
at the International Conference on Digital Audio Effects (DAFx). The first study shows the
8.2 Concluding remarks 167
simulation of a guitar fretboard. A novel approach is here introduced for solving multiple
nonlinearities simultaneously using SAV, which involves distinct auxiliary variables. This
approach differs from previous works and requires the inversion of a small matrix whose size
matches the number of nonlinear gradients. This method offers more flexibility in algorithm
design, allowing for the application of the constraint equations developed in earlier chapters.
The second study makes use of a bowed string coupled to a distributed bridge, as seen in
Chapter 3, solved through the non-iterative method presented in Chapter 6, combined with
a modal spring model employing analytic modes, to implement a physical model of the
yaybahar.
8.2 Concluding remarks
The aim of this thesis was to explore and advance the use of FDTD and modal methods
for simulating nonlinear string vibration, emphasising the perceptual accuracy of the syn-
thesis and efficiency of the algorithms. This work encompasses different nonlinearities
typically occurring in strings, employing newly developed non-iterative methods. In partic-
ular, quadratisation-based techniques are used for conservative nonlinear forces, enabling
a unified time-stepping procedure. It is demonstrated here that these non-iterative methods
significantly reduce the computational load required to solve nonlinear systems, allowing for
real-time simulation of physical models that were previously far from achieving real-time
performance. This is the case, for instance, of the guitar fretboard presented in Chapter
7. Comparisons with classic iterative methods show that these non-iterative techniques
overcome common challenges, such as variable compute times and issues related to the
existence and uniqueness of solutions. Additionally, while a formal mathematical proof of
convergence is not yet available, numerical testing strongly suggests convergence for these
methods, indicating that the simulation results are reliable at sufficiently high sample rates.
Despite these promising results, some issues remain unresolved. One of the goals of this
thesis was to formulate a general framework for the sound synthesis of nonlinear strings. It
was observed that the quality of the simulations is still highly dependent on careful discreti-
sation choices, particularly regarding the implementation of the nonlinear potential gradients.
This means the algorithm must still be tailored to each specific problem. These issues are
primarily linked to the behaviour of the auxiliary variable, which, if not properly constrained,
does not behave as its continuous counterpart at lower sample rates, leading to inaccurate
simulation results. While solutions were proposed for distinct nonlinearities, a universal
procedure for regularising the auxiliary variable’s behaviour has yet to be established. An
attempt was made here to extend a single technique to address two different nonlinearities, but
168 Conclusion and perspectives
its correct functioning in cases involving collisions requires further investigation. Moreover,
the results are still partial, as a convergence test was not performed for distributed collisions
with constraints applied. Further studies on these techniques will represent an important
direction for future research.
Some systems still require thorough exploration. For instance, while a SAV implementa-
tion of the GE string has been developed recently, no detailed study exists on the behaviour of
the auxiliary variable, nor is there an established technique to address the grid spacing issue
mentioned in Chapter 4. Future work will focus on employing modal techniques to spatially
discretize both transverse and longitudinal motion while also investigating the behaviour of
the auxiliary variable.
Additional research is needed to determine the best strategy for handling multiple non-
linearities. Consolidating all the nonlinear dynamics into a single scalar potential, thereby
eliminating the need to solve any linear system, would result in a much more efficient
procedure. However, studies on auxiliary variable behaviour remain necessary in this case.
Another unresolved issue concerns the stability properties of the non-iterative method
presented for the bow, which requires additional investigation. Furthermore, an important
research direction is extending this method to account for finite-width bow interaction.
Other potential directions for future work include unifying the two numerical methods
by developing a non-iterative procedure to handle both conservative and non-conservative
nonlinear forces simultaneously and incorporating complex boundary conditions in cases
involving geometric nonlinearities and collisions.
References
[1]
Adrien, J.-M. (1991). The missing link: modal synthesis. Representations of Musical
Signals, pages 269–297.
[2]
Adrien, J.-M. and Rodet, X. (1985). Physical models of instruments: A modular
approach, application to strings. In Proceedings of the International Computer Music
Conference, pages 85–89, Vancouver, Canada.
[3]
Amerio, L. (1978). Continuous solutions of the problem of a string vibrating against an
obstacle. Rendiconti del Seminario Matematico della Università di Padova, 59:67–96.
[4]
Anand, G. V. (1966). Nonlinear resonance in stretched strings with viscous damping.
The Journal of the Acoustical Society of America, 40(6):1517–1528.
[5]
Anand, G. V. (1969). Large-amplitude damped free vibration of a stretched string. The
Journal of the Acoustical Society of America, 45(5):1089–1096.
[6]
Antunes, J. and Debut, V. (2017). Dynamical computation of constrained flexible systems
using a modal Udwadia-Kalaba formulation: Application to musical instruments. The
Journal of the Acoustical Society of America, 141(2):764–778.
[7]
Arosio, A. (1999). On the nonlinear Timoshenko-Kirchhoff beam equation. Chinese
Annals of Mathematics, 20(04):495–506.
[8]
Arosio, A. (2001). A geometrical nonlinear correction to the Timoshenko beam equation.
Nonlinear Analysis: Theory, Methods & Applications, 47(2):729–740.
[9]
Avanzini, F., Marogna, R., and Bank, B. (2012). Efficient synthesis of tension modulation
in strings and membranes based on energy estimation. The Journal of the Acoustical
Society of America, 131(1):897–906.
[10]
Bacon, R. A. and Bowsher, J. M. (1978). A discrete model of a struck string. Acta
Acustica united with Acustica, 41(1):21–27.
[11]
Bader, R. (2005). Computational mechanics of the classical guitar. Springer-Verlag,
Berlin Heidelberg, Germany.
[12]
Bank, B. (2006). Physics-based sound synthesis of string instruments including geo-
metric nonlinearities. PhD thesis, Department of Measurement and Information Systems,
Budapest University of Technology and Economics.
170 References
[13]
Bank, B. and Sujbert, L. (2003). Modeling the longitudinal vibration of piano strings.
In Proceedings of the Stockholm Musical Acoustic Conference (SMAC), pages 143–146,
Stockholm, Sweden.
[14]
Bank, B. and Sujbert, L. (2004). A piano model including longitudinal string vibrations.
In Proceedings of the International Conference on Digital Audio Effects (DAFx), pages
89–94, Naples, Italy.
[15]
Bank, B. and Sujbert, L. (2005). Generation of longitudinal vibrations in piano strings:
From physics to sound synthesis. The Journal of the Acoustical Society of America,
117(4):2268–2278.
[16]
Bank, B., Zambon, S., and Fontana, F. (2010). A modal-based real-time piano synthe-
sizer. IEEE Transactions on Audio, Speech, and Language Processing, 18(4):809–821.
[17]
Bensa, J., Bilbao, S., Kronland-Martinet, R., Smith, J., and Voinier, T. (2005). Com-
putational modeling of stiff piano strings using digital waveguides and finite differences.
Acta Acustica united with Acustica, 91:289–298.
[18]
Bensa, J., Bilbao, S., Kronland-Martinet, R., and Smith, J. O. (2003). The simulation
of piano string vibration: From physical models to finite difference schemes and digital
waveguides. The Journal of the Acoustical Society of America, 114(2):1095–1107.
[19]
Betsch, P. and Steinmann, P. (2002). Frame-indifferent beam finite elements based
upon the geometrically exact beam theory. International Journal for Numerical Methods
in Engineering, 54(12):1775–1788.
[20]
Bhanuprakash, A., Van Walstijn, M., and Stapleton, P. (2020). A finite difference model
for articulated slide-string simulation. In Proceedings of the International Conference on
Digital Audio Effects (DAFx), pages 195–202, Vienna, Austria.
[21]
Bhargava, S. and Ghosh, R. (1924). Elastic impact of pianoforte hammer. The London,
Edinburgh, and Dublin Philosophical Magazine and Journal of Science, 47(282):1141–
1148.
[22]
Bilbao, S. (2004). Modal type synthesis techniques for nonlinear strings with an energy
conservation property. In Proceedings of the International Conference on Digital Audio
Effects (DAFx), pages 119–124, Naples, Italy.
[23]
Bilbao, S. (2005). Conservative numerical methods for nonlinear strings. The Journal
of the Acoustical Society of America, 118(5):3316–3327.
[24]
Bilbao, S. (2009). Numerical sound synthesis. John Wiley & Sons, Ltd, Chichester,
UK.
[25]
Bilbao, S., Desvages, C., Ducceschi, M., Hamilton, B., Harrison-Harsley, R., Torin,
A., and Webb, C. (2020). Physical modeling, algorithms, and sound synthesis: The ness
project. Computer Music Journal, 43(2-3):15–30.
[26]
Bilbao, S. and Ducceschi, M. (2022). Fast explicit algorithms for hamiltonian numerical
integration. In Proceedings of 2020 the European Nonlinear Dynamics Conference, Lyon,
France.
References 171
[27]
Bilbao, S., Ducceschi, M., and Webb, C. (2019). Large-scale real-time modular physical
modeling sound synthesis. In Proceedings of the International Conference on Digital
Audio Effects (DAFx), pages 128–135, Birmingham, UK.
[28]
Bilbao, S., Ducceschi, M., and Zama, F. (2023). Explicit exactly energy-conserving
methods for hamiltonian systems. Journal of Computational Physics, 472:111697.
[29]
Bilbao, S., Hamilton, B., Torin, A., Webb, C., Graham, P., Gray, A., Kavoussanakis, K.,
and Perry, J. (2013). Large scale physical modeling sound synthesis. In Proceedings of
the Stockholm Musical Acoustics Conference/Sound and Music Computing Conference
(SMAC/SMC), pages 593–600, Stockholm, Sweden.
[30]
Bilbao, S., Russo, R., Webb, C., and Ducceschi, M. (2024). Real-time guitar synthesis.
In Proceedings of the International Conference on Digital Audio Effects (DAFx), pages
163–170, Guildford, UK.
[31]
Bilbao, S. and Smith, J. O. (2005). Energy-conserving finite difference schemes for
nonlinear strings. Acta Acustica, 91(2):299–311.
[32]
Bilbao, S. and Torin, A. (2014). Numerical simulation of string/barrier collisions:
The fretboard. In Proceedings of the International Conference on Digital Audio Effects
(DAFx), pages 137–144, Erlangen, Germany.
[33]
Bilbao, S. and Torin, A. (2015). Numerical modeling and sound synthesis for articulated
string/fretboard interactions. Journal of the Audio Engineering Society, 63(5):336–347.
[34]
Bilbao, S., Torin, A., and Chatziioannou, V. (2015). Numerical modeling of collisions
in musical instruments. Acta Acustica united with Acustica, 101(1):155–173.
[35]
Boutillon, X. (1988). Model for piano hammers: Experimental determination and
digital simulation. The Journal of the Acoustical Society of America, 83(2):746–754.
[36]
Bridges, J. and Van Walstijn, M. (2015). Investigation of tanpura string vibrations
using a two-dimensional time-domain model incorporating coupling and bridge friction.
Proceedings of the Vienna Talk on Music Acoustics, pages 126–131.
[37]
Bruyns, C. (2006). Modal synthesis for arbitrarily shaped objects. Computer Music
Journal, 30(3):22–37.
[38]
Bunch, J. R. and Hopcroft, J. E. (1974). Triangular factorization and inversion by fast
matrix multiplication. Mathermatics of Computation, 28(125):231–236.
[39]
Burridge, R., Kappraff, J., and Morshedi, C. (1982). The sitar string, a vibrating
string with a one-sided inelastic constraint. SIAM Journal on Applied Mathematics,
42(6):1231–1251.
[40]
Campbell, M. and Greated, C. A. (2001). The musician’s guide to acoustics. Oxford
Univ. Press, Oxford.
[41]
Carrier, G. F. (1945). On the non-linear vibration problem of the elastic string. Quarterly
of Applied Mathematics, 3:157–165.
172 References
[42]
Chabassier, J. (2012). Modélisation et simulation numérique d’un piano par modèles
physiques. PhD thesis, Ecole Polytechnique.
[43]
Chabassier, J., Chaigne, A., and Joly, P. (2013). Modeling and simulation of a grand
piano. The Journal of the Acoustical Society of America, 134(1):648–665.
[44]
Chabassier, J. and Imperiale, S. (2013a). Introduction and study of fourth order theta
schemes for linear wave equations. Journal of Computational and Applied Mathematics,
245:194–212.
[45]
Chabassier, J. and Imperiale, S. (2013b). Stability and dispersion analysis of improved
time discretization for simply supported prestressed Timoshenko systems. application to
the stiff piano string. Wave Motion, 50(3):456–480.
[46]
Chabassier, J. and Joly, P. (2010). Energy preserving schemes for nonlinear hamiltonian
systems of wave equations: Application to the vibrating piano string. Computer Methods
in Applied Mechanics and Engineering, 199(45):2779–2795.
[47] Chaigne, A. (1992). On the use of finite differences for musical synthesis. application
to plucked stringed instruments. Journal d’Acoustique, 2(5):181–211.
[48]
Chaigne, A. and Askenfelt, A. (1994a). Numerical simulations of piano strings. I. A
physical model for a struck string using finite difference methods. The Journal of the
Acoustical Society of America, 95(2):1112–1118.
[49]
Chaigne, A. and Askenfelt, A. (1994b). Numerical simulations of piano strings. II.
Comparisons with measurements and systematic exploration of some hammer-string
parameters. The Journal of the Acoustical Society of America, 95(3):1631–1640.
[50]
Chaigne, A. and Kergomard, J. (2016). Acoustics of musical instruments. Modern
Acoustics and Signal Processing. Springer New York, New York, NY.
[51]
Chatziioannou, V., Schmutzhard, S., and Bilbao, S. (2017). On iterative solutions for
numerical collision models. In Proceedings of the International Conference on Digital
Audio Effects (DAFx), pages 72–79, Edinburgh, UK.
[52]
Chatziioannou, V. and Van Walstijn, M. (2013). An energy conserving finite difference
scheme for simulation of collisions. In Proceedings of the Stockholm Musical Acoustics
Conference/Sound and Music Computing Conference (SMAC/SMC), pages 584–591,
Stockholm, Sweden.
[53]
Chatziioannou, V. and Van Walstijn, M. (2015). Energy conserving schemes for the
simulation of musical instrument contact dynamics. Journal of Sound and Vibration,
339:262–279.
[54]
Chatziioannou, V. and Van Walstijn, M. (2017). On the contact duration accuracy of
discrete-time collision models. In Proceedings of the International Symposium on Musical
Acoustics (ISMA), pages 95–98, Montreal, Canada.
[55]
Cheng, Y., Wu, Y., and Guo, B.-Z. (2021). Absolute boundary stabilization for an
axially moving Kirchhoff beam. Automatica, 129:109667.
References 173
[56]
Cie´
sli´
nski, J. L. and Ratkiewicz, B. (2006). On simulations of the classical harmonic
oscillator equation by difference equations. Advances in Difference Equations, 2006:1–17.
[57]
Cie´
sli´
nski, J. L. (2011). On the exact discretization of the classical harmonic oscillator
equation. Journal of Difference Equations and Applications, 17(11):1673–1694.
[58]
Conklin, H. A. (1999). Generation of partials due to nonlinear mixing in a stringed
instrument. The Journal of the Acoustical Society of America, 105(1):536–545.
[59]
Cottrell, S. (2023). Shaping Sound and Society: The Cultural Study of Musical Instru-
ments. Routledge, London, UK.
[60]
Cuesta, C. and Valette, C. (1988). Evolution temporelle de la vibration des cordes de
clavecin. Acta Acustica united with Acustica, 66(1):37–45.
[61]
Dalmont, J.-P. and Maugeais, S. (2019). Piano strings with reduced inharmonicity. Acta
Acustica united with Acustica, 105(4):714–717.
[62]
Davis, R., Henshell, R., and Warburton, G. (1972). A Timoshenko beam element.
Journal of Sound and Vibration, 22(4):475–487.
[63]
Debut, V. and Antunes, J. (2020). Physical synthesis of six-string guitar plucks using
the Udwadia-Kalaba modal formulation. The Journal of the Acoustical Society of America,
148(2):575–587.
[64]
Debut, V., Antunes, J., Marques, M., and Carvalho, M. (2016). Physics-based modeling
techniques of a twelve-string portuguese guitar: A non-linear time-domain computational
approach for the multiple-strings/bridge/soundboard coupled dynamics. Applied Acoustics,
108:3–18.
[65]
Dekoninck, B. and Nicaise, S. (2000). The eigenvalue problem for networks of beams.
Linear Algebra and its Applications, 314(1):165–189.
[66] Derveaux, G., Chaigne, A., Joly, P., and Becache, E. (2004). Time-domain simulation
of a guitar: Model and method. The Journal of the Acoustical Society of America,
114:3368–83.
[67]
Desvages, C. (2018). Physical modelling of the bowed string and applications to sound
synthesis. PhD thesis, The University of Edinburgh.
[68]
Desvages, C. and Bilbao, S. (2016). Two-polarisation physical model of bowed strings
with nonlinear contact and friction forces, and application to gesture-based sound synthesis.
Applied Sciences, 6(5):135.
[69]
Dickey, R. W. (1969). Infinite systems of nonlinear oscillation equations related to the
string. Proceedings of the American Mathematical Society, 23(3):459–468.
[70]
Dickey, R. W. (1980). Stability of periodic solutions of the nonlinear string. Quarterly
of Applied Mathematics, 38(2):253–259.
[71]
Ducceschi, M. and Bilbao, S. (2016). Linear stiff string vibrations in musical acoustics:
Assessment and comparison of models. The Journal of the Acoustical Society of America,
140(4):2445–2454.
174 References
[72]
Ducceschi, M. and Bilbao, S. (2019a). Conservative finite difference time domain
schemes for the prestressed Timoshenko, shear and Euler–Bernoulli beam equations. Wave
Motion, 89:142–165.
[73]
Ducceschi, M. and Bilbao, S. (2019b). Non-iterative, conservative schemes for geomet-
rically exact nonlinear string vibration. In Proceedings of the International Congress on
Acoustics (ICA), pages 5542–5549, Aachen, Germany.
[74]
Ducceschi, M. and Bilbao, S. (2019c). Non-iterative solvers for nonlinear problems:
The case of collisions. In Proceedings of the Internatinal Conference on Digital Audio
Effects (DAFx), pages 17–24, Birmingham, UK.
[75]
Ducceschi, M. and Bilbao, S. (2019d). A physical model of the prepared piano. In
Proceedings of the International Congress on Sound and Vibration, pages 5001–5009,
Montreal, Canada.
[76]
Ducceschi, M. and Bilbao, S. (2022a). Non-iterative simulation methods for virtual
analog modelling. IEEE/ACM Transactions on Audio, Speech, and Language Processing,
30:3189–3198.
[77]
Ducceschi, M. and Bilbao, S. (2022b). Real-time simulation of the struck piano
string with geometrically exact nonlinearity via novel quadratic hamiltonian method. In
Proceedings of the 2020 European Nonlinear Dynamics Conference, Lyon, France.
[78]
Ducceschi, M. and Bilbao, S. (2022c). Simulation of the geometrically exact nonlinear
string via energy quadratisation. Journal of Sound and Vibration, 534:117021.
[79]
Ducceschi, M., Bilbao, S., and Desvages, C. (2016). Modelling collisions of nonlinear
strings against rigid barriers: Conservative finite difference schemes with application to
sound synthesis. In Proceedings of the International Congress on Acoustics, Buenos
Aires, Argentina.
[80]
Ducceschi, M., Bilbao, S., and Webb, C. J. (2021a). Non-iterative schemes for the
simulation of nonlinear audio circuits. In Proceedings of the International Conference on
Digital Audio Effects (DAFx), pages 25–32, Vienna, Austria.
[81]
Ducceschi, M., Bilbao, S., Willemsen, S., and Serafin, S. (2021b). Linearly-implicit
schemes for collisions in musical acoustics based on energy quadratisation. The Journal
of the Acoustical Society of America, 149(5):3502–3516.
[82]
Ducceschi, M., Mousseau, A., Bilbao, S., and Russo, R. (2024). Fast simulation of the
Kirchhoff-Carrier string with an energy-storing boundary condition using a scalar auxiliary
variable approach. In Proceedings of the IFAC Workshop on Lagrangian and Hamiltonian
Methods for Non Linear Control (LHMNC), Besançon, France, pages 220–225.
[83]
Ducceschi, M. and Touzé, C. (2015). Modal approach for nonlinear vibrations of
damped impacted plates: Application to sound synthesis of gongs and cymbals. Journal
of Sound and Vibration, 334:313–331.
[84]
Duindam, V., Macchelli, A., Stramigioli, S., and Bruyninckx, H. (2009). Modeling and
control of complex physical systems. Springer Berlin Heidelberg, Berlin, Heidelberg.
References 175
[85]
Dupont, P., Hayward, V., Armstrong, B., and Altpeter, F. (2002). Single state elasto-
plastic friction models. IEEE Transactions on Automatic Control, 47(5):787–792.
[86]
Duyne, S. A. V. and Smith, J. O. (1994). A simplified approach to modeling dispersion
caused by stiffness in strings and plates. In Proceedings of the International Computer
Music Conference, pages 407–410, Aarhus, Denmark.
[87]
Eckel, G., Iovino, F., and Caussè, R. (1995). Sound synthesis by physical modelling
with Modalys. Proceedings of the International Symposium on Musical Acoustics, pages
478–482.
[88]
Erkut, C. (2002). Aspects in analysis and model-based sound synthesis of plucked string
instruments. PhD thesis, Department of Electrical and Communications Engineering,
Helsinki University of Technology.
[89]
Erkut, C., Karjalainen, M., Huang, P., and Välimäki, V. (2002). Acoustical analysis
and model-based sound synthesis of the kantele. The Journal of the Acoustical Society of
America, 112(4):1681–1691.
[90]
Evangelista, G. (2011). Physical model of the string-fret interaction. In Proceedings
of the International Conference on Digital Audio Effects (DAFx), pages 345–351, Paris,
France.
[91]
Evangelista, G. and Eckerholm, F. (2010). Player–instrument interaction models for
digital waveguide synthesis of guitar: Touch and collisions. IEEE transactions on audio,
speech, and language processing, 18(4):822–832.
[92]
Fabre, F., Le Carrou, J.-L., and Chomette, B. (2023). Physical modelling of a harp from
Central Africa. The Journal of the Acoustical Society of America, 154(4):2337–2348.
[93]
Falaize, A. and Hélie, T. (2016). Passive guaranteed simulation of analog audio circuits:
A port-hamiltonian approach. Applied Sciences, 6(10):273.
[94]
Fletcher, N. H. and Rossing, T. D. (1998). The physics of musical instruments. Springer
New York, New York, NY.
[95]
Fontana, F. and Bozzo, E. (2019). Newton–Raphson solution of nonlinear delay-free
loop filter networks. IEEE/ACM Transactions on Audio, Speech, and Language Processing,
27(10):1590–1600.
[96] Franklin, J. (2000). Matrix theory. Dover Publications, Mineola, NY, USA.
[97]
Friedlander, F. (1953). On the oscillations of a bowed string. Mathematical Proceedings
of the Cambridge Philosophical Society, 49(3):516–530.
[98]
Galluzzo, P., Woodhouse, J., and Mansour, H. (2017). Assessing friction laws for
simulating bowed-string motion. Acta Acustica united with Acustica, 103(6):1080–1099.
[99]
Garber, E. and Garber, E. (1999). Vibrating strings and eighteenth-century mechanics.
The Language of Physics: The Calculus and the Development of Theoretical Physics in
Europe, 1750–1914, pages 31–62.
176 References
[100]
Ghosh, R. (1948). Elastic impact of pianoforte hammer. The Journal of the Acoustical
Society of America, 20(3):324–328.
[101]
Giordano, N. (2015). Explaining the Railsback stretch in terms of the inharmonicity
of piano tones and sensory dissonance. The Journal of the Acoustical Society of America,
138(4):2359–2366.
[102]
Giordano, N. and Jiang, M. (2004). Physical modeling of the piano. EURASIP Journal
on Advances in Signal Processing, 2004(1):981942.
[103]
Gough, C. (1984). The nonlinear free vibration of a damped elastic string. The Journal
of the Acoustical Society of America, 75(6):1770–1776.
[104]
Graff, K. F. (1991). Wave motion in elastic solids. Dover publications, New York,
USA.
[105]
Guettler, K. (1994). Wave analysis of a string bowed to anomalous low frequencies.
Catgut Acoustical Society Journal, 2(6):8–14.
[106]
Guo, B.-Z. and Guo, W. (2007). Adaptive stabilization for a Kirchhoff-type nonlinear
beam under boundary output feedback control. Nonlinear Analysis: Theory, Methods &
Applications, 66(2):427–441.
[107]
Gustafsson, B., Kreiss, H., Oliger, J., and Kreiss, H.-O. (2013). Time dependent
problems and difference methods. Wiley, Hoboken, N.J, 2nd edition.
[108]
Gwynne A. Evans, Jonathan M. Blackledge, P. D. Y. (1999). Numerical methods for
partial differential equations. Springer, London, UK.
[109]
Han, S. M., Benaroya, H., and Wei, T. (1999). Dynamics of transversely vibrating
beams using four engineering theories. Journal of Sound and Vibration, 225(5):935–988.
[110]
Hertz, H. (1882). Ueber die berührung fester elastischer körper. Journal für die reine
und angewandte Mathematik, 92:156–171.
[111]
Hiller, L. and Ruiz, P. (1971a). synthesizing musical sounds by solving the wave
equation for vibrating objects: Part 1. Journal of the Audio Engineering Society, 19:462–
470.
[112]
Hiller, L. and Ruiz, P. (1971b). Synthesizing musical sounds by solving the wave
equation for vibrating objects: Part 2. Journal of the Audio Engineering Society, 19:542–
551.
[113]
Horvay, G. and Veluswami, M. (1980). Hertzian impact of two elastic spheres in the
presence of surface damping. Acta Mechanica, 35:285–290.
[114]
Hsueh, W.-J. (1999). Free and forced vibrations of stepped rods and coupled systems.
Journal of Sound and Vibration, 226(5):891–904.
[115]
Hunt, K. H. and Crossley, E. (1975). Coefficient of restitution interpreted as damping
in vibroimpact. Journal of Applied Mechanics, 42:440–445.
References 177
[116]
Hélie, T. and Roze, D. (2008). Sound synthesis of a nonlinear string using Volterra
series. Journal of Sound and Vibration, 314(1-2):275–306.
[117]
Issanchou, C., Acary, V., Pérignon, F., Touzé, C., and Le Carrou, J.-L. (2018a).
Nonsmooth contact dynamics for the numerical simulation of collisions in musical string
instruments. The Journal of the Acoustical Society of America, 143(5):3195–3205.
[118]
Issanchou, C., Le Carrou, J.-L., Touzé, C., Fabre, B., and Doaré, O. (2018b).
String/frets contacts in the electric bass sound: Simulations and experiments. Applied
Acoustics, 129:217–228.
[119]
Jeleni´
c, G. and Crisfield, M. (1999). Geometrically exact 3d beam theory: implemen-
tation of a strain-invariant finite element for statics and dynamics. Computer Methods in
Applied Mechanics and Engineering, 171(1):141–171.
[120]
Jiang, M., Zhang, Z., and Zhao, J. (2022). Improving the accuracy and consistency
of the scalar auxiliary variable (SAV) method with relaxation. Journal of Computational
Physics, 456:110954.
[121]
Jiolat, J.-T., d’Alessandro, C., Le Carrou, J.-L., and Antunes, J. (2021). Toward a
physical model of the clavichord. The Journal of the Acoustical Society of America,
150(4):2350–2363.
[122]
Johnson, J. and Bajaj, A. (1989). Amplitude modulated and chaotic dynamics in
resonant motion of strings. Journal of Sound and Vibration, 128(1):87–107.
[123]
Júnior, D. S. A. (2014). Conservative semidiscrete difference schemes for Timoshenko
systems. Journal of Applied Mathematics, 2014(1):686421.
[124]
Karplus, K. and Strong, A. (1983). Digital synthesis of plucked-string and drum
timbres. Computer Music Journal, 7(2):43.
[125]
Kartofelev, D., Stulov, A., Lehtonen, H.-M., and Välimäki, V. (2013). Modeling a
vibrating string terminated against a bridge with arbitrary geometry. In Proceedings of the
Stockholm Music Acoustics Conference, pages 626–632.
[126]
Kerschen, G., Peeters, M., Golinval, J., and Vakakis, A. (2009). Nonlinear normal
modes, part I: A useful framework for the structural dynamicist. Mechanical Systems and
Signal Processing, 23(1):170–194.
[127] Kirchhoff, G. (1883). Vorlesungen über mechanic. B.G. Teubner, Leipzig, Germany.
[128]
Krishnaswamy, A. and Smith, J. O. (2003). Methods for simulating string collisions
with rigid spatial obstacles. In 2003 IEEE Workshop on Applications of Signal Processing
to Audio and Acoustics (IEEE Cat. No. 03TH8684), pages 233–236.
[129]
Kurmyshev, E. (2003). Transverse and longitudinal mode coupling in a free vibrating
soft string. Physics Letters A, 310(2-3):148–160.
[130] Lang, S. (1987). Linear algebra. Springer New York, New York, USA, third edition.
178 References
[131]
Laurson, M., Erkut, C., Välimäki, V., and Kuuskankare, M. (2001). Methods for
modeling realistic playing in acoustic guitar synthesis. Computer Music Journal, 25(3):38–
49.
[132]
le Li, F. and zhong Sun, Z. (2007). A finite difference scheme for solving the
Timoshenko beam equations with boundary feedback. Journal of Computational and
Applied Mathematics, 200(2):606–627.
[133]
le Rond D’Alembert, J. (1747). Récherches sur la courbe que forme une corde tenduë
mise en vibration. Memoires de l’Academie royale des sciences et belles lettres. Classe de
mathematique, 3:214–219.
[134]
Leamy, M. J. and Gottlieb, O. (2000). Internal resonances in whirling strings involving
longitudinal dynamics and material non-linearities. Journal of Sound and Vibration,
236(4):683–703.
[135]
Lee, J. W., Jun Choi, M., and Lee, K. (2024). String sound synthesizer on gpu-
accelerated finite difference scheme. In IEEE International Conference on Acoustics,
Speech and Signal Processing (ICASSP), pages 1491–1495, Seoul, Korea.
[136]
Legge, K. A. and Fletcher, N. H. (1984). Nonlinear generation of missing modes on a
vibrating string. The Journal of the Acoustical Society of America, 76(1):5–12.
[137]
LeVeque, R. (2007). Finite difference methods for ordinary and partial differential
equations. Steady state and time dependent problems. SIAM, Philadelphia, USA.
[138]
Lewy, H., Friedrichs, K., and Courant, R. (1928). Über die partiellen differenzengle-
ichungen der mathematischen physik. Mathematische Annalen, 100:32–74.
[139]
Li, Y. X. and Sun, L. Z. (2016). Transverse vibration of an undamped elastically con-
nected double-beam system with arbitrary boundary conditions. Journal of Engineering
Mechanics, 142(2):04015070.
[140]
Lopes, N., Hélie, T., and Falaize, A. (2015). Explicit second-order accurate method
for the passive guaranteed simulation of port-hamiltonian systems. In Proceedings of the
IFAC Workshop on Lagrangian and Hamiltonian Methods for Nonlinear Control (IFAC),
pages 223–228, Lyon, France.
[141]
Maestre, E., Spa, C., and Smith, J. O. (2014). A bowed string physical model including
finite-width thermal friction and hair dynamics. In Proceedings of the International
Computer Music Conference/Sound and Music Computing Conference (ICMC/SMC),
pages 1305–1311, Athens, Greece.
[142]
Mandal, A. and Wahi, P. (2015). Natural frequencies, modeshapes and modal interac-
tions for strings vibrating against an obstacle: Relevance to sitar and veena. Journal of
Sound and Vibration, 338:42–59.
[143]
Marazzato, F., Ern, A., Mariotti, C., and Monasse, L. (2019). An explicit pseudo-
energy conserving time-integration scheme for hamiltonian dynamics. Computer Methods
in Applied Mechanics and Engineering, 347:906–927.
References 179
[144]
Marques, M., Antunes, J., and Debut, V. (2013). Guitar strings loaded with localized
masses. In Proceedings of the International Conference on Vibration Problems, Lisbon,
Portugal.
[145]
Marques, M., Inàcio, O., Debut, V., and Antunes, J. (2012). On the dynamical
behaviour of worn guitar strings. In Proccedings of the International Congress of Sound
and Vibration, Vilnus, Lithuania.
[146]
McIntyre, M. and Woodhouse, J. (1979). On the fundamentals of bowed string
dynamics. Acta Acust. united Acust., 43:93–108.
[147]
McIntyre, M. E., Schumacher, R. T., and Woodhouse, J. (1983). On the oscillations of
musical instruments. The Journal of the Acoustical Society of America, 74(5):1325–1345.
[148]
Meirovitch, L. and Parker, R. (2001). Fundamentals of vibrations. McGraw-Hill, New
York, USA.
[149]
Michon, R., Martin, S. R., and Smith, J. O. (2017). MESH2FAUST: A modal physical
model generator for the Faust programming language-Application to bell modeling. In
Proceedings of the 2017 International Computer Music Conference, ICMC., Shanghai,
China.
[150]
Miles, J. W. (1965). Stability of forced oscillations of a vibrating string. The Journal
of the Acoustical Society of America, 38(5):855–861.
[151]
Morrison, J. D. and Adrien, J.-M. (1993). Mosaic: A framework for modal synthesis.
Computer Music Journal, 17(1):45–56.
[152]
Morse, P. and Ingard, U. (1968). Theoretical acoustics. Princeton University Press,
Princeton, NJ, USA.
[153]
Murthy, G. S. S. and Ramakrishna, B. S. (1965). Nonlinear character of resonance in
stretched strings. The Journal of the Acoustical Society of America, 38(3):461–471.
[154]
Narasimha, R. (1968). Non-linear vibration of an elastic string. Journal of Sound and
Vibration, 8(1).
[155]
Oplinger, D. W. (1960). Frequency response of a nonlinear stretched string. The
Journal of the Acoustical Society of America, 32(12):1529–1538.
[156]
O’Reilly, O. and Holmes, P. (1992). Non-linear, non-planar and non-periodic vibra-
tions of a string. Journal of Sound and Vibration, 153(3):413–435.
[157]
Orr, S. and Van Walstijn, M. (2009). Modal representation of the resonant body
within a finite difference framework for simulation of string instruments. pages 213–220.
Proceedings of the International Conference on Digital Audio Effects (DAFx).
[158]
Paiva, G. O., Ablitzer, F., Gautier, F., and dos Santos, J. M. C. (2019). Collisions in
double string plucked instruments: Physical modelling and sound synthesis of the viola
caipira. Journal of Sound and Vibration, 443:178–197.
180 References
[159]
Pakarinen, J., Karjalainen, M., and Välimäki, V. (2003). Modeling and real-time
synthesis of the kantele using distributed tension modulation. In Proceedings of the
Stockholm Music Acoustics Conference (SMAC), pages 409–412, Stockholm, Sweden.
[160]
Pakarinen, J., Välimäki, V., and Karjalainen, M. (2005). Physics-based methods for
modeling nonlinear vibrating strings. Acta Acustica, 91(2):312–325.
[161]
Papetti, S., Avanzini, F., and Rocchesso, D. (2011). Numerical methods for a nonlinear
impact model: A comparative study with closed-form corrections. IEEE Transactions on
Audio, Speech, and Language Processing, 19(7):2146–2158.
[162]
Pierce, J. R. and Van Duyne, S. A. (1997). A passive nonlinear digital filter design
which facilitates physics-based sound synthesis of highly nonlinear musical instruments.
The Journal of the Acoustical Society of America, 101(2):1120–1126.
[163]
Pitteroff, R. and Woodhouse, J. (1998a). Mechanics of the contact area between a
violin bow and a string. part II: Simulating the bowed string. Acta Acustica united with
Acustica, 84(4):744–757.
[164]
Pitteroff, R. and Woodhouse, J. (1998b). Mechanics of the contact area between
a violin bow and a string. part III: Parameter dependence. Acta Acustica united with
Acustica, 84(5):929–946.
[165]
Raman, C. V. (1918). On the mechanical theory of the vibrations of bowed strings and
of musical instruments of the violin family, with experimental verification of the results.
Indian Association for the Cultivation of Science Bulletin, 15:243–276.
[166]
Raman, C. V. (1921). On some indian stringed instruments. Proceedings of the Indian
Association for the Cultivation of Science, 7:468–472.
[167]
Raman, C. V. and Banerji, B. (1920). On Kaufmann’s theory of the impact of the
pianoforte hammer. Proceedings of the Royal Society of London. Series A, Containing
Papers of a Mathematical and Physical Character, 97(682):99–110.
[168]
Rank, E. and Kubin, G. (1997). A waveguide model for slapbass synthesis. In 1997
IEEE International Conference on Acoustics, Speech, and Signal Processing, volume 1,
pages 443–446.
[169]
Renton, J. (2001). A check on the accuracy of Timoshenko’s beam theory. Journal of
Sound and Vibration, 245(3):559–561.
[170]
Richtmyer, R. D. and Morton, K. W. (1968). Difference methods for initial-value
problems. John Wiley & Sons, Ltd, Chichester, UK.
[171]
Roads, C. (2023). The computer music tutorial. The MIT Press, Cambridge, Mas-
sachusetts London, second edition edition.
[172]
Rokni, E., Neldner, L. M., Adkison, C., and Moore, T. R. (2017). The production
of phantom partials due to nonlinearities in the structural components of the piano. The
Journal of the Acoustical Society of America, 142(4):EL344–EL349.
References 181
[173]
Rossing, T. D. (2010). The science of string instruments. Springer New York, New
York, NY.
[174]
Rowland, D. R. (2011). The potential energy density in transverse string waves
depends critically on longitudinal motion. European Journal of Physics, 32(6):1475.
[175]
Roze, D. (2022). Interactions between nonlinear resonators represented in Volterra
series. Journal of Sound and Vibration, 520:116590.
[176]
Roze, D. and Hélie, T. (2014). Introducing a Green–Volterra series formalism to solve
weakly nonlinear boundary problems: Application to Kirchhoff’s string. Journal of Sound
and Vibration, 333(7):2073–2086.
[177]
Roze, D., Raibaud, M., and Geoffroy, T. (2024). Passive-guaranteed modeling and
simulation of a finite element nonlinear string model. In Proceedings of the IFAC Workshop
on Lagrangian and Hamiltonian Methods for Non Linear Control (LHMNC), pages 226–
231, Besançon, France.
[178]
Rubin, M. and Gottlieb, O. (1996). Numerical solutions of forced vibration and
whirling of a non-linear string using the theory of a cosserat point. Journal of Sound and
Vibration, 197(1):85–101.
[179]
Ruiz, P. (1969). A technique for simulating the vibration of strings with a digital
computer. PhD thesis, University of Illinois Urbana-Champaign.
[180]
Russo, R., Ducceschi, M., and Bilbao, S. (2022). Efficient simulation of the bowed
string in modal form. In Proceedings of the International Conference on Digital Audio
Effects (DAFx), pages 122–129, Vienna, Austria.
[181]
Russo, R., Ducceschi, M., and Bilbao, S. (2023). Efficient simulation of the yaybahar
using a modal approach. In Proceedings of the 26th International Conference on Digital
Audio Effects (DAFx), pages 69–76, Copenhagen, Denmark.
[182]
Russo, R., Serafin, S., Michon, R., Orlarey, Y., and Letz, S. (2021). Introducing finite
difference schemes synthesis in FAUST: A cellular automata approach. In Proceedings of
the 18th Sound and Music Computing Conference (SMC), Online, pages 11–18.
[183]
Sarigül (Aydin), A. and Aksu, G. (1986). A finite difference method for the free
vibration analysis of stepped Timoshenko beams and shafts. Mechanism and Machine
Theory, 21(1):1–12.
[184]
Schelleng, J. C. (1974). The physics of the bowed string. Scientific American,
230(1):87–95.
[185]
Schlecht, S., Parker, J., Schäfer, M., and Rabenstein, R. (2022). Physical model-
ing using recurrent neural networks with fast convolutional layers. In Proceedings of
the International Conference on Digital Audio Effects (DAFx), pages 138–145, Vienna,
Austria.
[186]
Serafin, S. (2004). The sound of friction: Real-time models, playability and musical
applications. PhD thesis, Stanford University.
182 References
[187]
Serafin, S., Avanzini, F., Rocchesso, D., et al. (2003). Bowed string simulation
using an elasto-plastic friction model. In Proceedings of the Stockholm Music Acoustics
Conference (SMAC), pages 95–98, Stockholm, Sweden.
[188]
Shen, J., Xu, J., and Yang, J. (2018). The scalar auxiliary variable (SAV) approach for
gradient flows. Journal of Computational Physics, 353:407–416.
[189]
Sherman, J. and Morrison, W. J. (1950). Adjustment of an inverse matrix correspond-
ing to a change in one element of a given matrix. Ann. Math. Stat., 21:124–127.
[190]
Singh, H. and Wahi, P. (2017). Non-planar vibrations of a string in the presence of a
boundary obstacle. Journal of Sound and Vibration, 389:326–349.
[191]
Smith, J. (1991). Viewpoints on the history of digital synthesis. In Proceedings of the
International Computer Music Conference, pages 1–10, Montreal, Canada.
[192]
Smith, J. and Woodhouse, J. (2000). The tribology of rosin. J. Mech. Phys. Solids,
48:1633–1681.
[193]
Smith, J. O. (1985). A new approach to digital reverberation using closed waveguide
networks. In International Computer Music Conference, pages 47–53.
[194]
Smith, J. O. (1992). Physical modeling using digital waveguides. Computer Music
Journal, 16(4):74–91.
[195]
Smith, J. O. (2010). Physical audio signal processing. Stanford, California.
http://ccrma.stanford.edu/ jos/pasp/. Online book, accessed: October 2024.
[196]
Soares, F., Antunes, J., and Debut, V. (2021). Multi-modal tuning of vibrating bars
with simplified undercuts using an evolutionary optimization algorithm. Applied Acoustics,
173:107704.
[197]
Stephen, N. G. (2002). On “a check on the accuracy of Timoshenko’s beam theory”.
Journal of Sound and Vibration, 257(4):809–812.
[198]
Strikwerda, J. C. (2004). Finite difference schemes and partial differential equations.
Society for Industrial and Applied Mathematics, Philadelphia, 2nd edition.
[199]
Südholt, D., Russo, R., and Serafin, S. (2021). A faust implementation of coupled
finite difference schemes. In Proceedings of the 2nd Nordic Sound and Music Conference,
Copenhagen, Denmark, pages 17–22.
[200]
Ta-Tsien, L. (1994). Global classical solutions for quasilinear hyperbolic systems.
Wiley, Michigan, USA.
[201]
Thomée, V. (2001). From finite differences to finite elements: A short history of
numerical analysis of partial differential equations. Journal of Computational and Applied
Mathematics, 128(1):1–54.
[202]
Thwaites, S. and Fletcher, N. H. (1981). Some notes on the clavichord. The Journal
of the Acoustical Society of America, 69(5):1476–1483.
References 183
[203]
Tolonen, T., Valimaki, V., and Karjalainen, M. (2000). Modeling of tension modulation
nonlinearity in plucked strings. IEEE Transactions on Speech and Audio Processing,
8(3):300–310.
[204]
Trautmann, L. and Rabenstein, R. (2000). Sound synthesis with tension modulated
nonlinearities based on functional transformations. Acoustics and Music: Theory and
Applications (AMTA), NE Mastorakis (Ed.), pages 444–449.
[205]
Trautmann, L. and Rabenstein, R. (2003). Digital sound synthesis by physical modeling
using the functional transformation method . Kluwer Academic / Plenum Publishers, New
York, USA.
[206] Valette, C. and Cuesta, C. (1993). Mécanique de la corde vibrante. Hermès, Paris.
[207]
Valette, C., Cuesta, C., Castellengo, M., and Besnainou, C. (1991). The tampura
bridge as a precursive wave generator. Acta Acustica united with Acustica, 74(3):201–208.
[208]
Valimaki, V., Tolonen, T., and Karjalainen, M. (1999). Plucked-string synthesis algo-
rithms with tension modulation nonlinearity. In 1999 IEEE International Conference on
Acoustics, Speech, and Signal Processing. Proceedings. ICASSP99 (Cat. No.99CH36258),
volume 2, pages 977–980 vol.2.
[209]
van den Doel, K. and Pai, D. K. (2003). Modal synthesis for vibrating objects, pages
99–120. K. Greenebaum and R. Barzel (Eds.), Natick, Massachusetts.
[210]
van der Schaft, A. and Jeltsema, D. (2014). Port-hamiltonian systems theory: An
introductory overview. Foundations and Trends® in Systems and Control, 1(2-3):173–378.
[211]
Van Walstijn, M. and Bridges, J. (2016). Simulation of distributed contact in string
instruments: a modal expansion approach. In 2016 24th European signal processing
conference (EUSIPCO), pages 1023–1027.
[212]
Van Walstijn, M., Bridges, J., and Mehes, S. (2016). A real-time synthesis oriented
tanpura model. In Proceedings of the International Conference on Digital Audio Effects
(DAFx), pages 175–182, Brno, Czech Republic.
[213]
Van Walstijn, M. and Chatziioannou, V. (2014). Numerical simulation of tanpura
string vibrations. In Proceedings of the International Symposium on Musical Acoustics
(ISMA), pages 609–614, Le Mans, France.
[214]
Van Walstijn, M., Chatziioannou, V., and Athanasopoulos, N. (2024a). An explicit
scheme for energy-stable simulation of mass-barrier collisions with contact damping
and dry friction. In Proceedings of the IFAC Workshop on Lagrangian and Hamiltonian
Methods for Nonlinear Control (LHMNC), pages 214–219, Besançon, France.
[215]
Van Walstijn, M., Chatziioannou, V., and Bhanuprakash, A. (2023). Tunable colli-
sions: Hammer-string simulation with time-variant parameters. In Proceedings of the
International Conference of Digital Audio Effects (DAFx), pages 61–68, Copenhagen,
Denmark.
184 References
[216]
Van Walstijn, M., Chatziioannou, V., and Bhanuprakash, A. (2024b). Implicit and ex-
plicit schemes for energy-stable simulation of string vibrations with collisions: refinement,
analysis, and comparison. Journal of Sound and Vibration, 569:117968.
[217]
Vijayan, K. and Woodhouse, J. (2013). Shock transmission in a coupled beam system.
Journal of Sound and Vibration, 332(16):3681–3695.
[218]
von Helmholtz, H. L. (1862). Die lehre von den tonempfindungen: als physiologische
grundlage für die theorie der musik. Vieweg, Braunschweig.
[219]
Vyasarayani, C. P., Birkett, S., and McPhee, J. (2009). Modeling the dynamics of a
vibrating string with a finite distributed unilateral constraint: Application to the sitar. The
Journal of the Acoustical Society of America, 125(6):3673–3682.
[220]
Välimäki, V., Pakarinen, J., Erkut, C., and Karjalainen, M. (2005). Discrete-time
modelling of musical instruments. Reports on Progress in Physics, 69(1):1.
[221]
Välimäki, V., Penttinen, H., Knif, J., Laurson, M., and Erkut, C. (2004). Sound
synthesis of the harpsichord using a computationally efficient physical model. EURASIP
Journal on Advances in Signal Processing, 2004(7):860718.
[222]
Wheeler, G. F. and Crummett, W. P. (1987). The vibrating string controversy. American
Journal of Physics, 55(1):33–37.
[223]
Willemsen, S. (2021). The emulated ensemble: Real-time simulation of musical
instruments using finite-difference time-domain methods. PhD thesis, Aalborg University.
[224]
Willemsen, S., Andersson, N., Serafin, S., and Bilbao, S. (2019a). Real-time control
of large-scale modular physical models using the Sensel Morph. In Proceedings of the
Sound and Music Computing Conference (SMC), pages 151–158.
[225]
Willemsen, S., Bilbao, S., and Serafin, S. (2019b). Real-time implementation of an
elasto-plastic friction model applied to stiff strings using finite difference schemes. In
Proceedings of the International Conference on Digital Audio Fffects (DAFx), pages
40–46.
[226]
Woinowsky-Krieger, S. (1950). The effect of an axial force on the vibration of hinged
bars. Journal of Applied Mechanics, 17(1):35–36.
[227]
Woodhouse, J. (2003). Bowed string simulation using a thermal friction model. Acta
Acustica united with Acustica, 89(2):355–368.
[228]
Wriggers, P. (2006). Computational contact mechanics: with 12 tables. Springer,
Berlin Heidelberg, 2nd edition.
[229]
Yang, X. (2016). Linear, first and second-order, unconditionally energy stable numeri-
cal schemes for the phase field model of homopolymer blends. Journal of Computational
Physics, 327:294–316.
[230]
Yang, X. and Ju, L. (2017). Linear and unconditionally energy stable schemes for the
binary fluid–surfactant phase field model. Computer Methods in Applied Mechanics and
Engineering, 318:1005–1029.
References 185
[231]
Zama, F., Ducceschi, M., and Bilbao, S. (2024). Role of shift constant in energy shifted
SAV for hamiltonian systems. Journal of Physics: Conference Series, 2701(1):012089.
[232]
Zhang, Q., Ye, L., and Pan, Z. (2005). Physically-based sound synthesis on gpus. In
Proceedings of the International Conference on Entertainment Computing (ICEC), pages
328–333, Sanda, Japan.
[233]
Zhao, J., Wang, Q., and Yang, X. (2017). Numerical approximations for a phase field
dendritic crystal growth model based on the invariant energy quadratization approach.
International Journal for Numerical Methods in Engineering, 110(3):279–300.
References 187
... Additionally, a constrained version of the SAV method, first introduced in [24], is employed to enforce the non-negativity of ψ, preventing spurious numerical artefacts from appearing in the solution and allowing the auxiliary variable to decay toward zero. A slightly altered formulation is employed, as presented by Russo et al. [4,17]. ...
Preprint
Full-text available
A two-register haptic interface is presented for the articulated control of physically modelled harpsichord sounds. While physical modelling synthesis affords realism and nuance, standard MIDI-based controllers lack the resolution to capture the fine temporal detail required for historically informed keyboard performance. A custom three-key harpsichord mechanism was commissioned from an expert builder, and augmented with optical and force-sensitive sensors to track independent jack displacements per register. These data inform a real-time nonlinear string synthesis engine, enabling control over subtle inter-register plucking delays characteristic of historical instruments. The interface supports velocity-sensitive articulation across registers and integrates with a real-time software model employing modal energy-preserving techniques. The system reintroduces key expressive features absent from sample-based approaches, offering a viable solution for high-fidelity digital reconstruction of early keyboard gestures.
Conference Paper
Full-text available
The synthesis of guitar tones was one of the first uses of physical modeling synthesis, and many approaches (notably digital waveg-uides) have been employed. The dynamics of the string under playing conditions is complex, and includes nonlinearities, both inherent to the string itself, and due to various collisions with the fretboard, frets and a stopping finger. All lead to important perceptual effects, including pitch glides, rattling against frets, and the ability to play on the harmonics. Numerical simulation of these simultaneous strong nonlinearities is challenging, but recent advances in algorithm design due to invariant energy quadratisation and scalar auxiliary variable methods allow for very efficient and provably numerically stable simulation. A new design is presented here that does not employ costly iterative methods such as the Newton-Raphson method, and for which required linear system solutions are small. As such, this method is suitable for real-time implementation. Simulation and timing results are presented.
Article
Full-text available
In recent years, considerable work has been devoted to the design of energy-stable numerical methods, a class of geometrical integration technique in which the discrete energy or pseudo-energy remains conserved. This property finds practical applications in systems for which the energy is bounded from below since the growth of the solutions is then itself bounded, yielding a form of stability. Such a property may be further exploited to transform the energy overall into a quadratic form, representing the core of recent numerical techniques such as the invariant energy quadratization (IEQ) and the scalar auxiliary variable (SAV) approaches. These methods have been applied to a large class of problems due to their remarkable efficiency. Yet, several aspects of such techniques have seen little investigation. In this work, the role of the “shift” constant in the expression of the potential energy in Hamiltonian systems is investigated. This is a positive gauge constant that may be used to augment the expression of the energy. Since Hamilton’s equations are given in terms of gradients of the Hamiltonian, such a constant has no influence on the resulting dynamics in the continuous system. However, empirical evidence has suggested that the convergence properties of the associated SAV approaches are affected by the magnitude of the shift factor. In this work, the behaviour of the relative global error of SAV schemes in the cases of the harmonic and Duffing oscillators is numerically investigated. The results reveal an optimal shift factor that increases the convergence rate. Using the optimal shift factor, the proposed method displays variable order accuracy ranging from second to twelfth order.
Conference Paper
Full-text available
The simulation of a bowed string is challenging due to the strongly non-linear relationship between the bow and the string. This relationship can be described through a model of friction. Several friction models in the literature have been proposed, from simple velocity dependent to more accurate ones. Similarly, a highly accurate technique to simulate a stiff string is the use of finite-difference time-domain (FDTD) methods. As these models are generally computationally heavy, implementation in real-time is challenging. This paper presents a real-time implementation of the combination of a complex friction model, namely the elasto-plastic friction model, and a stiff string simulated using FDTD methods. We show that it is possible to keep the CPU usage of a single bowed string below 6 percent. For real-time control of the bowed string, the Sensel Morph is used.
Conference Paper
Full-text available
In physical modelling synthesis, articulation and tuning are effected via time-variation in one or more parameters. Adopting hammered strings as a test case, this paper develops extended forms of such control, proposing a numerical formulation that affords on-line adjustment of each of its scaled-form parameters, including those featuring in the one-sided power law for modelling hammer-string collisions. Starting from a modally-expanded representation of the string, an explicit scheme is constructed based on quadratising the contact energy. Compared to the case of time-invariant contact parameters, updating the scheme's state variables relies on the evaluation of two additional analytic partial derivatives of the auxiliary variable. A numerical energy balance is derived and the numerical contact force is shown to be strictly non-adhesive. Example results with time-variant tension and time-variant contact stiffness are detailed, and real-time viability is demonstrated.
Conference Paper
Full-text available
This work presents a physical model of the yaybahar, a recently invented acoustic instrument. Here, output from a bowed string is passed through a long spring, before being amplified and propagated in air via a membrane. The highly dispersive character of the spring is responsible for the typical synthetic tonal quality of this instrument. Building on previous literature, this work presents a modal discretisation of the full system, with fine control over frequency-dependent decay times, modal amplitudes and frequencies , all essential for an accurate simulation of the dispersive characteristics of reverberation. The string-bow-bridge system is also solved in the modal domain, using recently developed non-iterative numerical methods allowing for efficient simulation.
Article
Central Africa harps are string instruments, often anthropomorphic, serving an essential cultural role. Compared to pedal harps, their body is small in size with a soundboard mainly made of animal skin and a neck made of a wood beam. In this paper, a physical model is developed as a tool for assessing the specificities of these musical instruments, from a vibro-acoustic perspective. The modeling strategy is based on the modal Udwadia-Kalaba formalism which is a multibody substructuring technique. Input modal parameters of the body and the strings are experimentally identified and the main steps of the estimation procedures are detailed. The reliability of the physical model is investigated via the comparison between simulated and experimental data for several plucking configurations. Different hypotheses are assessed such as the string/neck coupling which proves to strongly influence the dynamic response of the body when there is a coincidence between string and neck modal frequencies. The inclusion of geometrical nonlinearities proves to be of major importance, even for a weak plucking, as it allows qualitative representation of double frequency terms in the simulations. Overall, physical simulations of the soundboard motion are in good agreement with measurements indicating characteristic features of the instrument are captured.