diff options
Diffstat (limited to 'help-markov.pd')
-rw-r--r-- | help-markov.pd | 66 |
1 files changed, 66 insertions, 0 deletions
diff --git a/help-markov.pd b/help-markov.pd new file mode 100644 index 0000000..84290f3 --- /dev/null +++ b/help-markov.pd @@ -0,0 +1,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; |