#N canvas 516 84 620 260 10; #X declare -lib Gem; #X obj 24 54 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262131 -1 -1; #X text 49 54 reset; #N canvas 0 22 610 333 creation_structure 0; #X obj 52 15 loadbang; #X obj 135 20 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262131 -1 -1; #X msg 193 65 reset; #X text 173 21 reset; #N canvas 77 152 608 525 masses 0; #X obj 109 15 inlet; #X obj 112 338 outlet; #X obj 200 343 print; #X obj 112 64 t b b b b; #X obj 150 158 until 17; #X msg 150 184 mass corde 1 50 0; #X msg 112 276 mass zero 0 1 0; #X msg 150 134 80; #X text 232 275 masse nulle pour l'amortissement general; #X text 302 90 extremite gauche no 0; #X text 283 184 masses mobiles no 1->80; #X text 278 220 extremite droite no 81; #X msg 170 89 mass corde 0 100 0; #X msg 131 218 mass corde 0 100 0; #X connect 0 0 3 0; #X connect 3 0 6 0; #X connect 3 1 13 0; #X connect 3 2 7 0; #X connect 3 3 12 0; #X connect 4 0 5 0; #X connect 5 0 1 0; #X connect 6 0 1 0; #X connect 7 0 4 0; #X connect 12 0 1 0; #X connect 13 0 1 0; #X restore 173 87 pd masses; #N canvas 579 114 813 597 link 0; #X obj 157 35 inlet; #X obj 185 490 outlet; #X msg 176 320 link souple \$1 \$2 10 10; #X obj 236 210 + 1; #X obj 176 293 pack f f; #X obj 253 493 print; #X obj 176 241 t f f f; #X obj 176 212 f 0; #X obj 157 64 t b b b b; #X text 305 254 liens entre les masses mobiles; #X text 384 406 tlink qui fait un amortissement vertical general; #X obj 386 323 s rigidite; #X msg 386 300 10; #X msg 157 403 link D2 zero corde 0 0; #X msg 266 169 0; #X obj 203 269 + 1; #X obj 176 188 until; #X floatatom 267 251 5 0 0 0 - - -; #X msg 176 165 81; #X obj 467 324 s amort; #X connect 0 0 8 0; #X connect 2 0 1 0; #X connect 3 0 7 1; #X connect 4 0 2 0; #X connect 6 0 4 0; #X connect 6 1 15 0; #X connect 6 2 3 0; #X connect 7 0 6 0; #X connect 7 0 17 0; #X connect 8 0 12 0; #X connect 8 0 13 0; #X connect 8 1 18 0; #X connect 8 2 14 0; #X connect 12 0 11 0; #X connect 12 0 19 0; #X connect 13 0 1 0; #X connect 14 0 7 1; #X connect 15 0 4 1; #X connect 16 0 7 0; #X connect 18 0 16 0; #X restore 154 111 pd link; #X obj 135 42 t b b b b; #X text 252 82 CREATION : 2 masses fixes (fix) \, 80 mobiles (corde) \, 80 liens (souple) \, 78 tLink (D2); #X msg 135 132 Xmax 100 \, Xmin -100; #X obj 247 23 inlet; #X obj 121 213 loadbang; #X obj 121 237 s load; #X obj 135 160 s \$0-pmpdin; #X connect 0 0 6 0; #X connect 1 0 6 0; #X connect 2 0 12 0; #X connect 4 0 12 0; #X connect 5 0 12 0; #X connect 6 0 8 0; #X connect 6 1 5 0; #X connect 6 2 4 0; #X connect 6 3 2 0; #X connect 8 0 12 0; #X connect 9 0 6 0; #X connect 10 0 11 0; #X restore 24 76 pd creation_structure; #N canvas 508 227 516 328 compute 0; #X obj 27 30 gemhead; #N canvas 735 244 537 479 corde 0; #X obj 139 41 inlet; #X obj 81 333 translateXYZ; #X obj 139 167 / 12.5; #X obj 139 190 - 4; #X obj 81 307 separator; #X obj 139 238 t b f; #X obj 81 273 gemhead 45; #X obj 204 188 / 0.2; #X obj 139 106 unpack f f; #X msg 81 238 0; #X obj 81 213 loadbang; #X obj 81 369 color 1 1 1; #X obj 139 139 + 10; #X obj 81 398 cube 0.02; #X obj 139 80 route 82; #X connect 0 0 14 0; #X connect 1 0 11 0; #X connect 2 0 3 0; #X connect 3 0 5 0; #X connect 4 0 1 0; #X connect 5 0 6 0; #X connect 5 1 1 1; #X connect 6 0 4 0; #X connect 7 0 1 2; #X connect 8 0 12 0; #X connect 8 1 7 0; #X connect 9 0 6 0; #X connect 10 0 9 0; #X connect 11 0 13 0; #X connect 12 0 2 0; #X connect 14 1 8 0; #X restore 27 252 pd corde; #N canvas 643 123 605 590 vitesse 0; #X obj 127 22 inlet; #X obj 62 333 translateXYZ; #X obj 129 200 / 12.5; #X obj 129 223 - 4; #X obj 62 307 separator; #X obj 129 250 t b f; #X obj 62 280 gemhead 45; #X obj 62 398 cube 0.01; #X obj 431 25 inlet; #X obj 236 46 spigot; #X obj 195 216 + 2; #X obj 78 81 route 82; #X obj 129 107 unpack f f; #X obj 62 232 loadbang; #X msg 62 256 0; #X obj 129 172 + 10; #X obj 195 193 * 200; #X obj 62 369 color 1 0 0; #X connect 0 0 9 0; #X connect 1 0 17 0; #X connect 2 0 3 0; #X connect 3 0 5 0; #X connect 4 0 1 0; #X connect 5 0 6 0; #X connect 5 1 1 1; #X connect 6 0 4 0; #X connect 8 0 9 1; #X connect 9 0 11 0; #X connect 10 0 1 2; #X connect 11 1 12 0; #X connect 12 0 15 0; #X connect 12 1 16 0; #X connect 13 0 14 0; #X connect 14 0 6 0; #X connect 15 0 2 0; #X connect 16 0 10 0; #X connect 17 0 7 0; #X restore 121 239 pd vitesse; #X obj 186 219 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 1; #X obj 27 53 t b b b b b b b; #X obj 27 195 route massesPos massesSpeeds massesForces; #X text 208 240 Afficher les vitesses en haut; #X text 310 279 Afficher les forces en bas; #X obj 379 185 inlet; #X obj 355 119 gemhead; #X obj 355 142 world_light; #N canvas 643 123 605 590 forces 0; #X obj 53 99 inlet; #X obj 60 377 translateXYZ; #X obj 139 260 / 12.5; #X obj 139 283 - 4; #X obj 204 261 / 12.5; #X obj 60 351 separator; #X obj 137 310 t b f; #X obj 60 325 gemhead 45; #X obj 60 434 cube 0.02; #X obj 111 99 inlet; #X obj 53 129 spigot; #X obj 60 284 loadbang; #X msg 60 306 0; #X obj 139 207 unpack f f; #X obj 139 232 + 10; #X obj 204 284 - 2; #X obj 53 180 route 0 81 82; #X obj 204 239 * 400; #X obj 60 405 color 0 1 0; #X connect 0 0 10 0; #X connect 1 0 18 0; #X connect 2 0 3 0; #X connect 3 0 6 0; #X connect 4 0 15 0; #X connect 5 0 1 0; #X connect 6 0 7 0; #X connect 6 1 1 1; #X connect 7 0 5 0; #X connect 9 0 10 1; #X connect 10 0 16 0; #X connect 11 0 12 0; #X connect 12 0 7 0; #X connect 13 0 14 0; #X connect 13 1 17 0; #X connect 14 0 2 0; #X connect 15 0 1 2; #X connect 16 3 13 0; #X connect 17 0 4 0; #X connect 18 0 8 0; #X restore 215 278 pd forces; #X msg 27 75 bang \, get massesPos \, get massesSpeeds \, get massesForces ; #X obj 95 100 r \$0-pmpdin; #X obj 27 136 pmpd --------------------------------; #X connect 0 0 4 0; #X connect 3 0 2 1; #X connect 4 0 12 0; #X connect 4 1 14 0; #X connect 4 2 14 0; #X connect 4 3 14 0; #X connect 4 4 14 0; #X connect 4 5 14 0; #X connect 4 6 14 0; #X connect 5 0 1 0; #X connect 5 1 2 0; #X connect 5 2 11 0; #X connect 8 0 11 1; #X connect 8 0 2 1; #X connect 9 0 10 0; #X connect 12 0 14 0; #X connect 13 0 14 0; #X connect 14 0 5 0; #X restore 24 165 pd compute; #X obj 24 143 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 1; #X obj 328 167 hsl 128 15 0 30 0 0 empty empty empty -2 -6 0 8 -262144 -1 -1 0 1; #X obj 331 94 hsl 128 15 0 127 0 0 empty empty empty -2 -6 0 8 -262144 -1 -1 0 1; #N canvas 0 22 450 300 gem 0; #X obj 179 135 gemwin; #X msg 198 113 0 \, destroy; #X msg 179 90 reset \, create \, lighting 1 \, 1; #X obj 179 39 inlet; #X obj 179 68 sel 1 0; #X connect 1 0 0 0; #X connect 2 0 0 0; #X connect 3 0 4 0; #X connect 4 0 2 0; #X connect 4 1 1 0; #X restore 24 118 pd gem; #X obj 24 99 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 1 ; #X text 44 142 display forces (green) and speeds (red); #N canvas 0 22 450 300 forces 0; #X msg 167 134 forceX corde \$1; #X obj 167 89 inlet; #X obj 167 112 / 300; #X obj 167 157 s \$0-pmpdin; #X connect 0 0 3 0; #X connect 1 0 2 0; #X connect 2 0 0 0; #X restore 328 57 pd forces; #X obj 331 35 hsl 128 15 0 127 0 0 empty empty empty -2 -6 0 8 -262144 -1 -1 0 1; #N canvas 0 22 450 300 general_damping 0; #X msg 172 143 setD D2 \$1; #X obj 172 121 / 5; #X obj 173 100 inlet; #X obj 172 166 s \$0-pmpdin; #X connect 0 0 3 0; #X connect 1 0 0 0; #X connect 2 0 1 0; #X restore 325 187 pd general_damping; #X text 324 22 Send forces; #X text 45 98 gem on/off; #X text 24 20 1D string model; #N canvas 873 311 611 439 force2 0; #X obj 174 147 / 120; #X obj 171 43 inlet; #X msg 174 175 41 \$1 \, 42 \$1; #X obj 191 201 / 1.5; #X msg 191 225 39 \$1 \, 40 \$1 \, 43 \$1 \, 44 \$1; #X msg 206 271 36 \$1 \, 37 \$1 \, 38 \$1 \, 45 \$1 \, 46 \$1 \, 47 \$1; #X obj 206 247 / 3; #X obj 175 398 s \$0-pmpdin; #X obj 171 69 t f f; #X obj 174 100 -; #X obj 173 124 * 10; #X msg 174 377 forceX \$1 \$2; #X obj 177 346 pack f f; #X obj 176 301 unpack f f; #X obj 176 325 + 8; #X connect 0 0 2 0; #X connect 0 0 3 0; #X connect 0 0 6 0; #X connect 1 0 8 0; #X connect 2 0 13 0; #X connect 3 0 4 0; #X connect 4 0 13 0; #X connect 5 0 13 0; #X connect 6 0 5 0; #X connect 8 0 9 1; #X connect 8 1 9 0; #X connect 9 0 10 0; #X connect 10 0 0 0; #X connect 11 0 7 0; #X connect 12 0 11 0; #X connect 13 0 14 0; #X connect 13 1 12 1; #X connect 14 0 12 0; #X restore 328 117 pd force2; #X text 324 79 Send forces; #X text 323 150 global damping; #X text 23 196 COPYRIGHT : Nicolas Montgermont 2010; #X obj 178 9 declare -lib Gem; #X connect 0 0 2 0; #X connect 4 0 3 0; #X connect 5 0 12 0; #X connect 6 0 16 0; #X connect 8 0 7 0; #X connect 11 0 10 0;