#N canvas 817 45 843 799 10; #X obj 167 310 t a; #X obj 167 32 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 -1; #X msg 239 84 reset; #X obj 52 15 loadbang; #X text 205 33 reset; #X obj 167 55 t b b b b b; #X obj 52 572 msd2D --------------------------------; #X msg 460 409 0 \, destroy; #X obj 458 500 gemhead; #X obj 458 553 world_light; #X obj 52 301 t b; #N canvas 637 205 605 590 massrender 0; #X obj 124 5 inlet; #X obj 291 245 translateXYZ; #X obj 307 156 gemhead; #X obj 291 219 separator; #X obj 291 195 any; #X obj 292 63 unpack f f f; #X obj 57 257 translateXYZ; #X obj 73 168 gemhead; #X obj 57 231 separator; #X obj 57 207 any; #X obj 123 31 route 0 1; #X obj 296 118 t b; #X obj 64 71 unpack f f; #X obj 50 116 t b f; #X obj 168 262 translateXYZ; #X obj 184 173 gemhead; #X obj 168 236 separator; #X obj 168 212 any; #X obj 175 76 unpack f f; #X obj 161 121 t b f; #X obj 169 290 color 1 0 0; #X obj 292 291 color 1 1 1; #X obj 57 315 sphere 0.3 20; #X obj 292 319 square 0.015; #X obj 168 320 square 0.04; #X text 61 351 Sun; #X text 169 355 Red particule; #X text 307 355 Particule; #X connect 0 0 10 0; #X connect 1 0 21 0; #X connect 2 0 4 1; #X connect 3 0 1 0; #X connect 4 0 3 0; #X connect 5 0 11 0; #X connect 5 1 1 1; #X connect 5 2 1 2; #X connect 6 0 22 0; #X connect 7 0 9 1; #X connect 8 0 6 0; #X connect 9 0 8 0; #X connect 10 0 12 0; #X connect 10 1 18 0; #X connect 10 2 5 0; #X connect 11 0 4 0; #X connect 12 0 13 0; #X connect 12 1 6 2; #X connect 13 0 9 0; #X connect 13 1 6 1; #X connect 14 0 20 0; #X connect 15 0 17 1; #X connect 16 0 14 0; #X connect 17 0 16 0; #X connect 18 0 19 0; #X connect 18 1 14 2; #X connect 19 0 17 0; #X connect 19 1 14 1; #X connect 20 0 24 0; #X connect 21 0 23 0; #X restore 52 648 pd massrender; #X obj 52 278 gemhead; #X obj 460 458 gemwin; #X msg 460 433 view 0 0 4 0 0 0 0 1 0; #X text 501 28 change number of mass to test performance; #X text 501 41 (and reset afterwards); #X obj 441 34 nbx 5 14 1 20000 1 1 empty empty empty 0 -6 0 10 -262144 -1 -1 2291.81 256; #X msg 170 245 Xmax 4 \, Xmin -4 \, Ymax 4 \, Ymin -4; #X msg 119 203 setL sun 0; #X msg 221 107 mass fix 0 100 0 0; #X obj 458 527 rotateXYZ 30 20 0; #X msg 167 178 forceX mob 5; #X text 409 258 0.2 : rigidity \, 0 : damping \, -2 : power \, 0.4 : Lmin; #X msg 460 386 reset \, dimen 800 800 \, create \, lighting 1 \, 1 ; #X msg 52 335 bang \, bang \, get massesPos \, get massesSpeeds; #X obj 52 611 route massesPos massesSpeeds; #X text 358 111 Sun; #X text 267 177 Initial speed; #N canvas 0 0 945 455 masses 0; #X obj 151 16 inlet; #X obj 232 28 inlet; #X obj 151 347 outlet; #X msg 151 282 mass mob 1 \$1 \$2 \$3; #X obj 574 221 random 100; #X obj 499 220 random 100; #X msg 422 197 seed 3; #X obj 151 250 pack f f f; #X obj 151 228 t b b b; #X msg 499 199 seed 20; #X msg 574 201 seed 10; #X obj 422 217 random 10000; #X obj 424 236 / 500; #X obj 500 261 - 1; #X obj 574 263 - 1; #X obj 425 258 + 205; #X obj 499 241 / 10000; #X obj 574 242 / 10000; #X obj 151 47 t b; #X obj 333 52 loadbang; #X text 516 172 X; #X text 434 168 M; #X text 612 173 Y; #X obj 151 67 until; #X obj 151 86 f; #X obj 177 87 + 1; #X obj 177 118 mod 1000; #X obj 206 87 sel 0; #X connect 0 0 18 0; #X connect 1 0 26 1; #X connect 3 0 2 0; #X connect 4 0 17 0; #X connect 5 0 16 0; #X connect 6 0 11 0; #X connect 7 0 3 0; #X connect 8 0 11 0; #X connect 8 1 5 0; #X connect 8 2 4 0; #X connect 9 0 5 0; #X connect 10 0 4 0; #X connect 11 0 12 0; #X connect 12 0 15 0; #X connect 13 0 7 1; #X connect 14 0 7 2; #X connect 15 0 7 0; #X connect 16 0 13 0; #X connect 17 0 14 0; #X connect 18 0 23 0; #X connect 19 0 9 0; #X connect 19 0 10 0; #X connect 19 0 6 0; #X connect 23 0 24 0; #X connect 24 0 25 0; #X connect 24 0 8 0; #X connect 25 0 26 0; #X connect 26 0 27 0; #X connect 26 0 24 1; #X connect 27 0 23 1; #X restore 203 144 pd masses; #X text 410 277 The power of the link is -2 to simulate a gravity field in 1/R^2; #X text 290 147 Particules; #X msg 171 270 link sun fix mob 0.2 0 -2 0.4; #X msg 125 508 forceX mob 1; #X msg 136 534 forceY mob 1; #X connect 0 0 6 0; #X connect 1 0 5 0; #X connect 2 0 0 0; #X connect 3 0 5 0; #X connect 5 0 19 0; #X connect 5 0 22 0; #X connect 5 1 18 0; #X connect 5 1 32 0; #X connect 5 2 29 0; #X connect 5 3 20 0; #X connect 5 4 2 0; #X connect 6 0 26 0; #X connect 7 0 13 0; #X connect 8 0 21 0; #X connect 10 0 25 0; #X connect 12 0 10 0; #X connect 14 0 13 0; #X connect 17 0 29 1; #X connect 18 0 0 0; #X connect 19 0 0 0; #X connect 20 0 0 0; #X connect 21 0 9 0; #X connect 22 0 0 0; #X connect 24 0 13 0; #X connect 25 0 6 0; #X connect 26 0 11 0; #X connect 29 0 0 0; #X connect 32 0 0 0; #X connect 33 0 6 0; #X connect 34 0 6 0;