Update of /cvsroot/pure-data/externals/iem/iemmatrix/doc In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv16990
Added Files: matrix-help.pd matrix~-help.pd mtx_abs-help.pd mtx_add-help.pd mtx_binops-help.pd mtx_check.pd mtx_col-help.pd mtx_cos-help.pd mtx_dbtorms-help.pd mtx_diag-help.pd mtx_diegg-help.pd mtx_distance2-help.pd mtx_egg-help.pd mtx_element-help.pd mtx_exp-help.pd mtx_eye-help.pd mtx_int-help.pd mtx_inverse-help.pd mtx_log-help.pd mtx_mean-help.pd mtx_minmax-help.pd mtx_mul-help.pd mtx_mul~-help.pd mtx_ones-help.pd mtx_pivot-help.pd mtx_pow-help.pd mtx_print-help.pd mtx_rand-help.pd mtx_resize-help.pd mtx_rmstodb-help.pd mtx_roll-help.pd mtx_row-help.pd mtx_scroll-help.pd mtx_sin-help.pd mtx_size-help.pd mtx_sub-help.pd mtx_sum-help.pd mtx_trace-help.pd mtx_transpose-help.pd mtx_zeros-help.pd Removed Files: matrix.pd matrix~.pd mtx_binops.pd mtx_dbtorms.pd mtx_distance2.pd mtx_element.pd mtx_exp.pd mtx_inverse.pd mtx_log.pd mtx_mean.pd mtx_pivot.pd mtx_rand.pd mtx_rmstodb.pd mtx_size.pd mtx_special.pd mtx_trace.pd mtx_transpose.pd Log Message: renamed help-patches; split meta help-patches into smaller ones; TODO: reflect this change in the C-sources
--- NEW FILE: mtx_sub-help.pd --- #N canvas 363 101 481 299 10; #X text 255 30 updated for; #X obj 343 30 iemmatrix 0.2; #X obj 392 56 matrix; #X text 262 55 see also help for; #X obj 46 176 mtx_sub; #X obj 125 177 mtx_-; #X obj 123 147 mtx_diag 1 2 3 4 5; #X obj 46 147 mtx_ones 5; #X obj 46 124 t b b; #X obj 46 198 mtx_print; #X msg 46 105 bang; #X text 100 178 ==; #X obj 263 147 mtx_eye 4; #X obj 263 172 mtx_sub 10; #X msg 263 120 bang; #X obj 263 199 mtx_print; #X floatatom 332 104 4 0 0 0 - - -; #X obj 332 122 t b f; #X obj 360 172 mtx_- 10; #X text 339 173 ==; #X text 38 227 sub 2 matrices; #X obj 17 23 mtx_sub; #X obj 81 23 mtx_-; #X text 8 42 matrix arithmetic: subtraction; #X obj 393 77 -; #X text 232 231 subtract an offset from a matrix; #X connect 4 0 9 0; #X connect 6 0 4 1; #X connect 7 0 4 0; #X connect 8 0 7 0; #X connect 8 1 6 0; #X connect 10 0 8 0; #X connect 12 0 13 0; #X connect 13 0 15 0; #X connect 14 0 12 0; #X connect 16 0 17 0; #X connect 17 0 12 0; #X connect 17 1 13 1;
--- mtx_size.pd DELETED ---
--- NEW FILE: mtx_mul-help.pd --- #N canvas 65 0 766 595 10; #X text 525 20 updated for; #X obj 613 20 iemmatrix 0.2; #X obj 662 46 matrix; #X text 532 45 see also help for; #X obj 17 23 mtx_mul; #X obj 81 23 mtx_*; #X obj 662 67 *; #X text 8 42 matrix arithmetic: multiplication; #X obj 134 23 mtx_.*; #X obj 17 256 mtx_mul; #X obj 90 256 mtx_*; #X msg 17 104 bang; #X obj 73 172 mtx_diag 1 2; #X obj 17 128 t b b; #X obj 17 172 mtx_+ 3; #X text 70 257 ==; #X obj 17 148 mtx_eye 3 2; #X obj 219 259 mtx_print; #X obj 219 142 t b f; #X floatatom 219 124 4 0 0 0 - - -; #X msg 219 165 4 2 1 3; #X obj 219 185 mtx_diag; #X obj 219 223 mtx_mul 2; #X obj 304 223 mtx_* 2; #X obj 374 223 mtx_.* 2; #X text 285 223 ==; #X text 357 224 ==; #X obj 563 231 mtx_.*; #X obj 563 266 mtx_print; #X obj 563 146 mtx_diag 1 2 3; #X obj 600 172 mtx_ones 3; #X obj 563 125 t b b; #X msg 563 106 bang; #X obj 600 191 mtx_* 2; #X text 18 313 multiply 2 matrices; #X text 215 282 multiply a matrix with a scalar; #X text 476 290 multiply 2 matrices element by element; #X obj 17 294 mtx_print A*B; #X obj 73 195 t a a; #X obj 56 215 mtx_print A; #X obj 17 215 t a a; #X obj 112 195 mtx_print B; #X obj 158 539 mtx_print; #X obj 158 432 t b f; #X floatatom 158 414 4 0 0 0 - - -; #X msg 158 455 4 2 1 3; #X obj 158 475 mtx_diag; #X obj 403 540 mtx_print; #X obj 403 443 mtx_diag 1 2 3; #X obj 434 461 mtx_ones 3; #X obj 434 480 mtx_* 2; #X text 114 562 divide a matrix by a scalar; #X obj 158 503 mtx_./ 2; #X obj 403 505 mtx_./; #X text 347 564 divide 2 matrices element by element; #X obj 403 422 t b b f; #X floatatom 403 403 4 0 0 0 - - -; #X text 8 382 matrix arithmetic: division; #X obj 14 364 mtx_./; #X connect 9 0 37 0; #X connect 11 0 13 0; #X connect 12 0 38 0; #X connect 13 0 16 0; #X connect 13 1 12 0; #X connect 14 0 40 0; #X connect 16 0 14 0; #X connect 18 0 20 0; #X connect 18 1 22 1; #X connect 19 0 18 0; #X connect 20 0 21 0; #X connect 21 0 22 0; #X connect 22 0 17 0; #X connect 27 0 28 0; #X connect 29 0 27 0; #X connect 30 0 33 0; #X connect 31 0 29 0; #X connect 31 1 30 0; #X connect 32 0 31 0; #X connect 33 0 27 1; #X connect 38 0 9 1; #X connect 38 1 41 0; #X connect 40 0 9 0; #X connect 40 1 39 0; #X connect 43 0 45 0; #X connect 43 1 52 1; #X connect 44 0 43 0; #X connect 45 0 46 0; #X connect 46 0 52 0; #X connect 48 0 53 0; #X connect 49 0 50 0; #X connect 50 0 53 1; #X connect 52 0 42 0; #X connect 53 0 47 0; #X connect 55 0 48 0; #X connect 55 1 49 0; #X connect 55 2 50 1; #X connect 56 0 55 0;
--- NEW FILE: mtx_element-help.pd --- #N canvas 136 41 544 373 10; #X text 276 28 updated for; #X obj 364 28 iemmatrix 0.2; #X obj 413 54 matrix; #X text 283 53 see also help for; #X obj 413 76 mtx_row; #X obj 413 96 mtx_col; #X text 19 9 get/set elements of a matrix; #X obj 53 302 mtx_print; #X obj 53 283 mtx_element 4 3; #X obj 64 260 mtx_ones 5 3; #X msg 64 241 bang; #X floatatom 53 191 4 0 0 0 - - -; #X msg 164 176 3 2; #X msg 164 197 2 0; #X msg 164 218 0 1; #X msg 165 238 0 0; #X text 199 177 set element [3 , 2]; #X text 199 197 set all elements in row [2]; #X text 199 217 set all elements in column [1]; #X text 163 284 creation: mtx_element [<row> <col> [<posR> <posC>]] ; #X obj 89 32 mtx_element; #X text 52 133 set matrix elements; #X text 200 237 set all elements of matrix (default!); #X connect 8 0 7 0; #X connect 9 0 8 0; #X connect 10 0 9 0; #X connect 11 0 8 0; #X connect 12 0 8 1; #X connect 13 0 8 1; #X connect 14 0 8 1; #X connect 15 0 8 1;
--- NEW FILE: mtx_sum-help.pd --- #N canvas 128 118 680 254 10; #X text 263 126 updated for; #X obj 351 126 iemmatrix 0.2; #X obj 400 152 matrix; #X text 270 151 see also help for; #X obj 48 100 mtx 3 3; #X obj 48 131 t a a; #X msg 48 80 0 1 -2 -3 -4 5 -6 7 8; #X obj 48 164 mtx_sum; #X obj 48 192 print sum; #X obj 91 132 mtx_print; #X text 136 10 sum columns of matrix; #X text 45 42 compute the column-wise sum of a matrix (result is a list of sums); #X connect 4 0 5 0; #X connect 5 0 7 0; #X connect 5 1 9 0; #X connect 6 0 4 0; #X connect 7 0 8 0;
--- NEW FILE: mtx_rmstodb-help.pd --- #N canvas 337 124 687 471 10; #X text 188 7 convert rms to dB(pd); #X text 458 17 updated for; #X obj 546 17 iemmatrix 0.2; #X obj 181 90 mtx_eye; #X obj 64 258 mtx_rand 4 2; #X msg 64 233 bang; #X obj 64 307 t a a; #X obj 105 307 mtx_print org; #X obj 64 357 t a a; #X msg 181 71 3 3; #X obj 181 110 mtx_* 100; #X obj 48 162 mtx_print dbtorms; #X obj 48 100 mtx 2 2; #X text 290 305 note: dB(pd):=dB(techn)+100; #X text 307 337 this means: 100dB(pd)==unity gain (==1); #X text 404 375 0dB(pd)==zero gain (==0); #X text 391 354 106dB(pd)~=double gain (==2); #X text 44 34 convert a linear value to dB(pd) to for each element of a matrix; #X obj 48 134 mtx_rmstodb; #X obj 64 330 mtx_dbtorms; #X obj 64 380 mtx_rmstodb; #X obj 105 357 mtx_print rms; #X obj 64 407 mtx_print db; #X msg 48 80 0 1 0.1 2; #X obj 64 277 mtx_* 100; #X obj 595 43 matrix; #X text 465 42 see also help for; #X obj 599 71 mtx_dbtorms; #X obj 599 91 rmstodb; #X connect 3 0 10 0; #X connect 4 0 24 0; #X connect 5 0 4 0; #X connect 6 0 19 0; #X connect 6 1 7 0; #X connect 8 0 20 0; #X connect 8 1 21 0; #X connect 9 0 3 0; #X connect 10 0 18 0; #X connect 12 0 18 0; #X connect 18 0 11 0; #X connect 19 0 8 0; #X connect 20 0 22 0; #X connect 23 0 12 0; #X connect 24 0 6 0;
--- NEW FILE: mtx_rand-help.pd --- #N canvas 25 323 504 298 10; #X text 51 7 fill a matrix with random values; #X text 295 20 updated for; #X obj 383 20 iemmatrix 0.2; #X obj 432 46 matrix; #X text 302 45 see also help for; #X obj 434 72 random; #X obj 59 148 mtx_rand; #X obj 59 194 mtx_print; #X obj 83 100 mtx_ones 6 3; #X msg 83 82 bang; #X msg 74 58 5 7; #X msg 59 35 3; #X msg 120 127 seed 12; #X text 51 219 get a matrix containing; #X text 51 232 random elements (0..1]; #X text 177 130 set seed; #X connect 6 0 7 0; #X connect 8 0 6 0; #X connect 9 0 8 0; #X connect 10 0 6 0; #X connect 11 0 6 0; #X connect 12 0 6 0;
--- NEW FILE: mtx_inverse-help.pd --- #N canvas 366 49 604 572 10; #X text 347 392 updated for; #X obj 435 392 iemmatrix 0.2; #X obj 484 418 matrix; #X text 354 417 see also help for; #X text 243 142 singular; #X text 245 107 regular; #X text 246 158 regular; #X text 247 168 but badly conditioned; #X text 45 16 mtx_inverse:: get the inverse of a matrix; #X text 44 49 mtx_inverse calculates the inverse of a square-matrix ; #X text 43 67 if the input is a non-square matrix (rows!=cols) , the pseudo-inverse will be calculated.; #X text 154 453 A*inv(A)=inv(A)*A=I; #X text 248 221 pseudoinverse: P1=inv(A'*A)*A'; #X text 247 269 pseudoinverse: P2=A'*inv(A*A'); #X text 245 473 P1*A=I; #X text 245 493 A*P2=I; #X obj 92 358 mtx_inverse; #X obj 92 199 mtx 3; #X msg 112 164 1 2 3 2 4 4 3 4 5; #X msg 103 140 1 2 3 2 3 4 3 4 5; #X msg 92 108 1 2 4 2 3 4 3 4 5; #X obj 92 392 mtx_print inverse; #X obj 92 300 t a a; #X obj 134 300 mtx_print original; #X obj 153 219 mtx_rand 4 3; #X msg 153 198 bang; #X msg 153 248 bang; #X obj 153 269 mtx_rand 3 4; #X obj 181 358 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 -1; #X connect 16 0 21 0; #X connect 16 1 28 0; #X connect 17 0 22 0; #X connect 18 0 17 0; #X connect 19 0 17 0; #X connect 20 0 17 0; #X connect 22 0 16 0; #X connect 22 1 23 0; #X connect 24 0 22 0; #X connect 25 0 24 0; #X connect 26 0 27 0; #X connect 27 0 22 0;
--- mtx_transpose.pd DELETED ---
--- mtx_exp.pd DELETED ---
--- NEW FILE: mtx_print-help.pd --- #N canvas 128 118 680 254 10; #X text 458 17 updated for; #X obj 546 17 iemmatrix 0.2; #X obj 595 43 matrix; #X text 465 42 see also help for; #X text 136 10 print a matrix to the console; #X obj 595 63 print; #X msg 48 80 bang; #X obj 48 100 mtx_ones 5; #X obj 48 141 t a a a; #X obj 92 164 mtx_print; #X obj 48 228 print oops; #X obj 70 194 mtx_print label; #X text 211 116 [mtx_print] will print the matrix in a formatted way ; #X text 216 143 you can give labels , just like with [print]; #X connect 6 0 7 0; #X connect 7 0 8 0; #X connect 8 0 10 0; #X connect 8 1 11 0; #X connect 8 2 9 0;
--- NEW FILE: mtx_diegg-help.pd --- #N canvas 13 81 566 290 10; #X text 295 30 updated for; #X obj 383 30 iemmatrix 0.2; #X obj 432 56 matrix; #X text 302 55 see also help for; #X text 129 20 [mtx_diegg]; #X obj 103 227 mtx_print; #X msg 103 130 bang; #X msg 136 157 1 2 3 4 5; #X obj 300 130 mtx_rand 4; #X msg 300 108 bang; #X obj 300 158 t a a; #X obj 347 159 mtx_print org; #X text 294 258 diagonal of the matrix; #X text 276 88 get the turned diagonal of a matrix; #X obj 300 231 print dieggonal; #X text 93 252 turned diagonal-matrix; #X text 30 89 create a turned diagonal matrix; #X obj 300 197 mtx_diegg; #X obj 103 201 mtx_diegg 7 9 8; #X connect 6 0 18 0; #X connect 7 0 18 0; #X connect 8 0 10 0; #X connect 9 0 8 0; #X connect 10 0 17 0; #X connect 10 1 11 0; #X connect 17 0 14 0; #X connect 18 0 5 0;
--- NEW FILE: mtx_exp-help.pd --- #N canvas 128 118 687 471 10; #X msg 48 59 3 5; #X obj 555 66 exp; #X obj 48 134 mtx_exp; #X obj 48 81 mtx_eye; #X obj 125 100 mtx 3 3; #X msg 125 80 0 1 2 3 4 5 6 7 8; #X obj 555 86 mtx_log; #X obj 48 162 mtx_print exponential; #X obj 64 285 mtx_rand 4 2; #X msg 64 263 bang; #X obj 64 307 t a a; #X obj 105 307 mtx_print org; #X obj 64 330 mtx_exp; #X obj 64 357 t a a; #X obj 105 357 mtx_print exp; #X obj 64 380 mtx_log; #X obj 64 407 mtx_print log; #X text 418 17 updated for; #X obj 506 17 iemmatrix 0.2; #X obj 555 43 matrix; #X text 425 42 see also help for; #X text 45 42 compute the exponentials of matrix elements; #X text 188 7 exponentials of matrix elements; #X connect 0 0 3 0; #X connect 2 0 7 0; #X connect 3 0 2 0; #X connect 4 0 2 0; #X connect 5 0 4 0; #X connect 8 0 10 0; #X connect 9 0 8 0; #X connect 10 0 12 0; #X connect 10 1 11 0; #X connect 12 0 13 0; #X connect 13 0 15 0; #X connect 13 1 14 0; #X connect 15 0 16 0;
--- NEW FILE: mtx_roll-help.pd --- #N canvas 79 113 670 283 10; #X text 458 17 updated for; #X obj 546 17 iemmatrix 0.2; #X obj 595 43 matrix; #X text 465 42 see also help for; #X text 194 36 tranpose matrices; #X text 198 15 [mtx_roll]; #X obj 194 162 t a a; #X obj 236 163 mtx_print org; #X obj 194 220 mtx_print rolled; #X msg 194 120 1 2 3 4 5; #X obj 194 142 mtx_diag; #X text 190 103 shift columns of a matrix; #X floatatom 289 196 4 0 5 1 shift - -; #X text 374 182 (0=no-shift ; 1=1-column-right ; -2=2-columns-left ; ...); #X obj 194 192 mtx_roll 1; #X connect 6 0 14 0; #X connect 6 1 7 0; #X connect 9 0 10 0; #X connect 10 0 6 0; #X connect 12 0 14 1; #X connect 14 0 8 0;
--- mtx_mean.pd DELETED ---
--- mtx_element.pd DELETED ---
--- NEW FILE: mtx_egg-help.pd --- #N canvas 61 0 491 290 10; #X text 295 230 updated for; #X obj 383 230 iemmatrix 0.2; #X obj 432 256 matrix; #X text 302 255 see also help for; #X obj 103 201 mtx_egg 5; #X obj 103 227 mtx_print; #X msg 103 130 bang; #X msg 133 174 3 5; #X msg 119 150 10; #X text 129 20 [mtx_egg]; #X text 30 89 create a turned identity matrix; #X text 79 246 turned identity matrix; #X connect 4 0 5 0; #X connect 6 0 4 0; #X connect 7 0 4 0; #X connect 8 0 4 0;
--- NEW FILE: mtx_diag-help.pd --- #N canvas 61 0 491 290 10; #X text 285 23 updated for; #X obj 373 23 iemmatrix 0.2; #X obj 422 49 matrix; #X text 292 48 see also help for; #X obj 103 227 mtx_print; #X msg 103 130 bang; #X text 129 20 [mtx_diag]; #X msg 136 157 1 2 3 4 5; #X text 93 252 diagonal-matrix; #X obj 103 201 mtx_diag 7 9 8; #X text 30 89 create a diagonal matrix; #X obj 300 130 mtx_rand 4; #X msg 300 108 bang; #X obj 300 197 mtx_diag; #X obj 300 231 print diagonal; #X obj 300 158 t a a; #X obj 347 159 mtx_print org; #X text 294 258 diagonal of the matrix; #X text 276 88 get the diagonal of a matrix; #X connect 5 0 9 0; #X connect 7 0 9 0; #X connect 9 0 4 0; #X connect 11 0 15 0; #X connect 12 0 11 0; #X connect 13 0 14 0; #X connect 15 0 13 0; #X connect 15 1 16 0;
--- mtx_pivot.pd DELETED ---
--- NEW FILE: mtx_transpose-help.pd --- #N canvas 168 0 670 283 10; #X obj 194 192 mtx_transpose; #X msg 194 117 3 5; #X text 191 100 transpose a matrix; #X text 458 17 updated for; #X obj 546 17 iemmatrix 0.2; #X obj 595 43 matrix; #X text 465 42 see also help for; #X text 194 36 tranpose matrices; #X text 198 15 [mtx_transpose]; #X obj 194 139 mtx_eye; #X obj 194 162 t a a; #X obj 236 163 mtx_print org; #X obj 194 220 mtx_print transposed; #X connect 0 0 12 0; #X connect 1 0 9 0; #X connect 9 0 10 0; #X connect 10 0 0 0; #X connect 10 1 11 0;
--- NEW FILE: mtx_int-help.pd --- #N canvas 128 118 680 254 10; #X text 458 17 updated for; #X obj 546 17 iemmatrix 0.2; #X obj 595 43 matrix; #X text 465 42 see also help for; #X obj 595 63 int; #X obj 48 164 mtx_int; #X obj 48 192 mtx_print int; #X obj 48 131 t a a; #X obj 91 132 mtx_print org; #X text 136 10 integer value of matrix elements; #X text 45 42 compute the integer value of each element of a matrix ; #X obj 48 100 mtx 3 2; #X msg 48 80 0 1 -2 0.9 -0.9 -999.1; #X connect 5 0 6 0; #X connect 7 0 5 0; #X connect 7 1 8 0; #X connect 11 0 7 0; #X connect 12 0 11 0;
--- NEW FILE: mtx_pivot-help.pd --- #N canvas -35 125 814 290 10; #X text 458 17 updated for; #X obj 546 17 iemmatrix 0.2; #X obj 595 43 matrix; #X text 465 42 see also help for; #X text 198 15 [mtx_pivot]; #X text 59 79 pivot-transform a matrix; #X obj 63 164 mtx_pivot; #N canvas 352 114 190 367 rand-matrix 0; #X obj 74 163 inlet; #X obj 74 270 outlet; #X obj 74 195 mtx_rand; #X obj 74 215 mtx_* 10; #X obj 74 237 mtx_int; #X connect 0 0 2 0; #X connect 2 0 3 0; #X connect 3 0 4 0; #X connect 4 0 1 0; #X restore 63 118 pd rand-matrix; #X msg 63 96 4 3; #X obj 112 185 mtx_print post; #X obj 87 205 mtx_print pre; #X obj 63 245 mtx_print pivot; #X text 290 184 the first outlet is the pivot-transformed matrix.; #X text 289 210 the other outlets are the 1/0-matrices that have to be pre-multiplied (row-tranform) and post-multiplied (column-tranform) to the original matrix to get the pivot-tranformation. this is useful for de-pivoting.; #X obj 63 141 t a a; #X obj 103 141 mtx_print original; #X msg 175 99 matrix 4 3 1 2 3 4 5 6 7 8 9 10 11 12; #X text 194 36 pivot-transform matrices; #X text 290 131 this will tranform the columns and rows , so that the result will have "all" maximum values in the diagonale. the maximum of the matrix will be located at the upper-left corner.; #X connect 6 0 11 0; #X connect 6 1 10 0; #X connect 6 2 9 0; #X connect 7 0 14 0; #X connect 8 0 7 0; #X connect 14 0 6 0; #X connect 14 1 15 0; #X connect 16 0 14 0;
--- NEW FILE: matrix-help.pd --- #N canvas 94 0 1118 745 10; #X obj 258 -23 matrix; #X obj 61 187 mtx_check; #X obj 61 216 mtx_print; #X obj 544 -21 mtx; #X obj 30 535 mtx_print; #X obj 30 513 matrix; #X msg 42 372 zeros 5; #X msg 30 353 eye 3; #X msg 49 390 ones 4; #X msg 55 411 diag 1 2 3 4; #X obj 369 531 matrix; #X obj 471 496 loadbang; #X obj 471 516 mtx_diag 4 3 1 2; #X obj 369 553 print; #X msg 369 364 row; #X msg 539 497 bang; #X msg 379 404 row $1; #X floatatom 379 385 4 0 0; #X floatatom 391 424 4 0 0; #X msg 391 443 row $1 1 2 3 4; #X floatatom 498 382 4 0 0; #X floatatom 510 421 4 0 0; #X msg 488 362 col; #X msg 498 401 col $1; #X msg 510 440 col $1 1 2 3 4; #X msg 592 364 element; #X msg 623 406 element $1; #X floatatom 643 428 4 0 0; #X msg 643 447 element 3 $1; #X floatatom 623 386 4 0 0; #X msg 61 162 matrix 3 3 1 2 3 4 5 6 7; #X msg 39 136 matrix 3 3 1 2 3 4 5 6 7; #X text 43 79 this is , how a matrix really looks...; #X text 216 134 an "illegal" matrix; #X text 122 187 make the "illegal" matrix consistent; #X text 216 103 a "legal" matrix; #X msg 40 103 matrix 3 3 1 2 3 1 2 4 7 6 5; #X obj 590 218 mtx_print; #X obj 590 196 matrix; #X obj 655 174 mtx_ones 10; #X msg 655 154 bang; #X text 121 218 print to stderr (like "print"); #X msg 590 64 bang; #X floatatom 615 103 4 0 0; #X msg 604 85 matrix 2 3 10 10 30 20 -5 8; #X msg 627 126 1 2 3 1 2 3 10 20 30; #X text 758 118 a list of elements; #X text 759 132 has to fit the size of the "current" matrix; #X text 651 104 set all elements of the current matrix to a value; #X text 366 345 get/set rows; #X text 479 344 get/set columns; #X text 5 564 create various matrices; #X text 356 -21 matrix operations; #X text 636 197 ==; #X obj 660 197 mtx; #X msg 335 398 bang; #X text 586 344 get/set elements; #X msg 654 486 element $1 2 10; #X floatatom 654 468 4 0 0; #X msg 702 406 element $1 $1; #X text 687 406 ==; #X obj 161 479 matrix 3 2; #X obj 161 525 mtx_print; #X msg 161 357 bang; #X text 143 542 an "empty" [3 , 2] matrix; #X msg 73 433 egg 4; #X msg 75 455 diegg 3 2 1; #X obj 126 671 mtx_element; #X obj 225 646 mtx_size; #X obj 225 669 mtx_transpose; #X obj 427 650 mtx_mean; #X obj 427 669 mtx_rand; #X obj 338 670 mtx_inverse; #X obj 126 646 mtx_eye; #X obj 338 645 mtx_+; #X text 127 620 see also help for:; #X msg 912 383 write /tmp/my_matrix.mtx; #X msg 912 406 read /tmp/my_matrix.mtx; #X obj 810 412 mtx_rand; #X msg 810 390 4 5; #X msg 858 389 bang; #X obj 858 464 mtx_print; #X text 848 351 load and save matrices; #X obj 858 440 matrix test.mtx; #X connect 1 0 2 0; #X connect 5 0 4 0; #X connect 6 0 5 0; #X connect 7 0 5 0; #X connect 8 0 5 0; #X connect 9 0 5 0; #X connect 10 0 13 0; #X connect 11 0 12 0; #X connect 12 0 10 1; #X connect 14 0 10 0; #X connect 15 0 12 0; #X connect 16 0 10 0; #X connect 17 0 16 0; #X connect 18 0 19 0; #X connect 19 0 10 0; #X connect 20 0 23 0; #X connect 21 0 24 0; #X connect 22 0 10 0; #X connect 23 0 10 0; #X connect 24 0 10 0; #X connect 25 0 10 0; #X connect 26 0 10 0; #X connect 27 0 28 0; #X connect 28 0 10 0; #X connect 29 0 26 0; #X connect 30 0 1 0; #X connect 31 0 2 0; #X connect 36 0 2 0; #X connect 38 0 37 0; #X connect 39 0 38 1; #X connect 40 0 39 0; #X connect 42 0 38 0; #X connect 43 0 38 0; #X connect 44 0 38 0; #X connect 45 0 38 0; #X connect 55 0 10 0; #X connect 57 0 10 0; #X connect 58 0 57 0; #X connect 61 0 62 0; #X connect 63 0 61 0; #X connect 65 0 5 0; #X connect 66 0 5 0; #X connect 76 0 83 0; #X connect 77 0 83 0; #X connect 78 0 83 0; #X connect 79 0 78 0; #X connect 80 0 83 0; #X connect 83 0 81 0;
--- mtx_special.pd DELETED ---
--- mtx_binops.pd DELETED ---
--- NEW FILE: mtx_eye-help.pd --- #N canvas 61 0 491 290 10; #X text 295 230 updated for; #X obj 383 230 iemmatrix 0.2; #X text 30 89 create an identity matrix; #X obj 432 256 matrix; #X text 302 255 see also help for; #X obj 103 201 mtx_eye 5; #X obj 103 227 mtx_print; #X msg 103 130 bang; #X msg 133 174 3 5; #X msg 119 150 10; #X text 79 246 identity matrix; #X text 129 20 [mtx_eye]; #X connect 5 0 6 0; #X connect 7 0 5 0; #X connect 8 0 5 0; #X connect 9 0 5 0;
--- NEW FILE: mtx_abs-help.pd --- #N canvas 128 118 680 254 10; #X text 458 17 updated for; #X obj 546 17 iemmatrix 0.2; #X text 136 10 absolute value of matrix elements; #X obj 595 43 matrix; #X text 465 42 see also help for; #X obj 48 100 mtx 3 3; #X text 45 42 compute the absolute value of each element of a matrix ; #X obj 595 63 abs; #X obj 48 164 mtx_abs; #X obj 48 192 mtx_print abs; #X obj 48 131 t a a; #X obj 91 132 mtx_print org; #X msg 48 80 0 1 -2 -3 -4 5 -6 7 8; #X connect 5 0 10 0; #X connect 8 0 9 0; #X connect 10 0 8 0; #X connect 10 1 11 0; #X connect 12 0 5 0;
--- matrix.pd DELETED ---
--- NEW FILE: mtx_add-help.pd --- #N canvas 363 101 450 300 10; #X text 255 30 updated for; #X obj 343 30 iemmatrix 0.2; #X obj 392 56 matrix; #X text 262 55 see also help for; #X text 8 42 matrix arithmetic: adding; #X obj 46 176 mtx_add; #X obj 125 177 mtx_+; #X obj 123 147 mtx_diag 1 2 3 4 5; #X obj 46 147 mtx_ones 5; #X obj 46 124 t b b; #X obj 46 198 mtx_print; #X msg 46 105 bang; #X text 100 178 ==; #X obj 263 147 mtx_eye 4; #X obj 263 172 mtx_add 10; #X msg 263 120 bang; #X obj 263 199 mtx_print; #X floatatom 332 104 4 0 0 0 - - -; #X obj 332 122 t b f; #X obj 360 172 mtx_+ 10; #X text 339 173 ==; #X text 38 227 add 2 matrices; #X text 232 231 add an offset to a matrix; #X obj 17 23 mtx_add; #X obj 81 23 mtx_+; #X obj 392 77 +; #X connect 5 0 10 0; #X connect 7 0 5 1; #X connect 8 0 5 0; #X connect 9 0 8 0; #X connect 9 1 7 0; #X connect 11 0 9 0; #X connect 13 0 14 0; #X connect 14 0 16 0; #X connect 15 0 13 0; #X connect 17 0 18 0; #X connect 18 0 13 0; #X connect 18 1 14 1;
--- mtx_log.pd DELETED ---
--- mtx_inverse.pd DELETED ---
--- mtx_rand.pd DELETED ---
--- NEW FILE: mtx_check.pd --- #N canvas 161 60 833 321 10; #X text 578 18 updated for; #X obj 666 18 iemmatrix 0.2; #X obj 715 44 matrix; #X text 585 43 see also help for; #X obj 86 294 mtx_print; #X obj 121 23 mtx_check; #X text 223 24 check (and fix) a matrix for validity; #X obj 86 242 mtx_check; #X text 83 107 check a matrix-message; #X msg 133 169 matrix 3 3 2; #X obj 488 254 mtx_int; #X msg 86 131 matrix 2 2 0 1 2 3; #X text 221 132 legal matrix message: [2x2] matrix with elements "0 1 , 2 3"; #X text 233 163 this message is illegal: [3x3] matrix , the only element of which is "2"; #X obj 638 273 mtx_int; #X obj 638 251 mtx_check; #X obj 488 279 mtx_print illegal; #X obj 638 297 mtx_print legalizeIt; #X msg 488 228 matrix 3 3 2; #X msg 638 227 matrix 3 3 2; #X text 65 44 illegal matrix-message are fixed by zero-padding (if too few elements are given) , or truncation (if too many elements are given); #X msg 132 201 matrix 2 2 0 1 2 3 4 5 6; #X text 308 201 illegal too: too many elements are given; #X obj 86 267 t a a; #X obj 126 267 print fixed; #X connect 7 0 23 0; #X connect 9 0 7 0; #X connect 10 0 16 0; #X connect 11 0 7 0; #X connect 14 0 17 0; #X connect 15 0 14 0; #X connect 18 0 10 0; #X connect 19 0 15 0; #X connect 21 0 7 0; #X connect 23 0 4 0; #X connect 23 1 24 0;
--- NEW FILE: mtx_cos-help.pd --- #N canvas 128 118 680 254 10; #X text 458 17 updated for; #X obj 546 17 iemmatrix 0.2; #X obj 595 43 matrix; #X text 465 42 see also help for; #X obj 595 63 cos; #X obj 48 164 mtx_cos; #X obj 48 192 mtx_print cos; #X obj 48 131 t a a; #X obj 91 132 mtx_print org; #X text 136 10 cosine of matrix elements; #X text 45 42 compute the cosine of each element of a matrix; #X obj 48 100 mtx 2 2; #X msg 48 80 0 3.14159 1 90; #X connect 5 0 6 0; #X connect 7 0 5 0; #X connect 7 1 8 0; #X connect 11 0 7 0; #X connect 12 0 11 0;
--- NEW FILE: mtx_size-help.pd --- #N canvas 161 60 453 283 10; #X text 108 233 updated for; #X obj 196 233 iemmatrix 0.2; #X obj 245 259 matrix; #X text 115 258 see also help for; #X floatatom 151 178 4 0 0 0 - - -; #X text 148 68 get the size of a matrix; #X obj 151 140 mtx_size; #X msg 185 91 3 2; #X msg 151 91 7; #X obj 151 115 mtx_ones; #X floatatom 194 178 4 0 0 0 - - -; #X text 192 194 columns; #X text 152 195 rows; #X obj 150 22 mtx_size; #X text 223 24 get the size of a matrix; #X connect 6 0 4 0; #X connect 6 1 10 0; #X connect 7 0 9 0; #X connect 8 0 9 0; #X connect 9 0 6 0;
--- NEW FILE: mtx_log-help.pd --- #N canvas 128 118 687 471 10; #X text 188 7 natural logarithm of matrix-elements; #X text 458 17 updated for; #X obj 546 17 iemmatrix 0.2; #X obj 595 43 matrix; #X text 465 42 see also help for; #X obj 181 100 mtx_eye; #X obj 48 100 mtx 3 3; #X msg 48 80 0 1 2 3 4 5 6 7 8; #X obj 64 285 mtx_rand 4 2; #X msg 64 263 bang; #X obj 64 307 t a a; #X obj 105 307 mtx_print org; #X obj 64 357 t a a; #X text 45 42 compute the natural lograithm of each element of a matrix ; #X obj 48 134 mtx_log; #X obj 48 162 mtx_print logarithm; #X obj 64 330 mtx_log; #X obj 64 380 mtx_exp; #X obj 105 357 mtx_print log; #X obj 64 407 mtx_print exp; #X msg 181 79 3 3; #X obj 595 63 mtx_exp; #X obj 595 83 log; #X connect 5 0 14 0; #X connect 6 0 14 0; #X connect 7 0 6 0; #X connect 8 0 10 0; #X connect 9 0 8 0; #X connect 10 0 16 0; #X connect 10 1 11 0; #X connect 12 0 17 0; #X connect 12 1 18 0; #X connect 14 0 15 0; #X connect 16 0 12 0; #X connect 17 0 19 0; #X connect 20 0 5 0;
--- NEW FILE: mtx_ones-help.pd --- #N canvas 61 0 491 290 10; #X text 295 230 updated for; #X obj 383 230 iemmatrix 0.2; #X obj 432 256 matrix; #X text 302 255 see also help for; #X obj 103 201 mtx_ones 5; #X obj 103 227 mtx_print; #X msg 103 130 bang; #X msg 133 174 3 5; #X msg 119 150 10; #X text 129 20 [mtx_ones]; #X text 30 89 create a matrix with all elements := 1; #X text 74 248 all matrix elements=1; #X connect 4 0 5 0; #X connect 6 0 4 0; #X connect 7 0 4 0; #X connect 8 0 4 0;
--- NEW FILE: mtx_trace-help.pd --- #N canvas 108 140 615 247 10; #X text 360 64 updated for; #X obj 448 64 iemmatrix 0.2; #X text 83 25 get the trace of a matrix; #X obj 84 106 mtx_ones 7; #X msg 84 83 bang; #X obj 84 147 mtx_trace; #X floatatom 84 189 4 0 0 0 - - -; #X text 86 68 get trace of a matrix; #X text 81 204 trace = sum(diagonal elements); #X obj 497 90 matrix; #X text 367 89 see also help for; #X obj 498 114 mtx_diag; #X connect 3 0 5 0; #X connect 4 0 3 0; #X connect 5 0 6 0;
--- mtx_trace.pd DELETED ---
--- NEW FILE: mtx_binops-help.pd --- #N canvas 79 32 976 685 10; #X obj 87 360 mtx_mul; #X obj 157 360 mtx_*; #X obj 88 163 mtx_add; #X obj 167 166 mtx_+; #X obj 155 134 mtx_diag 1 2 3 4 5; #X obj 88 134 mtx_ones 5; #X obj 88 111 t b b; #X obj 88 185 mtx_print; #X msg 88 92 bang; #X text 142 165 ==; #X obj 305 134 mtx_eye 4; #X obj 305 159 mtx_add 10; #X msg 305 107 bang; #X obj 305 186 mtx_print; #X floatatom 374 101 4 0 0 0 - - -; #X obj 374 119 t b f; #X obj 392 160 mtx_+ 10; #X text 371 161 ==; #X obj 87 394 mtx_print; #X msg 87 270 bang; #X obj 133 332 mtx_diag 1 2; #X obj 87 297 t b b; #X obj 87 332 mtx_+ 3; #X text 137 361 ==; #X obj 87 314 mtx_eye 3 2; #X obj 249 399 mtx_print; #X obj 249 292 t b f; #X floatatom 249 274 4 0 0 0 - - -; #X msg 249 315 4 2 1 3; #X obj 249 335 mtx_diag; #X obj 249 363 mtx_mul 2; #X obj 328 363 mtx_* 2; #X obj 393 363 mtx_.* 2; #X text 310 363 ==; #X text 376 364 ==; #X obj 522 366 mtx_.*; #X obj 522 401 mtx_print; #X obj 522 304 mtx_diag 1 2 3; #X obj 553 322 mtx_ones 3; #X obj 522 283 t b b; #X msg 522 264 bang; #X obj 553 341 mtx_* 2; #X text 80 214 add 2 matrices; #X text 274 218 add an offset to a matrix; #X text 70 423 multiply 2 matrices; #X text 245 422 multiply a matrix with a scalar; #X text 506 425 multiply 2 matrices element by element; #X text 50 24 matrix arithmetic; #X obj 88 599 mtx_print; #X obj 88 492 t b f; #X floatatom 88 474 4 0 0 0 - - -; #X msg 88 515 4 2 1 3; #X obj 88 535 mtx_diag; #X obj 323 600 mtx_print; #X obj 323 503 mtx_diag 1 2 3; #X obj 354 521 mtx_ones 3; #X obj 354 540 mtx_* 2; #X text 44 622 divide a matrix by a scalar; #X obj 88 563 mtx_./ 2; #X obj 323 565 mtx_./; #X text 267 624 divide 2 matrices element by element; #X obj 323 482 t b b f; #X floatatom 323 463 4 0 0 0 - - -; #X obj 550 141 mtx_diag 1 2 3 4 5; #X obj 483 141 mtx_ones 5; #X obj 483 118 t b b; #X obj 483 192 mtx_print; #X msg 483 99 bang; #X text 537 172 ==; #X obj 700 141 mtx_eye 4; #X msg 700 114 bang; #X obj 700 193 mtx_print; #X floatatom 769 108 4 0 0 0 - - -; #X obj 769 126 t b f; #X text 762 168 ==; #X obj 483 170 mtx_sub; #X obj 562 173 mtx_-; #X obj 779 169 mtx_sub 10; #X obj 700 166 mtx_- 10; #X text 481 221 subtract 2 matrices; #X text 669 225 subtract an offset from a matrix; #X text 600 27 part of iemmatrix; #X obj 737 28 iemmatrix; #X obj 568 609 mtx_print; #X obj 568 502 t b f; #X floatatom 568 484 4 0 0 0 - - -; #X msg 568 525 4 2 1 3; #X obj 568 545 mtx_diag; #X obj 763 610 mtx_print; #X obj 763 513 mtx_diag 1 2 3; #X obj 794 531 mtx_ones 3; #X obj 794 550 mtx_* 2; #X obj 763 492 t b b f; #X floatatom 763 473 4 0 0 0 - - -; #X obj 568 573 mtx_.^ 2; #X obj 763 575 mtx_.^; #X text 546 638 matrix-elements^f; #X text 720 636 elementA(i , j)^elementB(i , j); #X connect 0 0 18 0; #X connect 2 0 7 0; #X connect 4 0 2 1; #X connect 5 0 2 0; #X connect 6 0 5 0; #X connect 6 1 4 0; #X connect 8 0 6 0; #X connect 10 0 11 0; #X connect 11 0 13 0; #X connect 12 0 10 0; #X connect 14 0 15 0; #X connect 15 0 10 0; #X connect 15 1 11 1; #X connect 19 0 21 0; #X connect 20 0 0 1; #X connect 21 0 24 0; #X connect 21 1 20 0; #X connect 22 0 0 0; #X connect 24 0 22 0; #X connect 26 0 28 0; #X connect 26 1 30 1; #X connect 27 0 26 0; #X connect 28 0 29 0; #X connect 29 0 30 0; #X connect 30 0 25 0; #X connect 35 0 36 0; #X connect 37 0 35 0; #X connect 38 0 41 0; #X connect 39 0 37 0; #X connect 39 1 38 0; #X connect 40 0 39 0; #X connect 41 0 35 1; #X connect 49 0 51 0; #X connect 49 1 58 1; #X connect 50 0 49 0; #X connect 51 0 52 0; #X connect 52 0 58 0; #X connect 54 0 59 0; #X connect 55 0 56 0; #X connect 56 0 59 1; #X connect 58 0 48 0; #X connect 59 0 53 0; #X connect 61 0 54 0; #X connect 61 1 55 0; #X connect 61 2 56 1; #X connect 62 0 61 0; #X connect 63 0 75 1; #X connect 64 0 75 0; #X connect 65 0 64 0; #X connect 65 1 63 0; #X connect 67 0 65 0; #X connect 69 0 78 0; #X connect 70 0 69 0; #X connect 72 0 73 0; #X connect 73 0 69 0; #X connect 73 1 78 1; #X connect 75 0 66 0; #X connect 78 0 71 0; #X connect 84 0 86 0; #X connect 84 1 94 1; #X connect 85 0 84 0; #X connect 86 0 87 0; #X connect 87 0 94 0; #X connect 89 0 95 0; #X connect 90 0 91 0; #X connect 91 0 95 1; #X connect 92 0 89 0; #X connect 92 1 90 0; #X connect 92 2 91 1; #X connect 93 0 92 0; #X connect 94 0 83 0; #X connect 95 0 88 0;
--- NEW FILE: mtx_minmax-help.pd --- #N canvas 161 60 480 312 10; #X text 89 244 updated for; #X obj 177 244 iemmatrix 0.2; #X obj 226 270 matrix; #X text 96 269 see also help for; #X msg 136 83 3 5; #X obj 121 23 mtx_minmax; #X text 223 24 get minimum/maximum of matrix; #X obj 136 186 print min; #X obj 201 186 print max; #X obj 136 106 mtx_rand; #X obj 136 130 t a a; #X obj 176 130 mtx_print; #X text 133 67 get min/max of a matrix; #X obj 136 152 mtx_minmax; #X connect 4 0 9 0; #X connect 9 0 10 0; #X connect 10 0 13 0; #X connect 10 1 11 0; #X connect 13 0 7 0; #X connect 13 1 8 0;
--- NEW FILE: mtx_pow-help.pd --- #N canvas 17 -32 450 300 10; #X text 255 30 updated for; #X obj 343 30 iemmatrix 0.2; #X obj 392 56 matrix; #X text 262 55 see also help for; #X obj 56 251 mtx_print; #X obj 56 144 t b f; #X floatatom 56 126 4 0 0 0 - - -; #X msg 56 167 4 2 1 3; #X obj 56 187 mtx_diag; #X obj 251 252 mtx_print; #X obj 251 155 mtx_diag 1 2 3; #X obj 282 173 mtx_ones 3; #X obj 282 192 mtx_* 2; #X obj 251 134 t b b f; #X floatatom 251 115 4 0 0 0 - - -; #X obj 56 215 mtx_.^ 2; #X obj 251 217 mtx_.^; #X text 34 280 matrix-elements^f; #X text 208 278 elementA(i , j)^elementB(i , j); #X text 8 42 matrix arithmetic: power; #X obj 392 77 pow; #X obj 17 23 mtx_.^; #X connect 5 0 7 0; #X connect 5 1 15 1; #X connect 6 0 5 0; #X connect 7 0 8 0; #X connect 8 0 15 0; #X connect 10 0 16 0; #X connect 11 0 12 0; #X connect 12 0 16 1; #X connect 13 0 10 0; #X connect 13 1 11 0; #X connect 13 2 12 1; #X connect 14 0 13 0; #X connect 15 0 4 0; #X connect 16 0 9 0;
--- NEW FILE: mtx_row-help.pd --- #N canvas 136 41 544 373 10; #X text 276 28 updated for; #X obj 364 28 iemmatrix 0.2; #X obj 413 54 matrix; #X text 283 53 see also help for; #X obj 413 96 mtx_col; #X obj 89 32 mtx_row; #X text 19 9 set rows of a matrix; #X obj 53 259 mtx_print; #X obj 64 217 mtx_ones 5 3; #X msg 64 198 bang; #X obj 53 240 mtx_row 4 3; #X msg 182 195 0; #X text 213 195 set all rows; #X msg 174 173 2; #X text 214 170 set row [2]; #X msg 53 146 -1 2 3 4 5; #X text 133 242 creation: mtx_row [<row> <col> [<posR>]]; #X text 55 129 set matrix rows; #X obj 413 76 mtx_element; #X connect 8 0 10 0; #X connect 9 0 8 0; #X connect 10 0 7 0; #X connect 11 0 10 1; #X connect 13 0 10 1; #X connect 15 0 10 0;
--- NEW FILE: mtx_mul~-help.pd --- #N canvas 48 0 889 615 12; #X obj 116 339 osc~ 100; #X obj 116 360 *~ 0.2; #X obj 166 381 osc~ 1000; #X obj 166 403 *~ 1.5; #X obj 212 356 osc~ 432; #X obj 68 471 env~; #X floatatom 68 495 4 0 0 0 - - -; #X obj 127 470 env~; #X floatatom 127 494 4 0 0 0 - - -; #X obj 187 470 env~; #X floatatom 187 494 4 0 0 0 - - -; #X floatatom 286 402 4 0 0 0 - - -; #X text 332 413 fade time in [ms]; #X msg 48 140 bang; #X msg 170 140 bang; #X msg 69 219 bang; #X msg 190 218 bang; #X text 174 24 matrix-multiply m IN~signals to n OUT~signals; #X text 173 41 matrices are interpolated a la line~; #X text 304 170 matrix-messages to control the gains; #X text 303 183 of the matrix~; #X text 334 380 the last inlet gets the fade-time between two matrix-messages. ; #X obj 98 32 mtx_*~; #X obj 69 431 mtx_*~ 4 3 100 .......; #X obj 253 471 env~; #X floatatom 253 495 4 0 0 0 - - -; #X obj 69 301 t a; #X obj 70 539 mtx_*~; #X text 147 536 creation: "mtx_*~ [<#out> [<#in> [<fade_time>] [<...>]] ; #X text 302 154 the first inlet eats; #X text 316 314 the 2nd...one-before-last inlets get the signals to be multiplied.; #X text 328 487 Output signals; #X text 207 68 OUT~^ = A * IN~^; #X obj 48 167 mtx_eye 4 3; #X obj 170 167 mtx_egg 4 3; #X obj 190 245 mtx_zeros 4 3; #X obj 69 246 mtx_ones 4 3; #X msg 699 33 ; pd dsp 1; #X text 127 96 or , with dimensions: OUT~^[1*n] = A[n*m] * IN~^[m*1] ; #N canvas 34 69 925 425 LEGACY 0; #X obj 51 160 sig~; #X floatatom 180 166 5 0 0 0 - - -; #X text 286 127 this object , accepted the signals at the first inputs , then the matrix (and finally the fade-time); #X text 295 163 OUT~^[n] = IN~^[m] * B[m*x]; #X obj 192 307 sig~; #X msg 97 303 time 100; #X obj 93 160 sig~; #X obj 50 188 matrix~ 2 3 100; #X obj 136 138 mtx 2 3; #X obj 25 346 matrix_mul_line~ 2 3 100; #X obj 235 307 sig~; #X text 288 262 this object , accepted the signals at the inlets ; all! messages went to the 1st inlet; #X obj 25 304 mtx 3 2; #X text 297 298 OUT~^[n] = B[n*m] * IN~^[m]; #X text 288 183 this is a _very_ unusual way to notate signal matrix multiplications; #X text 290 318 this conforms to the way how signal matrix multiplications is usually notated , however , we didn't like that the incoming matrix had different dimensions than the object ([mtx N M] vs [matrix_mul_line~ M N]) ; and the 1st inlet was a bit overloaded.; #X text 84 18 [mtx_*~] is the successor of 2 similar objects , which we believe to have had some design flaws:; #X connect 0 0 7 0; #X connect 1 0 7 3; #X connect 4 0 9 0; #X connect 5 0 9 0; #X connect 6 0 7 1; #X connect 8 0 7 2; #X connect 10 0 9 1; #X connect 12 0 9 0; #X restore 231 585 pd LEGACY; #X connect 0 0 1 0; #X connect 1 0 23 1; #X connect 2 0 3 0; #X connect 3 0 23 2; #X connect 4 0 23 3; #X connect 5 0 6 0; #X connect 7 0 8 0; #X connect 9 0 10 0; #X connect 11 0 23 4; #X connect 13 0 33 0; #X connect 14 0 34 0; #X connect 15 0 36 0; #X connect 16 0 35 0; #X connect 23 0 5 0; #X connect 23 1 7 0; #X connect 23 2 9 0; #X connect 23 3 24 0; #X connect 24 0 25 0; #X connect 26 0 23 0; #X connect 33 0 26 0; #X connect 34 0 26 0; #X connect 35 0 26 0; #X connect 36 0 26 0;
--- NEW FILE: mtx_scroll-help.pd --- #N canvas 83 78 670 283 10; #X text 458 17 updated for; #X obj 546 17 iemmatrix 0.2; #X obj 595 43 matrix; #X text 465 42 see also help for; #X text 194 36 tranpose matrices; #X text 198 15 [mtx_scroll]; #X obj 194 162 t a a; #X obj 236 163 mtx_print org; #X obj 194 220 mtx_print scrolled; #X obj 194 192 mtx_scroll 1; #X msg 194 116 1 2 3 4 5; #X text 190 99 shift rows of a matrix; #X floatatom 301 191 4 0 6 1 shift - -; #X obj 194 138 mtx_diag; #X text 380 179 (0=no-shift ; 1=1-row-down ; -2=2-rows-up ; ...) ; #X connect 6 0 9 0; #X connect 6 1 7 0; #X connect 9 0 8 0; #X connect 10 0 13 0; #X connect 12 0 9 1; #X connect 13 0 6 0;
--- NEW FILE: matrix~-help.pd --- #N canvas 59 -12 889 589 12; #X obj 68 271 osc~ 100; #X obj 68 297 *~ 0.2; #X obj 112 320 osc~ 1000; #X obj 112 346 *~ 1.5; #X obj 157 295 osc~ 432; #X obj 68 411 env~; #X floatatom 68 435 4 0 0; #X obj 127 410 env~; #X floatatom 127 434 4 0 0; #X obj 187 410 env~; #X floatatom 187 434 4 0 0; #X obj 247 409 env~; #X floatatom 247 433 4 0 0; #X floatatom 284 350 4 0 0; #X text 332 353 fade time in [ms]; #X msg 265 100 bang; #X obj 265 127 mtx_eye 3 4; #X msg 362 100 bang; #X obj 362 127 mtx_egg 3 4; #X msg 261 179 bang; #X msg 362 178 bang; #X obj 261 206 mtx_ones 3 4; #X obj 362 205 mtx_zeros 3 4; #X obj 68 371 matrix~ 3 4 100 .......; #X obj 98 32 matrix~; #X text 174 24 matrix-multiply m IN~signals to n OUT~signals; #X text 174 37 matrices are interpolated a la line~; #X text 473 91 the one-before-last inlet eats; #X text 476 104 matrix-messages to control the gains; #X text 475 117 of the matrix~; #X text 484 333 the last inlet gets the fade-time between two matrix-messages. ; #X obj 78 505 matrix~; #X text 154 503 creation: "matrix~ [<num_in> [<num_out> [<fade_time>]]] ; #X connect 0 0 1 0; #X connect 1 0 23 0; #X connect 2 0 3 0; #X connect 3 0 23 1; #X connect 4 0 23 2; #X connect 5 0 6 0; #X connect 7 0 8 0; #X connect 9 0 10 0; #X connect 11 0 12 0; #X connect 13 0 23 4; #X connect 15 0 16 0; #X connect 16 0 23 3; #X connect 17 0 18 0; #X connect 18 0 23 3; #X connect 19 0 21 0; #X connect 20 0 22 0; #X connect 21 0 23 3; #X connect 22 0 23 3; #X connect 23 0 5 0; #X connect 23 1 7 0; #X connect 23 2 9 0; #X connect 23 3 11 0;
--- mtx_dbtorms.pd DELETED ---
--- NEW FILE: mtx_zeros-help.pd --- #N canvas 61 0 491 290 10; #X text 295 230 updated for; #X obj 383 230 iemmatrix 0.2; #X obj 432 256 matrix; #X text 302 255 see also help for; #X obj 103 201 mtx_zeros 5; #X obj 103 227 mtx_print; #X msg 103 130 bang; #X msg 133 174 3 5; #X msg 119 150 10; #X text 129 20 [mtx_zeros]; #X text 30 89 create a matrix with all elements := 0; #X text 74 248 all matrix elements=0; #X connect 4 0 5 0; #X connect 6 0 4 0; #X connect 7 0 4 0; #X connect 8 0 4 0;
--- NEW FILE: mtx_sin-help.pd --- #N canvas 128 118 680 254 10; #X text 458 17 updated for; #X obj 546 17 iemmatrix 0.2; #X obj 595 43 matrix; #X text 465 42 see also help for; #X obj 48 131 t a a; #X obj 91 132 mtx_print org; #X obj 48 100 mtx 2 2; #X msg 48 80 0 3.14159 1 90; #X text 136 11 sine of matrix elements; #X text 45 42 compute the sine of each element of a matrix; #X obj 48 192 mtx_print sin; #X obj 48 164 mtx_sin; #X obj 595 63 sin; #X connect 4 0 11 0; #X connect 4 1 5 0; #X connect 6 0 4 0; #X connect 7 0 6 0; #X connect 11 0 10 0;
--- NEW FILE: mtx_mean-help.pd --- #N canvas 128 104 450 300 10; #X text 228 47 updated for; #X obj 316 47 iemmatrix 0.2; #X obj 365 73 matrix; #X text 235 72 see also help for; #X obj 57 176 mtx_mean; #X obj 57 231 print mean_row; #X obj 57 106 mtx_rand; #X msg 57 82 4 5; #X text 55 259 get the mean value of each column; #X obj 57 127 t a a; #X obj 87 148 mtx_print org; #X text 56 11 mean values of a matrix; #X connect 4 0 5 0; #X connect 6 0 9 0; #X connect 7 0 6 0; #X connect 9 0 4 0; #X connect 9 1 10 0;
--- NEW FILE: mtx_col-help.pd --- #N canvas 136 41 544 373 10; #X text 276 28 updated for; #X obj 364 28 iemmatrix 0.2; #X obj 413 54 matrix; #X text 283 53 see also help for; #X obj 413 96 mtx_col; #X obj 89 32 mtx_col; #X obj 53 259 mtx_print; #X obj 64 217 mtx_ones 5 3; #X msg 64 198 bang; #X obj 53 240 mtx_col 4 3; #X msg 182 195 0; #X msg 174 173 2; #X msg 53 146 -1 2 3 4 5; #X text 133 242 creation: mtx_col [<col> <col> [<posR>]]; #X obj 413 76 mtx_element; #X text 19 9 set columns of a matrix; #X text 55 129 set matrix columns; #X text 214 170 set column [2]; #X text 213 195 set all columns; #X connect 7 0 9 0; #X connect 8 0 7 0; #X connect 9 0 6 0; #X connect 10 0 9 1; #X connect 11 0 9 1; #X connect 12 0 9 0;
--- mtx_rmstodb.pd DELETED ---
--- NEW FILE: mtx_distance2-help.pd --- #N canvas 83 338 696 369 10; #X obj 33 242 mtx_distance2; #X obj 33 267 mtx_print distances; #X obj 119 179 t a a; #X obj 149 198 mtx_print B; #X obj 33 179 t a a; #X obj 63 198 mtx_print A; #X obj 33 106 t b b; #X msg 33 85 bang; #X obj 33 132 mtx_rand 4 3; #X obj 119 154 mtx_rand 2 3; #X text 44 34 [mtx_distance2]; #X text 482 28 part of iemmatrix; #X text 268 138 inletA: a matrix defining <i> vectors of dimension <n>; #X text 268 158 inletB: a matrix defining <j> vectors of dimension <n>; #X text 267 179 outlet: distance matrix (i , j) , where each element Y(i , j)=(A(i)-B(i)).(A(i)-B(i))=|A(i)-B(i)|^2; #X text 166 69 calculate the (square of the) euclidian distance between two sets of vectors.; #X text 233 274 note: if you want the real-distance (non-squared) , calculate the square-root with [mtx_.^ 0.5]; #X connect 0 0 1 0; #X connect 2 0 0 1; #X connect 2 1 3 0; #X connect 4 0 0 0; #X connect 4 1 5 0; #X connect 6 0 8 0; #X connect 6 1 9 0; #X connect 7 0 6 0; #X connect 8 0 4 0; #X connect 9 0 2 0;
--- NEW FILE: mtx_resize-help.pd --- #N canvas 161 60 833 285 10; #X obj 121 23 mtx_resize; #X text 578 18 updated for; #X obj 666 18 iemmatrix 0.2; #X obj 715 44 matrix; #X text 585 43 see also help for; #X text 223 24 resize a matrix; #X obj 136 244 mtx_print; #X obj 136 106 mtx_ones; #X msg 136 83 3 5; #X obj 136 222 mtx_resize; #X text 133 67 resize a matrix; #X msg 245 91 3 2; #X msg 244 119 2 0; #X msg 241 174 0 0; #X text 285 92 resize to [3 , 2]; #X text 285 120 resize to 2 rows , leave row-length unchanged; #X text 284 174 don't resize; #X text 209 222 creation: mtx_resize [<rows> [<cols>]]; #X msg 243 146 0 4; #X text 285 145 resize to 4 columns , leave column-length unchanged ; #X msg 242 199 8; #X text 274 199 resize to [8 , 8]; #X connect 7 0 9 0; #X connect 8 0 7 0; #X connect 9 0 6 0; #X connect 11 0 9 1; #X connect 12 0 9 1; #X connect 13 0 9 1; #X connect 18 0 9 1; #X connect 20 0 9 1;
--- NEW FILE: mtx_dbtorms-help.pd --- #N canvas 337 124 687 471 10; #X text 188 7 convert dB(pd) to rms; #X text 458 17 updated for; #X obj 546 17 iemmatrix 0.2; #X obj 181 100 mtx_eye; #X obj 64 285 mtx_rand 4 2; #X msg 64 263 bang; #X obj 64 307 t a a; #X obj 105 307 mtx_print org; #X obj 64 357 t a a; #X msg 181 79 3 3; #X obj 48 134 mtx_dbtorms; #X obj 64 380 mtx_dbtorms; #X obj 599 71 mtx_rmstodb; #X obj 599 91 dbtorms; #X obj 181 121 mtx_* 100; #X obj 48 162 mtx_print dbtorms; #X obj 64 330 mtx_rmstodb; #X obj 105 357 mtx_print db; #X obj 64 407 mtx_print db; #X obj 48 100 mtx 2 2; #X text 44 34 convert dB(pd) to a linear value for each element of a matrix; #X text 290 305 note: dB(pd):=dB(techn)+100; #X text 307 337 this means: 100dB(pd)==unity gain (==1); #X text 404 375 0dB(pd)==zero gain (==0); #X msg 48 80 0 100 97 106; #X text 391 354 106dB(pd)~=double gain (==2); #X obj 595 43 matrix; #X text 465 42 see also help for; #X connect 3 0 14 0; #X connect 4 0 6 0; #X connect 5 0 4 0; #X connect 6 0 16 0; #X connect 6 1 7 0; #X connect 8 0 11 0; #X connect 8 1 17 0; #X connect 9 0 3 0; #X connect 10 0 15 0; #X connect 11 0 18 0; #X connect 14 0 10 0; #X connect 16 0 8 0; #X connect 19 0 10 0; #X connect 24 0 19 0;
--- matrix~.pd DELETED ---
--- mtx_distance2.pd DELETED ---