A variety of sounds are produced by the interaction of one or more moving particles enclosed within a possibly resonant object.
Using basic physical laws governing the motion and interaction of point masses, it is possible to create a numerical simulation of such a system.
In general, one must keep track of the position and velocity for each particle in the system.
For example, a whistle produces sound via the interaction of an enclosed “pea” with a recorder-like air jet mechanism.
In the absence of the “pea”, the whistle would produce a relatively stable pitch that is slightly influenced by air jet speed.
When the circulating “pea” interacts with the air jet system, there is a decrease in pitch (about 7%), an increase in amplitude (about 6 dB), and a small increase in the noise component (about 2 dB)(Cook, 2002).
The motion and position of the “pea” can be reasonably modeled with a two-dimensional circular shell system (the STK Sphere
class).
An efficient synthesis approach for the whistle is to model the result of the jet mechanism with a simple sinusoidal oscillator and to use the output of the spatial “pea” model to control both amplitude and frequency modulation of the oscillator. This approach is implemented in the STK Whistle
class.
For multi-particle, “shaker” percussive instruments, only collisions with the enclosing structure are considered to generate an audible event (inter-particle collisions need to be accounted for in the equations of motion but are not considered to be sonically relevant).
When particles interact or collide with the enclosing structure, boundary conditions based on momentum and center of mass can be applied to determine subsequent motion.
While this approach provides an accurate simulation of such a system, it tends to be computationally intensive.