#N canvas 0 0 646 521 10;
#X declare -lib iemmatrix;
#X obj 585 63 matrix;
#X text 465 62 see also help for;
#X obj 81 170 t a a;
#X text 89 15 [mtx_index];
#X msg 81 135 matrix 1 5 -1 -2 -3 -4 -5;
#X obj 275 168 t a a;
#X obj 305 191 mtx_print right-indices;
#X obj 111 193 mtx_print left-values;
#X obj 81 237 mtx_print addressed-values;
#X obj 81 214 mtx_index nan;
#X text 185 215 <- invalid indices;
#X msg 275 148 matrix 2 2 0 5 2 4;
#X text 8 60 you can simultaneously address matrix elements you know the indices of \; the outlet matrix carries the shape of the indexing matrix \; 0 is not allowed as index \, so you can give an alternative value as creation argument (here nan).;
#X obj 585 88 mtx_find;
#X text 44 282 the indexing matrix can e.g. be the outlet of mtx_find based on logical conditions:;
#X obj 89 325 mtx_rand;
#X obj 89 347 t a a;
#X obj 119 369 mtx_> 0.5;
#X msg 51 323 2 3;
#X obj 134 347 mtx_print random values;
#X obj 119 391 mtx_find col;
#X obj 89 413 mtx_index nan;
#X obj 89 442 mtx_print result;
#X text 200 411 finding the first nonzero entry in column;
#X text 47 34 addressing matrix elements by their indices;
#N canvas 460 154 494 171 META 0;
#X text 12 105 AUTHOR IOhannes m zmoelnig;
#X text 12 85 OUTLET_0 matrix;
#X text 12 125 HELP_PATCH_AUTHORS IOhannes m zmölnig;
#X text 12 25 LICENSE GPL-2+;
#X text 12 65 INLET_0 matrix;
#X text 11 44 DESCRIPTION address matrix elements by their indices;
#X text 11 5 KEYWORDS control matrix;
#X obj 16 147 declare -lib iemmatrix;
#X restore 591 6 pd META;
#X connect 2 0 9 0;
#X connect 2 1 7 0;
#X connect 4 0 2 0;
#X connect 5 0 9 1;
#X connect 5 1 6 0;
#X connect 9 0 8 0;
#X connect 11 0 5 0;
#X connect 15 0 16 0;
#X connect 16 0 21 0;
#X connect 16 1 17 0;
#X connect 16 1 19 0;
#X connect 17 0 20 0;
#X connect 18 0 15 0;
#X connect 20 0 21 1;
#X connect 21 0 22 0;
