sclang: ServerShmInterface - try to avoid multiple destructor calls
[supercollider.git] / HelpSource / Classes / Pbeta.schelp
blobae9da01e31f3e855ab74c99cc80faa96b1d4af79
1 class:: Pbeta
2 summary:: random values that follow a Eulerian Beta Distribution
3 categories:: Streams-Patterns-Events>Patterns>Random
5 ClassMethods::
7 method::new
9 argument::lo
10 lower boundary of values.
12 argument::hi
13 upper boundary of values.
15 argument::prob1
16 The probability that a value will occur near lo. <1, probability of a value near lo increases. =1, uniform dist. >1 will create a bounded Gaussian-like distribution.
18 argument::prob2
19 The probability that a value will occur near hi. <1, probability of a value near lo increases. =1, uniform dist. >1 will create a bounded Gaussian-like distribution.
21 argument::length
22 number of values produced (default: inf).
24 Examples::
26 code::
28 var a, c, w;
29 a = Pbeta(0.0, 1.0, 0.1, 0.1, inf);
30 c = a.asStream.nextN(500);
31 w = Window.new("Pbetarand", Rect(10, 10, 540, 800));
32 // plot the values
33 c.plot(bounds: Rect(10, 10, 520, 380), discrete: true, parent: w);
34 // a histogram of the values
35 c.histo(500).plot(bounds: Rect(10, 410, 520, 380), parent: w);
39 var a, c, w;
40 a = Pbeta(0.0, 1.0, 1, 1, inf);
41 c = a.asStream.nextN(500);
42 w = Window.new("Pbetarand", Rect(10, 10, 540, 800));
43 // plot the values
44 c.plot(bounds: Rect(10, 10, 520, 380), discrete: true, parent: w);
45 // a histogram of the values
46 c.histo(500).plot(bounds: Rect(10, 410, 520, 380), parent: w);(discrete: true);
50 var a, c, w;
51 a = Pbeta(0.0, 1.0, 3, 3, inf);
52 c = a.asStream.nextN(500);
53 w = Window.new("Pbetarand", Rect(10, 10, 540, 800));
54 // plot the values
55 c.plot(bounds: Rect(10, 10, 520, 380), discrete: true, parent: w);
56 // a histogram of the values
57 c.histo(500).plot(bounds: Rect(10, 410, 520, 380), parent: w);
60 // sound example
62 SynthDef(\help_sinegrain,
63         { arg out=0, freq=440, sustain=0.05;
64                 var env;
65                 env = EnvGen.kr(Env.perc(0.01, sustain, 0.2), doneAction:2);
66                 Out.ar(out, SinOsc.ar(freq, 0, env))
67         }).add;
72 var a;
73 a = Pbeta(0.0, 1.0, 0.1, 0.1, inf).asStream;
75         loop {
76                 Synth(\help_sinegrain, [\freq, a.next * 600 + 300]);
77                 0.02.wait;
78         }
79 }.fork;
83 var a;
84 a = Pbeta(0.0, 1.0, 1.0, 1.0, inf).asStream;
86         loop {
87                 Synth(\help_sinegrain, [\freq, a.next * 600 + 300]);
88                 0.02.wait;
89         }
90 }.fork;
94 var a;
95 a = Pbeta(0.0, 1.0, 3.0, 3.0, inf).asStream;
97         loop {
98                 Synth(\help_sinegrain, [\freq, a.next * 600 + 300]);
99                 0.02.wait;
100         }
101 }.fork;