aboutsummaryrefslogtreecommitdiff
path: root/help-markov.pd
blob: 84290f3d63ae215edf6837588c48c72cc41fcfd6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
#N canvas 0 107 907 643 10;
#X obj 244 40 bng 20 250 50 0 empty empty empty 20 8 0 8 -262144 -1
-1;
#X obj 283 31 r state;
#X obj 261 66 f 1;
#X floatatom 312 55 3 0 0 0 - - -;
#X text 227 19 STEP;
#X msg 371 52 \; state 1;
#X text 371 32 reset;
#X obj 260 103 k_cext 1 0 \; \; int state=I(0) \; int s1[3]=BEGIN 30
\, 10 \, 70 END \; int s2[3]=BEGIN 60 \, 60 \, 80 END \; int random=RANDOM(100)
\; \; IF random < s1[state] THEN DO \; . SEND("state" \, 1) \; ELIF
random < s2[state] THEN DO \; . SEND("state" \, 2) \; ELSE \; . SEND("state"
\, 3) \;;
#X obj 33 25 bng 20 250 50 0 empty empty empty 20 8 0 8 -262144 -1
-1;
#X obj 72 16 r state;
#X obj 50 51 f 1;
#X floatatom 101 40 3 0 0 0 - - -;
#X text 16 4 STEP;
#X obj 26 511 s state;
#X text 244 391 documentation patches.;
#X text 245 375 chain example in the PD;
#X msg 155 65 print;
#X msg 200 66 print;
#X obj 26 100 k_cext 1 1 \; int state=I(0) \; int random=RANDOM(100)
\; \; SWITCH state THEN DO \; . case 1: \; . . IF random<30 THEN DO
\; . . . state=1 \; . . ELIF random<60 THEN DO \; . . . state=2 \;
. . ELSE \; . . . state=3 \; . . break \; . case 2: \; . . IF random<10
THEN DO \; . . . state=1 \; . . ELIF random<60 THEN DO \; . . . state=2
\; . . ELSE \; . . . state=3 \; . . break \; . case 3: \; . . IF random<70
THEN DO \; . . . state=1 \; . . ELIF random<80 THEN DO \; . . . state=2
\; . . ELSE \; . . . state=3 \; O0(state) \;;
#X obj 561 300 k_cfunc INT_markov int a int b \; int random=RANDOM(100)
\; IF random<a THEN DO \; . return 1 \; ELIF random<b THEN DO \; .
return 2 \; ELSE \; . return 3 \;;
#X obj 557 115 k_cext 1 0 \; \; int s1[3]=BEGIN 30 \, 10 \, 70 END
\; int s2[3]=BEGIN 60 \, 60 \, 80 END \; SEND("state" \, INT_markov(s1[I(0)]
\, s2[I(0)])) \;;
#X obj 574 46 bng 20 250 50 0 empty empty empty 20 8 0 8 -262144 -1
-1;
#X obj 613 37 r state;
#X obj 591 72 f 1;
#X floatatom 642 61 3 0 0 0 - - -;
#X text 557 25 STEP;
#X msg 530 72 print;
#X text 237 29;
#X text 244 360 Three ways to implement the markov;
#X msg 561 259 print;
#X connect 0 0 2 0;
#X connect 1 0 2 1;
#X connect 1 0 3 0;
#X connect 2 0 7 0;
#X connect 8 0 10 0;
#X connect 9 0 10 1;
#X connect 9 0 11 0;
#X connect 10 0 18 0;
#X connect 16 0 18 0;
#X connect 17 0 7 0;
#X connect 18 0 13 0;
#X connect 21 0 23 0;
#X connect 22 0 23 1;
#X connect 22 0 24 0;
#X connect 23 0 20 0;
#X connect 26 0 20 0;
#X connect 29 0 19 0;