aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--abs/mtx_randperm-help.pd9
-rw-r--r--abs/mtx_randperm.pd86
2 files changed, 95 insertions, 0 deletions
diff --git a/abs/mtx_randperm-help.pd b/abs/mtx_randperm-help.pd
new file mode 100644
index 0000000..4e4afec
--- /dev/null
+++ b/abs/mtx_randperm-help.pd
@@ -0,0 +1,9 @@
+#N canvas 773 206 450 300 10;
+#X obj 54 114 mtx_randperm;
+#X msg 54 79 4;
+#X text 82 36 random permutation matrix;
+#X text 230 221 Franz Zotter \, 2012;
+#X text 232 241 iemmatrix;
+#X obj 54 182 mtx_print;
+#X connect 0 0 5 0;
+#X connect 1 0 0 0;
diff --git a/abs/mtx_randperm.pd b/abs/mtx_randperm.pd
new file mode 100644
index 0000000..12f43cb
--- /dev/null
+++ b/abs/mtx_randperm.pd
@@ -0,0 +1,86 @@
+#N canvas 151 48 558 777 10;
+#X obj 45 32 inlet;
+#X obj 45 53 t b f f;
+#X obj 68 81 *;
+#X obj 260 189 random;
+#X obj 311 189 random;
+#X obj 68 101 until;
+#X obj 68 121 t b b;
+#X obj 311 211 + 1;
+#X obj 260 211 + 1;
+#X obj 272 467 mtx;
+#X obj 260 234 pack;
+#X obj 260 256 mtx 1 2;
+#X obj 260 279 t a a;
+#X obj 260 306 mtx_reverse;
+#X obj 260 329 list split 3;
+#X obj 323 361 list split 3;
+#X obj 363 384 unpack;
+#X obj 260 353 unpack;
+#X obj 272 490 demux 0 1 2;
+#X obj 402 407 t f b;
+#X msg 447 407 2;
+#X obj 321 408 t f b;
+#X msg 366 408 1;
+#X obj 291 572 list trim;
+#X obj 256 382 t b f;
+#X msg 253 408 0;
+#X obj 299 381 t b f;
+#X obj 291 549 list prepend;
+#X obj 208 643 outlet;
+#X msg 111 99 \$1;
+#X obj 111 121 mtx_eye;
+#X msg 368 523 row \$1;
+#X msg 321 430 row \$1;
+#X obj 328 524 l;
+#X obj 291 524 l;
+#X connect 0 0 1 0;
+#X connect 1 0 9 0;
+#X connect 1 1 2 0;
+#X connect 1 2 29 0;
+#X connect 1 2 2 1;
+#X connect 1 2 3 1;
+#X connect 1 2 4 1;
+#X connect 2 0 5 0;
+#X connect 3 0 8 0;
+#X connect 4 0 7 0;
+#X connect 5 0 6 0;
+#X connect 6 0 3 0;
+#X connect 6 1 4 0;
+#X connect 7 0 10 1;
+#X connect 8 0 10 0;
+#X connect 9 0 18 0;
+#X connect 10 0 11 0;
+#X connect 11 0 12 0;
+#X connect 12 0 13 0;
+#X connect 12 1 15 0;
+#X connect 13 0 14 0;
+#X connect 14 1 17 0;
+#X connect 15 1 16 0;
+#X connect 16 0 21 0;
+#X connect 16 1 19 0;
+#X connect 17 0 24 0;
+#X connect 17 1 26 0;
+#X connect 18 0 28 0;
+#X connect 18 1 34 1;
+#X connect 18 2 33 1;
+#X connect 19 0 32 0;
+#X connect 19 1 20 0;
+#X connect 20 0 18 1;
+#X connect 21 0 32 0;
+#X connect 21 1 22 0;
+#X connect 22 0 18 1;
+#X connect 23 0 9 0;
+#X connect 24 0 25 0;
+#X connect 24 0 34 0;
+#X connect 24 1 31 0;
+#X connect 25 0 18 1;
+#X connect 26 0 33 0;
+#X connect 26 1 31 0;
+#X connect 27 0 23 0;
+#X connect 29 0 30 0;
+#X connect 30 0 9 1;
+#X connect 31 0 27 1;
+#X connect 32 0 9 0;
+#X connect 33 0 27 0;
+#X connect 34 0 27 0;