Introduction (4)
A practical aspect : real time use of those oscillators
Using digital computations, getting from mathematical
equations a number of values that is sufficient to produce high quality
audio is quite CPU intensive, even with modern 1 to 3Ghz chips.
This is especially true with continuous systems such as the Lorenz or
the Duffing system.
Doing FFTs and iFFTs to apply, for instance, spectral compression on the system output makes the matter even worse.
Another issue, which is specific to chaotic oscillators, is
that with certain systems, the result is different for every calculation made.
This phenomenon is well known - it's referred to as "initial condition sensibility"
( sensibilité aux conditions initiales ).
Thus, it seems a bad idea to calculate values in real time, except for precise, well studied cases such as the first doubling cascades with discrete systems that exhibit such a behaviour.
In case the system is continous, it would be possible to build
analog circuits, thus doing analog synthesis.
This is not very new
: the Chua's circuit, a simple analog electronic circuit exhibiting a chaotic
behaviour, is built by hundreds of science students every year.
But as inexpensive as an analog circuit would be, initial condition sensibility would be unavoidable here.
The interesting thing is that, however complex those systems can be, they are rather periodic, at least once stabilized, and at least from a perceptive point of view.
Thus it's quite simple and efficient to compute only a brief amount of data and then to loop this sample to use it.
However, one should be careful about certain aspects.
For example, if we take once more the example of the Lorenz
system - transition to disorder for Par around 166 / 167 - see
the corresponding page here.
The system is, at first, harmonic, then "grains" of noise appear, more and
more of them, until it's noisy all the time.
Two issues to consider :
1. The loops have to be based on reasonably long samples.
The "grains" of noise seem to have random timbres, and a looped randomed
pattern, if too small, will necessarily be heard, which is not good : we
want to keep this random aspect.
2. The evolution must be based on a lot of samples.
Indeed, interpolation here is quite difficult. Unless one finds a particular
interpolation method, we will need a high "resolution" to make the transition
sound smooth.
So, we get to a very classical problem, which would be CPU
use against the amount of needed memory.
But in this case, the CPU issues seem to be quite difficult to handle.