Skip to content

Single Point Object


A Modalys object without physical properties which can nonetheless be represented in space and can vibrate in one dimension.

Syntax and Default Values

A 'single-point object can be created using the following Lisp syntax:

(make-object 'single-point
             (freqs '(220 440 660 880 1100))
             (bws '(8. 4. 2. 1. 0.5))
             (amps '(1. 0.8 0.7 0.6 0.5)))


The 'single-point object does not have any physical properties, but takes three parameter lists to set its frequency data directly:

  • freqs: A list of frequencies (in Hz) to be assigned to the modes frequencies.
  • bws: A list of bandwidths (in Hz) to be assigned to the modes loss coefficients.
  • amps: A list of amplitudes (in linear scale) to be assigned to the amplitude of the unique point in the modes shape vector.

Note: The three lists provided for the freq bw and amp parameters must have the same length. If different lengths are used, the lists are truncated to the length of the shortest list. A null list in any parameter will not be accepted and an error message will be displayed.

Multi-dimensional dynamic or constant controllers may also be used in place of the value lists!


As we learned in the "Introduction to the Physics of Modalys" section found in the introductory part of this documentation, modal representation is directly related to the spectral components, and thus also to the human perception, of the synthesized signal. 'single-point objects are virtual objects which don't have any physical property (as mass or density) but have a spatial representation as a single point which can vibrate in one dimension. 'single-point objects are defined by their spectral components (frequency of resonance, bandwidth, amplitude) and are therefore important for bringing in Modalys a convergence between signal models and physical models - as 'single-point behave exactly as any other Modalys physical object.

It is important for the user to know that the modal loss coefficient for this object is set directly using the given resonance bandwidth, thereby giving the modal representation a straightforward connection between the signal and physics domains. (Although bandwidths and modal loss coefficients are not exactly the same thing, they do function similarly where damping of resonances is concerned, so the bandwidth parameter can be used directly in this context.)


A 'single-point object can be only accessed in the 'normal direction:

(make-access my-single-point my-controller 'normal)
As a 'single-point object does not have spatial information, my-controller should be a constant between 0 and 1. In fact, any position (even a time-varying) can be used, but it will not influence the object motion. The position controller is necessary for keeping compatibility with other Modalys objects.


Since a single-point object is defined directly from frequency, bandwidth and amplitude data, its pitch is set automatically based on the frequency data it is given. A single-point with a 5-partial harmonic spectrum can therefore be created this way:

(make-object 'single-point
         (freqs '(220 440 660 880 1100))
         (bws '(8. 4. 2. 1. 0.5))
         (amps '(1. 0.866 0.707 0.612 0.5)) )

★     ★