## 2 Methods
### Sound Synthesis  
A finite difference (FD) method has been applied to simulate the plucked string. It is simple enough to operate in real time, as well as to simultaneously produce output signal and react to control. Therefore it is possible to play such a simulated instrument, and control it while it sounds, just like its acoustic counterpart. The FD method is flexible enough to allow various modifications of the basic model. The model is based on a partial differential equation proposed in a work of [PERSON] et al. [16]. It is a wave equation with added stiffness, and frequency-dependent losses:  
\[\frac{\partial^{2}u}{\partial t^{2}}=\gamma^{2}\frac{\partial^{2}u}{\partial x ^{2}}-\kappa^{2}\frac{\partial^{4}u}{\partial x^{4}}-2\sigma_{0}\frac{ \partial u}{\partial t}+2\sigma_{1}\frac{\partial^{3}u}{\partial t\partial x ^{2}} \tag{1}\]  
Figure 3: Simplified schematic of the robot’s movement. Subfigure (**a**) presents the initial state of the mechanism, where: 1 is the translation joint of axis \(z\); 2 is the translation joint of axis \(x\); and 3 is the end effector. Subfigures (**b**–**e**) present the successive stages of the robot’s translation-joints’ movement. The string is plucked halfway the movement presented in (**b**). The equation is given in variables scaled to the length of a string \(L\):  
\[x=\frac{\tilde{x}}{L}\quad\gamma=\frac{c}{L} \tag{2}\]  
The stiffness parameter is defined as [1,17]:  
\[\kappa=\sqrt{\frac{EI}{\rho AL^{4}}} \tag{3}\]  
where \(\tilde{x}\)--dimensional coordinate, \(c\)--transverse wave velocity, \(L\)--string length \(E\)--[PERSON]'s modulus, \(l\)--moment of inertia, \(\rho\)--material density, \(A\)--area of cross-section. Losses increase with frequency and are determined by two decay times, \(T_{60}\), specified for the frequencies \(f_{1}<f_{2}\)[1]:  
\[ \begin{split}\sigma_{0}&=\frac{6\ln(10)}{\xi(f_{2} )-\xi(f_{1})}\bigg{(}\frac{\xi(f_{2})}{T_{60}(f_{1})}-\frac{\xi(f_{1})}{T_{60}( f_{2})}\bigg{)}\\ \sigma_{1}&=\frac{6\ln(10)}{\xi(f_{2})-\xi(f_{1})} \bigg{(}-\frac{1}{T_{60}(f_{1})}+\frac{1}{T_{60}(f_{2})}\bigg{)}\end{split}  \tag{4}\]  
with:  
\[\xi(f)=\frac{-\gamma^{2}+\sqrt{\gamma^{4}+16\kappa^{2}\pi^{2}f^{2}}}{2\kappa^{ 2}} \tag{5}\]  
The equation is solved using an explicit differential scheme, proposed by [PERSON] [1]:  
\[\delta_{tt}u_{l}[n]=\gamma^{2}\delta_{xx}u_{l}[n]-\kappa^{2}\delta_{xxxx}u_{ l}[n]-2\sigma_{0}\delta_{t}.u_{l}[n]+2\sigma_{1}\delta_{t-}\delta_{xx}u_{l}[n] \tag{6}\]  
with a Courant-Friedrichs-Lewy (CFL) stability condition, where \(n\) is the time index, \(l\) the spatial grid index, and \(\delta\) symbols represent derivative operators. The temporal operators are defined as:  
\[ \begin{split}\delta_{t-}&=\frac{1}{T}(1-e_{t-}) \cong\frac{\partial}{\partial t}\\ \delta_{t}&=\frac{1}{2T}(e_{t+}-e_{t-})\cong\frac{ \partial}{\partial t}\\ \delta_{tt}&=\frac{1}{T^{2}}(e_{t+}-2+e_{t-})\cong \frac{\partial^{2}}{\partial t^{2}}\end{split}  \tag{7}\]  
Figure 4: Re-excitation discs: (**a**) second excitation after 12 ms, maximum; (**b**) second excitation after 70 ms, maximum. where \(T\) is the sampling period. The spatial operators are defined as:  
\[\delta_{xx}=\frac{1}{X^{2}}(e_{x+}-2+e_{x-})\cong\frac{\partial^{2}}{\partial x ^{2}} \tag{8}\] \[\delta_{xxxx}=\frac{1}{X^{4}}(e_{x+}e_{x+}-4e_{x+}+6-4e_{x-}+e_{x- }e_{x-})\cong\frac{\partial^{4}}{\partial x^{4}}\]  
where \(X\) is the spatial sampling interval. Definitions (7) and (8) use forward and backward, and the temporal and spatial shift operators:  
\[e_{t+}u[n]=u[n+1] \tag{9}\] \[e_{t-}u[n]=u[n-1]\] \[e_{x+}u_{l}[n]=u_{l+1}[n]\] \[e_{x-}u_{l}[n]=u_{l-1}[n]\]  
Dirichlet boundary conditions are applied on both ends of string. Initial conditions are simulated with an idealised pluck, where initial velocity is set to zero, and initial displacement is set according to either raised cosine:  
\[c_{rc}(x)=\left\{ \begin{array}{cc}\frac{c_{0}}{2}\bigg{(}1+\cos \bigg{(}\frac{\pi(x-x_{0})}{x_{hw}}\bigg{)}\bigg{)}&\quad|x-x_{0}|\leq x_{hw} \\ 0&\quad|x-x_{0}|>x_{hw}\end{array} \right.