#N canvas 348 184 717 423 12;
#X declare -lib iemmatrix;
#X obj 93 216 mtx_svd;
#X obj 93 108 mtx_rand;
#X obj 309 275 mtx_transpose;
#X obj 201 273 mtx_diag;
#X obj 93 131 t a a;
#X text 64 24 [mtx_svd] singular value decomposition using gsl;
#X text 353 153 A = U * S * V^T;
#X obj 93 298 mtx_print U;
#X obj 201 299 mtx_print S;
#X obj 309 298 mtx_print V^T;
#X obj 169 155 mtx_print A;
#X msg 93 46 4 3;
#N canvas 460 154 494 201 META 0;
#X text 12 85 OUTLET_0 matrix;
#X text 12 145 HELP_PATCH_AUTHORS IOhannes m zmölnig;
#X text 12 25 LICENSE GPL-2+;
#X text 12 65 INLET_0 matrix;
#X text 12 44 DESCRIPTION singular value decomposition of a matrix;
#X text 11 5 KEYWORDS control matrix math;
#X text 12 125 AUTHOR Franz Zotter;
#X text 12 95 OUTLET_1 list;
#X text 12 105 OUTLET_2 matrix;
#X obj 13 170 declare -lib iemmatrix;
#X restore 501 16 pd META;
#X obj 544 212 mtx_*;
#X obj 512 236 mtx_*;
#X obj 512 259 mtx_-;
#X obj 513 345 mtx_print residual;
#X obj 513 302 mtx_int;
#X obj 513 281 mtx_* 1e+06;
#X obj 513 323 mtx_./ 1e+06;
#X text 242 334 Franz Zotter \, 2009 \, 2023;
#X msg 152 77 3 4;
#X text 189 78 <-not supported;
#X connect 0 0 7 0;
#X connect 0 0 14 0;
#X connect 0 1 3 0;
#X connect 0 2 2 0;
#X connect 1 0 4 0;
#X connect 2 0 9 0;
#X connect 2 0 13 1;
#X connect 3 0 8 0;
#X connect 3 0 13 0;
#X connect 4 0 0 0;
#X connect 4 1 10 0;
#X connect 4 1 15 1;
#X connect 11 0 1 0;
#X connect 13 0 14 1;
#X connect 14 0 15 0;
#X connect 15 0 18 0;
#X connect 17 0 19 0;
#X connect 18 0 17 0;
#X connect 19 0 16 0;
#X connect 21 0 1 0;
