class library: SynthDef - lazy implementation of removeUGen
[supercollider.git] / HelpSource / Classes / GbmanN.schelp
blobeb4585c986a97b6f3a2a9cbe4edfe15fff1b9cc7
1 class:: GbmanN
2 summary:: Gingerbreadman map chaotic generator
3 categories:: UGens>Generators>Chaotic
4 related:: Classes/GbmanL
6 description::
7 A non-interpolating sound generator based on the difference equations:
9 code::
10         x[n+1] = 1 - y[n] + abs(x[n])
11         y[n+1] = x[n]
13 warning:: reviser formulae converted to c like code ::
15 The behavior of the system is only dependent on its initial conditions.
17 Reference: emphasis:: Devaney, R. L. "The Gingerbreadman." Algorithm 3, 15-16, Jan. 1992. ::
19 classmethods::
20 method:: ar
21 argument:: freq
22 Iteration frequency in Hertz
23 argument:: xi
24 Initial value of x
25 argument:: yi
26 Initial value of y
28 examples::
29 code::
30 // default initial params
31 { GbmanN.ar(MouseX.kr(20, SampleRate.ir)) * 0.1 }.play(s);
33 // change initial params
34 { GbmanN.ar(MouseX.kr(20, SampleRate.ir), -0.7, -2.7) * 0.1 }.play(s);
36 // wait for it...
37 { GbmanN.ar(MouseX.kr(20, SampleRate.ir), 1.2, 2.0002) * 0.1 }.play(s);
39 // as a frequency control
40 { SinOsc.ar(GbmanN.ar(40)*400+500)*0.4 }.play(s);