view MechAeolianD3.pd @ 0:12b68fb81455

Demo patch for Aeolian Harp synthesis model
author Rod Selfridge <r.selfridge@qmul.ac.uk>
date Wed, 23 Nov 2016 12:24:24 +0000
parents
children 432a4398d556
line wrap: on
line source
#N canvas 88 41 1370 784 10;
#X obj 223 63 inlet;
#X text 408 248 Reynolds Number;
#X text 359 284 Strouhal Number;
#X obj 388 61 inlet;
#X obj 230 86 s \$0-diameter;
#X obj 120 85 s~ \$0-windSpeed;
#X obj 348 166 r~ \$0-windSpeed;
#X obj 348 313 s~ \$0-myFreq;
#X obj 120 65 vd~ varwind;
#X obj 311 595 *~;
#X obj 411 231 s~ \$0-myRey;
#X obj 636 57 inlet;
#X floatatom 581 126 8 0 0 0 - - -;
#X text 345 342 Calculates the frequency;
#X text 346 354 based on the physics of;
#X obj 77 422 r~ \$0-windSpeed;
#X obj 117 484 r \$0-diameter;
#X obj 460 60 inlet;
#X obj 534 59 inlet;
#X floatatom 388 108 0 0 0 0 - - -;
#X floatatom 460 106 0 0 0 0 - - -;
#X floatatom 535 103 0 0 0 0 - - -;
#X text 63 385 Calculates the gain of the dipole source;
#X text 459 37 Azimuth;
#X text 641 39 Pan;
#X text 533 41 Elevation;
#X text 384 42 Distance;
#X text 218 42 Diameter;
#X text 133 41 Wind Speed;
#X obj 315 60 inlet;
#X floatatom 315 104 5 0 0 0 - - -;
#X text 311 41 Length;
#X floatatom 223 107 0 0 0 0 - - -;
#X obj 311 664 throw~ l;
#X obj 338 642 throw~ r;
#X obj 325 83 s \$0-leng;
#X obj 393 84 s \$0-dist;
#X obj 170 349 s~ \$0-dragDiGain;
#X obj 83 370 s~ \$0-liftDiGain;
#X obj 64 403 r~ \$0-str;
#X obj 103 462 r \$0-leng;
#X obj 130 505 r \$0-dist;
#X obj 64 598 s~ \$0-liftNoiseGain;
#X obj 379 269 s~ \$0-str;
#X obj 636 126 s \$0-thisPan;
#X obj 311 451 r~ \$0-liftNoiseGain;
#X obj 338 595 r \$0-thisPan;
#X obj 803 39 inlet;
#X obj 746 39 inlet;
#X text 292 425 Noise spectrum calculation;
#X obj 326 543 hip~;
#X obj 326 498 rpole~ 0.99;
#X obj 91 181 r~ \$0-windSpeed;
#X obj 109 220 r \$0-diameter;
#X obj 83 160 r~ \$0-str;
#X obj 101 201 r \$0-leng;
#X obj 126 259 r \$0-dist;
#N canvas 205 88 1238 721 GoldfreqGain 0;
#N canvas 759 125 286 294 pow6 0;
#X obj 47 67 *~;
#X obj 76 67 *~;
#X obj 76 35 inlet~;
#X obj 47 163 outlet~;
#X obj 136 184 snapshot~;
#X obj 136 159 metro 100;
#X obj 136 137 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 1
1;
#X floatatom 136 211 10 0 0 0 - - -;
#X obj 216 210 outlet;
#X obj 136 111 loadbang;
#X obj 106 67 *~;
#X obj 47 93 *~;
#X obj 47 118 *~;
#X obj 372 202 *;
#X obj 372 228 *;
#X obj 382 22 hsl 128 15 0 10 0 0 empty empty empty -2 -8 0 10 -262144
-1 -1 0 1;
#X floatatom 374 288 10 0 0 0 - - -;
#X obj 303 20 t f b;
#X floatatom 455 55 5 0 0 0 - - -;
#X obj 372 260 *;
#X obj 400 202 *;
#X msg 303 -4 6;
#X obj 434 201 *;
#X connect 0 0 11 0;
#X connect 1 0 11 1;
#X connect 2 0 0 0;
#X connect 2 0 0 1;
#X connect 2 0 1 1;
#X connect 2 0 10 0;
#X connect 2 0 10 1;
#X connect 2 0 1 0;
#X connect 4 0 7 0;
#X connect 4 0 8 0;
#X connect 5 0 4 0;
#X connect 6 0 5 0;
#X connect 9 0 6 0;
#X connect 10 0 12 1;
#X connect 11 0 12 0;
#X connect 12 0 4 0;
#X connect 12 0 3 0;
#X connect 13 0 14 0;
#X connect 14 0 19 0;
#X connect 15 0 13 0;
#X connect 15 0 13 1;
#X connect 15 0 18 0;
#X connect 15 0 20 0;
#X connect 15 0 20 1;
#X connect 17 0 13 0;
#X connect 17 0 13 1;
#X connect 17 0 20 0;
#X connect 17 0 20 1;
#X connect 17 0 22 0;
#X connect 17 0 22 1;
#X connect 17 1 13 0;
#X connect 17 1 20 0;
#X connect 17 1 22 0;
#X connect 19 0 16 0;
#X connect 20 0 14 1;
#X connect 21 0 17 0;
#X connect 22 0 19 1;
#X restore 219 150 pd pow6;
#X obj 173 140 *~;
#X obj 219 176 *~;
#X obj 411 161 *;
#X text 587 13 Distance;
#X floatatom 567 73 5 0 0 0 - - -;
#X text 724 548 Calculates Drag Dipole gain;
#X text 48 531 Calculates Lift Dipole gain;
#X obj 173 100 inlet~;
#X obj 219 13 inlet~;
#X text 328 170 Diameter;
#X obj 291 169 inlet;
#X obj 567 29 inlet;
#X obj 219 590 outlet~;
#X obj 758 523 outlet~;
#X obj 240 263 inlet;
#X text 278 258 Length;
#X obj 219 289 *~ 1;
#X obj 234 469 /~ 360;
#X obj 234 518 *~;
#X obj 219 541 *~;
#X obj 868 30 inlet;
#X obj 967 32 inlet;
#X obj 1063 35 inlet;
#X floatatom 868 77 5 0 0 0 - - -;
#X floatatom 967 78 5 0 0 0 - - -;
#X floatatom 1064 79 5 0 0 0 - - -;
#X text 864 11 X Rotation;
#X text 961 13 Y Rotation;
#X text 1058 16 Z Rotation;
#X obj 873 53 s \$0-this_rotaX;
#X obj 974 54 s \$0-thisrotaY;
#X obj 1071 58 s \$0-thisrotaZ;
#X text 74 100 Strouhal number;
#X text 149 37 Wind speed;
#X text 266 211 Corr Length;
#X obj 219 348 *~ 2.50663;
#X obj 219 238 *~ 1.225;
#X text 93 234 Mass Density of Air;
#X text 145 343 Sqrt(2xpi);
#X obj 332 470 /~ 360;
#X obj 332 516 *~;
#X obj 332 492 cos~;
#X obj 219 567 *~;
#X obj 411 191 * 4.05513e+07;
#X text 362 210 Speed of Sound to power 3;
#X obj 411 244 * 32;
#X obj 525 213 cos~;
#X obj 525 236 *~;
#X obj 473 237 sig~ 1;
#X obj 510 267 -~;
#N canvas 1150 227 286 289 pow4 0;
#X obj 47 67 *~;
#X obj 76 67 *~;
#X obj 76 35 inlet~;
#X obj 47 163 outlet~;
#X obj 136 184 snapshot~;
#X obj 136 159 metro 100;
#X obj 136 137 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 1
1;
#X floatatom 136 211 10 0 0 0 - - -;
#X obj 216 210 outlet;
#X obj 136 111 loadbang;
#X obj 47 93 *~;
#X connect 0 0 10 0;
#X connect 1 0 10 1;
#X connect 2 0 0 0;
#X connect 2 0 0 1;
#X connect 2 0 1 1;
#X connect 2 0 1 0;
#X connect 4 0 7 0;
#X connect 4 0 8 0;
#X connect 5 0 4 0;
#X connect 6 0 5 0;
#X connect 9 0 6 0;
#X connect 10 0 3 0;
#X connect 10 0 4 0;
#X restore 510 290 pd pow4;
#X obj 411 272 sig~;
#X obj 411 322 *~;
#X obj 219 385 /~;
#X obj 133 375 s~ \$0-aGainG;
#X obj 872 246 r~ \$0-aGainG;
#X obj 758 498 *~ 0.1;
#X obj 723 340 +~ 90;
#X obj 723 363 /~ 360;
#X obj 723 409 *~;
#X obj 723 385 sin~;
#X obj 773 359 /~ 360;
#X obj 773 405 *~;
#X obj 773 381 cos~;
#X obj 758 436 *~;
#X text 763 12 Azimuth;
#X text 662 14 Elevation;
#X obj 665 32 inlet;
#X obj 767 30 inlet;
#X floatatom 665 79 5 0 0 0 - - -;
#X floatatom 767 79 5 0 0 0 - - -;
#X obj 773 294 r \$0-this_azim;
#X obj 670 55 s \$0-this_elev;
#X obj 774 55 s \$0-this_azim;
#X obj 525 129 r \$0-this_elev;
#X obj 574 51 s \$0-thisDist;
#X obj 887 268 r \$0-thisDist;
#X obj 411 135 r \$0-thisDist;
#X obj 887 292 *;
#X obj 887 317 * 4.05513e+07;
#X text 892 335 Speed of Sound to power 3;
#X obj 887 370 * 32;
#X obj 887 398 sig~;
#X obj 872 423 /~;
#X text 595 191 Remember - Goldstein moves cylinder;
#X obj 525 194 /~ 360;
#X obj 758 475 *~;
#X obj 478 51 s~ \$0-thisColL;
#X obj 270 150 r~ \$0-thisColL;
#X obj 270 190 *~ 1;
#X obj 219 210 *~;
#X obj 478 28 inlet~;
#X obj 234 495 sin~;
#N canvas 801 264 426 401 aveTimeCal 0;
#X text 224 38 Elevation;
#X obj 226 56 r \$0-elev;
#X floatatom 240 81 5 0 0 0 - - -;
#X obj 205 17 r~ MY_MACH;
#X obj 226 135 cos;
#X obj 226 107 * 0.01745;
#X obj 205 158 *~ 1;
#X obj 161 131 sig~ 1;
#X obj 161 185 -~;
#X obj 121 104 r~ \$0-myFreq;
#X obj 106 82 sig~ 6.28318;
#X obj 106 128 /~;
#X obj 106 219 *~;
#X obj 36 204 r myMet;
#X obj 106 242 snapshot~;
#X obj 106 263 * 44100;
#X obj 106 292 outlet;
#X floatatom 158 291 0 0 0 0 - - -;
#X connect 1 0 2 0;
#X connect 1 0 5 0;
#X connect 3 0 6 0;
#X connect 4 0 6 1;
#X connect 5 0 4 0;
#X connect 6 0 8 1;
#X connect 7 0 8 0;
#X connect 8 0 12 1;
#X connect 9 0 11 1;
#X connect 10 0 11 0;
#X connect 11 0 12 0;
#X connect 12 0 14 0;
#X connect 13 0 14 0;
#X connect 14 0 15 0;
#X connect 15 0 16 0;
#X connect 15 0 17 0;
#X restore 268 15 pd aveTimeCal;
#X obj 219 122 line~;
#X obj 525 173 line~;
#X obj 723 273 r \$0-this_elev;
#X obj 723 317 line~;
#X msg 723 295 \$1 5;
#X msg 525 151 \$1 5;
#X obj 773 338 line~;
#X msg 773 316 \$1 5;
#X obj 332 402 r \$0-this_azim;
#X obj 234 401 r \$0-this_elev;
#X obj 234 445 line~;
#X msg 234 423 \$1 5;
#X obj 332 446 line~;
#X msg 332 424 \$1 5;
#X msg 219 100 \$1 5;
#X obj 219 317 /~ 400;
#X text -53 316 Scale factor to bring in line with CFD calcs;
#X obj 559 214 r~ MY_MACH;
#X floatatom 265 294 5 0 0 0 - - -;
#X floatatom 311 117 0 0 0 0 - - -;
#X obj 219 59 average~ 1000;
#X connect 0 0 2 0;
#X connect 1 0 2 1;
#X connect 2 0 91 0;
#X connect 3 0 44 0;
#X connect 8 0 1 0;
#X connect 8 0 1 1;
#X connect 9 0 115 0;
#X connect 11 0 90 1;
#X connect 12 0 5 0;
#X connect 12 0 76 0;
#X connect 15 0 17 1;
#X connect 15 0 113 0;
#X connect 17 0 110 0;
#X connect 18 0 93 0;
#X connect 19 0 20 1;
#X connect 20 0 43 0;
#X connect 21 0 24 0;
#X connect 21 0 30 0;
#X connect 22 0 25 0;
#X connect 22 0 31 0;
#X connect 23 0 26 0;
#X connect 23 0 32 0;
#X connect 36 0 54 0;
#X connect 36 0 55 0;
#X connect 37 0 17 0;
#X connect 40 0 42 0;
#X connect 41 0 43 1;
#X connect 42 0 41 0;
#X connect 42 0 41 1;
#X connect 43 0 13 0;
#X connect 44 0 46 0;
#X connect 46 0 52 0;
#X connect 47 0 48 0;
#X connect 48 0 50 1;
#X connect 49 0 50 0;
#X connect 50 0 51 0;
#X connect 51 0 53 1;
#X connect 52 0 53 0;
#X connect 53 0 54 1;
#X connect 54 0 20 0;
#X connect 56 0 84 0;
#X connect 57 0 14 0;
#X connect 58 0 59 0;
#X connect 59 0 61 0;
#X connect 60 0 65 0;
#X connect 61 0 60 0;
#X connect 61 0 60 1;
#X connect 62 0 64 0;
#X connect 63 0 65 1;
#X connect 64 0 63 0;
#X connect 64 0 63 1;
#X connect 65 0 87 0;
#X connect 68 0 70 0;
#X connect 68 0 73 0;
#X connect 69 0 71 0;
#X connect 69 0 74 0;
#X connect 72 0 102 0;
#X connect 75 0 100 0;
#X connect 77 0 79 0;
#X connect 77 0 79 1;
#X connect 78 0 3 0;
#X connect 78 0 3 1;
#X connect 79 0 80 0;
#X connect 80 0 82 0;
#X connect 82 0 83 0;
#X connect 83 0 84 1;
#X connect 84 0 87 1;
#X connect 86 0 47 0;
#X connect 87 0 57 0;
#X connect 89 0 90 0;
#X connect 90 0 91 1;
#X connect 91 0 37 0;
#X connect 92 0 88 0;
#X connect 93 0 19 0;
#X connect 93 0 19 1;
#X connect 95 0 0 0;
#X connect 96 0 86 0;
#X connect 97 0 99 0;
#X connect 99 0 98 0;
#X connect 100 0 96 0;
#X connect 101 0 62 0;
#X connect 102 0 101 0;
#X connect 103 0 108 0;
#X connect 104 0 106 0;
#X connect 105 0 18 0;
#X connect 106 0 105 0;
#X connect 107 0 40 0;
#X connect 108 0 107 0;
#X connect 109 0 95 0;
#X connect 110 0 36 0;
#X connect 112 0 48 1;
#X connect 115 0 109 0;
#X connect 115 0 114 0;
#X restore 83 325 pd GoldfreqGain;
#N canvas 300 30 1006 797 GoldnoiseGain 0;
#X text -21037 364 Mass Density of Air \, squared;
#X obj -20777 459 *;
#X text -20777 412 Distance;
#N canvas 759 125 235 275 pow8 0;
#X obj 47 67 *~;
#X obj 76 67 *~;
#X obj 76 35 inlet~;
#X obj 47 147 outlet~;
#X obj 128 146 snapshot~;
#X obj 128 121 metro 100;
#X obj 128 99 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 1
1;
#X floatatom 128 173 10 0 0 0 - - -;
#X obj 128 73 loadbang;
#X obj 47 93 *~;
#X obj 47 121 *~;
#X connect 0 0 9 0;
#X connect 1 0 9 1;
#X connect 2 0 0 0;
#X connect 2 0 0 1;
#X connect 2 0 1 1;
#X connect 2 0 1 0;
#X connect 4 0 7 0;
#X connect 5 0 4 0;
#X connect 6 0 5 0;
#X connect 8 0 6 0;
#X connect 9 0 10 0;
#X connect 9 0 10 1;
#X connect 10 0 3 0;
#X connect 10 0 4 0;
#X restore -20846 224 pd pow8;
#X obj -20846 137 inlet~;
#X obj -20807 286 inlet;
#X obj -20777 433 inlet;
#X obj -20861 617 outlet~;
#X text -20858 648 Gain proportional to windspeed to power 8 for spectrum
;
#X text -20771 287 Diameter;
#X text -20847 118 Wind speed;
#X text -21027 627 Calculates wake gain;
#X text -20399 16 Azimuth;
#X obj -20398 33 inlet;
#X obj -20342 33 inlet;
#X text -20343 16 Elevation;
#X floatatom -20304 57 5 0 0 0 - - -;
#X floatatom -20470 58 5 0 0 0 - - -;
#X obj -20398 117 s~ \$0-this_azim;
#X obj -20342 95 s~ \$0-this_elev;
#X obj -20861 371 *~ 1.225;
#X obj -20587 239 r~ \$0-this_azim;
#N canvas 759 125 250 309 pow5 0;
#X obj 47 67 *~;
#X obj 76 35 inlet~;
#X obj 47 170 outlet~;
#X obj 136 173 snapshot~;
#X obj 136 148 metro 100;
#X obj 136 126 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 1
1;
#X floatatom 136 200 10 0 0 0 - - -;
#X obj 136 100 loadbang;
#X obj 47 87 *~;
#X obj 47 118 *~;
#X connect 0 0 8 0;
#X connect 0 0 8 1;
#X connect 1 0 0 0;
#X connect 1 0 0 1;
#X connect 1 0 9 1;
#X connect 3 0 6 0;
#X connect 4 0 3 0;
#X connect 5 0 4 0;
#X connect 7 0 5 0;
#X connect 8 0 9 0;
#X connect 9 0 2 0;
#X connect 9 0 3 0;
#X restore -20705 475 pd pow5;
#X obj -20705 451 sig~ 343.56;
#N canvas 875 261 250 309 pow5 0;
#X obj 47 67 *~;
#X obj 76 35 inlet~;
#X obj 47 170 outlet~;
#X obj 136 173 snapshot~;
#X obj 136 148 metro 100;
#X obj 136 126 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 1
1;
#X floatatom 136 200 10 0 0 0 - - -;
#X obj 136 100 loadbang;
#X obj 47 87 *~;
#X obj 47 118 *~;
#X connect 0 0 8 0;
#X connect 0 0 8 1;
#X connect 1 0 0 0;
#X connect 1 0 0 1;
#X connect 1 0 9 1;
#X connect 3 0 6 0;
#X connect 4 0 3 0;
#X connect 5 0 4 0;
#X connect 7 0 5 0;
#X connect 8 0 9 0;
#X connect 9 0 2 0;
#X connect 9 0 3 0;
#X restore -20670 401 pd pow5;
#X obj -20624 216 /~ 360;
#X obj -20624 243 cos~;
#X obj -20624 349 *~;
#X obj -20670 348 sig~ 1;
#X obj -20670 375 -~;
#X obj -20705 322 sig~ 3.1416;
#X obj -20705 347 *~;
#X obj -20720 299 sig~ 16;
#X obj -20720 371 *~;
#X obj -20720 429 *~;
#X obj -20720 502 *~;
#X obj -20777 530 *~;
#X obj -20861 574 /~;
#X obj -20624 194 -~;
#X text -20533 187 Angle goes with the flow in Goldstein hence 90 -
theta so that theta is same angle as dipole angles.;
#X obj -20624 149 sig~ 180;
#X obj -20609 172 r~ \$0-this_elev;
#X obj -20916 137 inlet~;
#X obj -20916 164 *~;
#X obj -20828 253 inlet~;
#X obj -20828 312 *~ 1;
#X obj -20861 251 *~;
#X obj -20861 347 *~;
#X obj -20809 392 inlet;
#X obj -20861 444 *~ 1;
#X obj -20861 528 *~ 2.50663;
#X text -20782 254 Corrolation Length;
#X text -20806 371 Length;
#X obj -20846 159 average~ 64;
#N canvas 801 264 426 401 aveTimeCal 0;
#X text 224 38 Elevation;
#X obj 226 56 r \$0-elev;
#X floatatom 240 81 5 0 0 0 - - -;
#X obj 205 17 r~ MY_MACH;
#X obj 226 135 cos;
#X obj 226 107 * 0.01745;
#X obj 205 158 *~ 1;
#X obj 161 131 sig~ 1;
#X obj 161 185 -~;
#X obj 121 104 r~ \$0-myFreq;
#X obj 106 82 sig~ 6.28318;
#X obj 106 128 /~;
#X obj 106 219 *~;
#X obj 36 204 r myMet;
#X obj 106 242 snapshot~;
#X floatatom 44 283 0 0 0 0 - - -;
#X obj 106 263 * 44100;
#X obj 106 292 outlet;
#X connect 1 0 2 0;
#X connect 1 0 5 0;
#X connect 3 0 6 0;
#X connect 4 0 6 1;
#X connect 5 0 4 0;
#X connect 6 0 8 1;
#X connect 7 0 8 0;
#X connect 8 0 12 1;
#X connect 9 0 11 1;
#X connect 10 0 11 0;
#X connect 11 0 12 0;
#X connect 12 0 14 0;
#X connect 13 0 14 0;
#X connect 14 0 16 0;
#X connect 16 0 15 0;
#X connect 16 0 17 0;
#X restore -20766 139 pd aveTimeCal;
#X obj -20846 203 line~;
#X msg -20846 181 \$1 5;
#X obj -20342 75 line~;
#X msg -20342 53 \$1 5;
#X obj -20777 502 line~;
#X msg -20777 480 \$1 5;
#X obj -20398 86 line~;
#X msg -20398 64 \$1 5;
#X obj -20587 285 cos~;
#X obj -20861 595 *~ 1;
#X obj -20587 262 /~ 360;
#X obj -20624 306 *~;
#X text -21131 486 Scale factor to bring in line with CFD calcs;
#X text -20929 530 Sqrt(2*pi);
#X obj -20609 328 r~ MY_MACH;
#X obj -20861 488 /~ 10000;
#X connect 1 0 60 0;
#X connect 3 0 46 1;
#X connect 4 0 53 0;
#X connect 5 0 45 1;
#X connect 6 0 1 0;
#X connect 6 0 1 1;
#X connect 13 0 17 0;
#X connect 13 0 62 0;
#X connect 14 0 16 0;
#X connect 14 0 58 0;
#X connect 20 0 49 0;
#X connect 21 0 65 0;
#X connect 22 0 35 1;
#X connect 23 0 22 0;
#X connect 24 0 34 1;
#X connect 25 0 26 0;
#X connect 26 0 66 0;
#X connect 27 0 29 1;
#X connect 28 0 29 0;
#X connect 29 0 24 0;
#X connect 30 0 31 0;
#X connect 30 0 31 1;
#X connect 31 0 33 1;
#X connect 32 0 33 0;
#X connect 33 0 34 0;
#X connect 34 0 35 0;
#X connect 35 0 36 1;
#X connect 36 0 37 1;
#X connect 37 0 64 0;
#X connect 38 0 25 0;
#X connect 40 0 38 0;
#X connect 41 0 38 1;
#X connect 42 0 43 0;
#X connect 42 0 43 1;
#X connect 43 0 46 0;
#X connect 44 0 45 0;
#X connect 45 0 47 1;
#X connect 46 0 47 0;
#X connect 47 0 20 0;
#X connect 48 0 49 1;
#X connect 49 0 70 0;
#X connect 50 0 37 0;
#X connect 53 0 56 0;
#X connect 54 0 53 0;
#X connect 55 0 3 0;
#X connect 56 0 55 0;
#X connect 57 0 19 0;
#X connect 58 0 57 0;
#X connect 59 0 36 0;
#X connect 60 0 59 0;
#X connect 61 0 18 0;
#X connect 62 0 61 0;
#X connect 63 0 66 1;
#X connect 64 0 7 0;
#X connect 65 0 63 0;
#X connect 66 0 27 0;
#X connect 69 0 27 1;
#X connect 70 0 50 0;
#X restore 64 570 pd GoldnoiseGain;
#X text 55 617 Calculates the gain of the wake;
#X obj 467 82 s \$0-azim;
#X obj 542 82 s \$0-elev;
#X obj 135 280 r \$0-elev;
#X obj 143 301 r \$0-azim;
#X obj 157 549 r \$0-elev;
#X obj 143 526 r \$0-azim;
#N canvas 940 255 444 428 corrLen 0;
#X obj 103 71 inlet~;
#X obj 88 302 outlet~;
#X obj 88 143 *~;
#X obj 124 93 sig~ -0.245;
#X obj 103 119 pow~;
#X text 234 22 Y = 10^b . X^m;
#X text 235 40 b = 1.536;
#X text 235 56 m = -0.245;
#X text 51 364 Equation of line derived from Norberg 2001;
#X obj 88 169 max~ 1;
#X obj 88 46 sig~ 44.67;
#X obj 229 285 r myMet;
#X obj 229 308 snapshot~;
#X floatatom 228 329 0 0 0 0 - - -;
#X obj 88 272 +~;
#X obj 104 219 inlet~;
#X obj 203 203 r myMet;
#X obj 203 226 snapshot~;
#X floatatom 202 247 0 0 0 0 - - -;
#X obj 104 244 *~ 200;
#X connect 0 0 4 0;
#X connect 2 0 9 0;
#X connect 3 0 4 1;
#X connect 4 0 2 1;
#X connect 9 0 14 0;
#X connect 10 0 2 0;
#X connect 11 0 12 0;
#X connect 12 0 13 0;
#X connect 14 0 1 0;
#X connect 14 0 12 0;
#X connect 15 0 19 0;
#X connect 15 0 17 0;
#X connect 16 0 17 0;
#X connect 17 0 18 0;
#X connect 19 0 14 1;
#X restore 956 85 pd corrLen Calc;
#X obj 956 62 r~ \$0-myRey;
#X obj 956 109 s~ \$0-myCor;
#X obj 117 240 r~ \$0-myCor;
#X obj 326 570 hip~;
#X obj 90 442 r~ \$0-myCor;
#X obj 636 81 max 0.01;
#X obj 636 104 min 0.99;
#N canvas 125 74 950 728 Dipoles 0;
#X obj 225 154 r~ \$0-liftDiGain;
#X obj 495 160 r~ \$0-liftDiGain;
#X obj 495 182 *~ 0.6;
#X obj 381 91 *~ 3;
#X obj 468 490 r~ \$0-dragDiGain;
#X obj 354 400 *~ 2;
#X obj 210 175 *~;
#X obj 210 316 throw~ l;
#X obj 237 293 throw~ r;
#X obj 210 108 vcf~ 3;
#X obj 237 249 r \$0-thisPan;
#X obj 210 67 r~ \$0-thisNoise;
#X obj 480 202 *~;
#X obj 480 341 throw~ l;
#X obj 507 318 throw~ r;
#X obj 480 116 vcf~ 3;
#X obj 507 275 r \$0-thisPan;
#X obj 480 68 r~ \$0-thisNoise;
#X obj 453 511 *~;
#X obj 453 647 throw~ l;
#X obj 480 624 throw~ r;
#X obj 453 447 vcf~ 3;
#X obj 480 581 r \$0-thisPan;
#X obj 453 403 r~ \$0-thisNoise;
#X text 273 27 Generates the sound associated with the lift dipole.
;
#X text 312 370 Generates the sound associated with the drag dipole.
;
#X obj 270 87 r \$0-Qval;
#X obj 530 92 r \$0-Qval;
#X obj 498 425 r \$0-Qval;
#X floatatom 277 122 5 0 0 0 - - -;
#X obj 210 134 vcf~ 3;
#X obj 480 138 vcf~ 3;
#X obj 453 468 vcf~ 3;
#X obj 55 12 inlet~;
#X obj 55 32 s~ \$0-myAeoFreq;
#X obj 109 67 r~ \$0-myAeoFreq;
#X obj 381 67 r~ \$0-myAeoFreq;
#X obj 353 402 r~ \$0-myAeoFreq;
#X obj 210 272 fcpan;
#X obj 480 297 fcpan;
#X obj 453 603 fcpan;
#X obj 210 199 spigot~;
#X obj 480 227 spigot~;
#X obj 453 535 spigot~;
#X obj 673 48 inlet;
#X text 60 485 Generate sounds associated with the Aeolian tone. Higher
harmonics have been removed compares to AES paper. This is because
they have such a small contribution in comparison to lower harmonics
and the FM spectrum during lock-in;
#X obj 210 244 *~;
#X obj 225 222 r~ \$0-reyGain;
#X obj 480 270 *~;
#X obj 495 248 r~ \$0-reyGain;
#X obj 453 577 *~;
#X obj 468 555 r~ \$0-reyGain;
#X connect 0 0 6 1;
#X connect 1 0 2 0;
#X connect 2 0 12 1;
#X connect 3 0 15 1;
#X connect 3 0 31 1;
#X connect 4 0 18 1;
#X connect 5 0 21 1;
#X connect 5 0 32 1;
#X connect 6 0 41 0;
#X connect 9 0 30 0;
#X connect 10 0 38 1;
#X connect 11 0 9 0;
#X connect 12 0 42 0;
#X connect 15 0 31 0;
#X connect 16 0 39 1;
#X connect 17 0 15 0;
#X connect 18 0 43 0;
#X connect 21 0 32 0;
#X connect 22 0 40 1;
#X connect 23 0 21 0;
#X connect 26 0 9 2;
#X connect 26 0 29 0;
#X connect 26 0 30 2;
#X connect 27 0 15 2;
#X connect 27 0 31 2;
#X connect 28 0 21 2;
#X connect 28 0 32 2;
#X connect 30 0 6 0;
#X connect 31 0 12 0;
#X connect 32 0 18 0;
#X connect 33 0 34 0;
#X connect 35 0 9 1;
#X connect 35 0 30 1;
#X connect 36 0 3 0;
#X connect 37 0 5 0;
#X connect 38 0 7 0;
#X connect 38 1 8 0;
#X connect 39 0 13 0;
#X connect 39 1 14 0;
#X connect 40 0 19 0;
#X connect 40 1 20 0;
#X connect 41 0 46 0;
#X connect 42 0 48 0;
#X connect 43 0 50 0;
#X connect 44 0 42 1;
#X connect 44 0 41 1;
#X connect 44 0 43 1;
#X connect 46 0 38 0;
#X connect 47 0 46 1;
#X connect 48 0 39 0;
#X connect 49 0 48 1;
#X connect 50 0 40 0;
#X connect 51 0 50 1;
#X restore 474 688 pd Dipoles;
#X obj 1088 69 noise~;
#X obj 1088 92 s~ \$0-thisNoise;
#X obj 326 475 r~ \$0-thisNoise;
#X text 346 367 the object and environment;
#N canvas 308 58 1027 635 StBandwidth 0;
#X obj 460 365 swap 1;
#X obj 460 391 /;
#X obj 460 342 / 100;
#X obj 461 434 outlet;
#X text 437 453 Q value;
#X obj 531 -36 r~ \$0-myRey;
#X obj 477 -36 r myMet;
#X obj 477 -14 snapshot~;
#X obj 203 164 spigot;
#X obj 219 187 spigot;
#X obj 236 140 > 0;
#X obj 219 233 + 0.9797;
#X obj 219 208 * 4.624e-05;
#X obj 602 150 spigot;
#X obj 618 173 spigot;
#X obj 651 149 < 1e+06;
#X obj 618 216 * 1.227e-10;
#X obj 618 196 *;
#X obj 690 215 * -8.553e-05;
#X obj 618 261 + 16.5;
#X obj 618 238 +;
#X text -84 298 First section of the Reynolds number - DeltaF/F relationship
is linear and did not appear to be reliant on current TU values;
#X text 565 329 Third section of the Reynolds number - DeltaF/F relationship
is linear and did not appear to be reliant on current TU values;
#X text 114 -16 Middle section of Reynolds number - DeltaF/F relationship
is also linear but depends on TU Value;
#X obj 461 412 max 0.005;
#X obj 635 126 > 193260;
#X obj 252 163 < 193260;
#X floatatom 653 40 0 0 0 0 - - -;
#X floatatom 565 452 0 0 0 0 - - -;
#X connect 0 0 1 0;
#X connect 0 1 1 1;
#X connect 1 0 24 0;
#X connect 2 0 0 0;
#X connect 5 0 7 0;
#X connect 6 0 7 0;
#X connect 7 0 15 0;
#X connect 7 0 13 0;
#X connect 7 0 10 0;
#X connect 7 0 8 0;
#X connect 7 0 25 0;
#X connect 7 0 26 0;
#X connect 7 0 27 0;
#X connect 8 0 9 0;
#X connect 9 0 12 0;
#X connect 10 0 8 1;
#X connect 11 0 2 0;
#X connect 12 0 11 0;
#X connect 13 0 14 0;
#X connect 14 0 18 0;
#X connect 14 0 17 1;
#X connect 14 0 17 0;
#X connect 15 0 14 1;
#X connect 16 0 20 0;
#X connect 17 0 16 0;
#X connect 18 0 20 1;
#X connect 19 0 2 0;
#X connect 20 0 19 0;
#X connect 24 0 3 0;
#X connect 24 0 28 0;
#X connect 25 0 13 1;
#X connect 26 0 9 1;
#X restore 1189 91 pd StBandwidth;
#X obj 1189 114 s \$0-Qval;
#X obj 412 518 r myMet;
#X obj 402 539 snapshot~;
#X text 780 18 Mass Density;
#X text 720 16 Tension;
#N canvas 389 23 542 808 NatFreq 0;
#X obj 148 86 inlet;
#X obj 109 367 inlet;
#X text 137 62 Mass Density;
#X text 55 366 Tension;
#X obj 163 155 r \$0-diameter;
#X floatatom 206 177 0 0 0 0 - - -;
#X floatatom 51 416 0 0 0 0 - - -;
#X floatatom 191 111 0 0 0 0 - - -;
#X obj 163 511 r \$0-leng;
#X text 121 669 Natural Frequency;
#X text 74 717 Patch that calcultes the natural or fundamental frequency
of a string in 1 dimension. Uses f = (1/2l) * sqrt(T/u) where u is
the linear mass density.;
#X obj 133 646 outlet~;
#X msg 148 111 \$1 10;
#X obj 148 133 line~;
#X msg 163 179 \$1 10;
#X obj 163 202 line~;
#X obj 163 224 *~ 0.5;
#X obj 163 249 *~;
#X obj 163 271 *~ 3.14159;
#X obj 148 352 *~;
#X obj 133 440 /~;
#X msg 109 389 \$1 10;
#X obj 109 413 line~;
#X obj 133 467 sqrt~;
#X msg 163 533 \$1 10;
#X obj 163 556 line~;
#X obj 163 577 *~ 2;
#X obj 149 489 sig~ 1;
#X obj 149 597 /~;
#X obj 133 621 *~;
#X obj 67 624 r myMet;
#X obj 67 647 snapshot~;
#X floatatom 67 670 0 0 0 0 - - -;
#X obj 189 374 r myMet;
#X obj 189 397 snapshot~;
#X floatatom 189 420 0 0 0 0 - - -;
#X obj 303 31 r myMet;
#X obj 303 54 snapshot~;
#X floatatom 303 77 0 0 0 0 - - -;
#X obj 207 597 r myMet;
#X obj 207 620 snapshot~;
#X floatatom 207 643 0 0 0 0 - - -;
#X obj 365 29 r myMet;
#X obj 365 52 snapshot~;
#X floatatom 365 75 0 0 0 0 - - -;
#X text 187 441 Linear Density;
#X obj 234 224 *~ 0.5;
#X obj 234 249 *~;
#X obj 234 271 *~ 3.14159;
#X obj 234 202 sig~ 0.0266;
#X obj 234 305 -~;
#X obj 260 305 r myMet;
#X obj 260 328 snapshot~;
#X floatatom 260 351 0 0 0 0 - - -;
#X floatatom 205 532 0 0 0 0 - - -;
#X obj 273 423 s~ 0$-linden;
#X connect 0 0 7 0;
#X connect 0 0 12 0;
#X connect 1 0 6 0;
#X connect 1 0 21 0;
#X connect 4 0 5 0;
#X connect 4 0 14 0;
#X connect 8 0 24 0;
#X connect 8 0 54 0;
#X connect 12 0 13 0;
#X connect 13 0 19 0;
#X connect 14 0 15 0;
#X connect 15 0 16 0;
#X connect 16 0 17 0;
#X connect 16 0 17 1;
#X connect 17 0 18 0;
#X connect 18 0 19 1;
#X connect 19 0 20 1;
#X connect 19 0 34 0;
#X connect 19 0 55 0;
#X connect 20 0 23 0;
#X connect 21 0 22 0;
#X connect 22 0 20 0;
#X connect 23 0 29 0;
#X connect 24 0 25 0;
#X connect 25 0 26 0;
#X connect 26 0 28 1;
#X connect 27 0 28 0;
#X connect 28 0 29 1;
#X connect 28 0 40 0;
#X connect 29 0 11 0;
#X connect 29 0 31 0;
#X connect 30 0 31 0;
#X connect 31 0 32 0;
#X connect 33 0 34 0;
#X connect 34 0 35 0;
#X connect 36 0 37 0;
#X connect 37 0 38 0;
#X connect 39 0 40 0;
#X connect 40 0 41 0;
#X connect 42 0 43 0;
#X connect 43 0 44 0;
#X connect 46 0 47 0;
#X connect 46 0 47 1;
#X connect 47 0 48 0;
#X connect 48 0 50 1;
#X connect 49 0 46 0;
#X connect 50 0 52 0;
#X connect 51 0 52 0;
#X connect 52 0 53 0;
#X restore 746 96 pd NatFreq;
#X obj 746 118 s~ \$0-thisNatF;
#X obj 849 90 r myMet;
#X obj 849 111 snapshot~;
#X floatatom 849 132 0 0 0 0 - - -;
#N canvas 541 215 891 445 toneCalc 0;
#X obj 101 -1 inlet~;
#X obj 144 40 inlet;
#X obj 102 228 outlet~;
#X obj 161 230 outlet~;
#X obj 228 232 outlet~;
#X obj 101 59 *~ 1;
#X obj 101 134 newStrou;
#X obj 101 163 *~;
#X obj 101 191 /~ 1;
#X text 161 252 Strouhal No;
#X text 281 235 Reynolds No;
#X obj 101 23 *~ 67679.6;
#X text 210 22 Cosolidation of 2pi \, air density and viscosity in
equations identified in original AES paper - Aeolian tone.;
#X text 43 252 Strouhal Frequency;
#X obj 101 94 clip~ 40 1e+06;
#X text 210 109 Reynolds number clipped at lower limit of 40 to prevent
Strouhal number decreasing to negative numbers - due to relationship
identified in Fey paper.;
#X connect 0 0 7 1;
#X connect 0 0 11 0;
#X connect 1 0 5 1;
#X connect 1 0 8 1;
#X connect 5 0 4 0;
#X connect 5 0 14 0;
#X connect 6 0 7 0;
#X connect 6 0 3 0;
#X connect 7 0 8 0;
#X connect 8 0 2 0;
#X connect 11 0 5 0;
#X connect 14 0 6 0;
#X restore 348 206 pd toneCalc;
#X obj 411 186 r \$0-diameter;
#X obj 311 620 fcpan;
#X obj 1176 674 outlet;
#X obj 870 747 outlet;
#X obj 744 180 r~ \$0-myFreq;
#X obj 759 200 r~ \$0-thisNatF;
#X obj 744 220 /~;
#X obj 769 220 r myMet;
#X obj 744 240 snapshot~;
#X obj 744 260 + 0.5;
#X obj 744 300 i;
#X obj 1083 672 outlet;
#N canvas 333 355 537 467 modulation 0;
#X obj 171 17 r~ \$0-thisNatF;
#X floatatom 316 237 0 0 0 0 - - -;
#X obj 171 246 osc~;
#X obj 171 271 *~;
#X obj 282 186 hsl 150 35 1 100 1 0 empty empty empty -2 -8 0 10 -262144
-1 -1 0 1;
#X obj 206 247 line~;
#X obj 171 295 outlet~;
#X obj 206 178 r mod;
#X text 100 346 Calculates the modulation frequency from the difference
between the shedding and natural frequency - Van Atta paper.;
#X obj 186 111 line~;
#X obj 171 134 *~;
#X floatatom 215 204 0 0 0 0 - - -;
#X obj 121 246 outlet~;
#X text 25 209 Difference frequency;
#X obj 171 217 -~;
#X obj 186 155 inlet~;
#X obj 186 37 inlet;
#X obj 186 62 + 1;
#X floatatom 227 86 0 0 0 0 - - -;
#X msg 206 226 \$1 30;
#X msg 186 85 \$1 40;
#X text 241 124 Nearest Upper Harmonic;
#X connect 0 0 10 0;
#X connect 2 0 3 0;
#X connect 3 0 6 0;
#X connect 4 0 1 0;
#X connect 4 0 19 0;
#X connect 5 0 3 1;
#X connect 7 0 19 0;
#X connect 7 0 11 0;
#X connect 9 0 10 1;
#X connect 10 0 14 0;
#X connect 14 0 2 0;
#X connect 14 0 12 0;
#X connect 15 0 14 1;
#X connect 16 0 17 0;
#X connect 17 0 20 0;
#X connect 17 0 18 0;
#X connect 19 0 5 0;
#X connect 20 0 9 0;
#X restore 964 440 pd modulation;
#X obj 727 407 r~ \$0-myFreq;
#X floatatom 817 321 0 0 0 0 - - -;
#X obj 675 510 outlet~;
#X obj 734 427 outlet~;
#N canvas 160 111 852 514 AeolianFreq 0;
#X obj 558 63 > 1;
#X obj 126 -69 inlet~;
#X obj 445 169 spigot~;
#X obj 558 236 outlet~;
#X floatatom 558 88 0 0 0 0 - - -;
#X obj 197 -69 inlet~;
#X obj 460 117 *~;
#X obj 445 147 +~;
#X obj 657 168 spigot~;
#X obj 672 115 *~;
#X obj 657 145 -~;
#X obj 475 88 -~;
#X obj 687 88 -~;
#X obj 126 -46 s~ \$0-AeoF;
#X obj 445 5 r~ \$0-AeoF;
#X obj 490 67 r~ \$0-AeoF;
#X obj 657 3 r~ \$0-AeoF;
#X obj 687 44 r~ \$0-AeoF;
#X obj 197 -46 s~ \$0-NatF;
#X obj 702 65 r~ \$0-NatF;
#X obj 475 47 r~ \$0-NatF;
#X obj 218 262 s~ \$0-flipVal;
#X obj 460 26 r~ \$0-flipVal;
#X obj 672 24 r~ \$0-flipVal;
#X obj 558 213 +~;
#X obj 584 265 r myMet;
#X obj 584 288 snapshot~;
#X floatatom 584 309 0 0 0 0 - - -;
#X obj 683 318 outlet;
#X obj 582 21 r myMet;
#X obj 558 40 snapshot~;
#X floatatom 583 62 0 0 0 0 - - -;
#X obj 558 20 /~;
#X obj 558 -21 r~ \$0-AeoF;
#X obj 573 -1 r~ \$0-NatF;
#X obj 262 32 inlet~;
#X obj 120 175 -~ 1;
#X obj 136 22 sig~ 1;
#X obj 150 108 exp~;
#X obj 120 154 /~;
#X obj 135 129 +~;
#X obj 120 195 *~ -1;
#X obj 247 81 sig~ 1;
#X obj 262 167 exp~;
#X obj 232 213 /~;
#X obj 247 188 +~;
#X obj 217 236 *~;
#X obj 150 62 -~ 0.83;
#X obj 262 123 -~ 1.24;
#X obj 150 84 *~ 100;
#X obj 262 144 *~ 100;
#X text 361 199 f(s)[n]+β(f(eta)[n]−f(s)[n]);
#X text 655 204 f(s)[n]-β(f(s)[n]−f(eta)[n]);
#X text 36 291 Calculates the value of β from the Red Velocity V;
#X text 229 371 Patch that calculates the vortex shedding frequency
from the values of the Strouhal Frequency \, Harmonic of the natural
vibration frequency and the reduced velocity.;
#X connect 0 0 2 1;
#X connect 0 0 4 0;
#X connect 0 0 8 1;
#X connect 1 0 13 0;
#X connect 2 0 24 0;
#X connect 5 0 18 0;
#X connect 6 0 7 1;
#X connect 7 0 2 0;
#X connect 8 1 24 1;
#X connect 9 0 10 1;
#X connect 10 0 8 0;
#X connect 11 0 6 1;
#X connect 12 0 9 1;
#X connect 14 0 7 0;
#X connect 15 0 11 1;
#X connect 16 0 10 0;
#X connect 17 0 12 0;
#X connect 19 0 12 1;
#X connect 20 0 11 0;
#X connect 22 0 6 0;
#X connect 23 0 9 0;
#X connect 24 0 3 0;
#X connect 24 0 26 0;
#X connect 25 0 26 0;
#X connect 26 0 27 0;
#X connect 26 0 28 0;
#X connect 29 0 30 0;
#X connect 30 0 31 0;
#X connect 30 0 0 0;
#X connect 32 0 30 0;
#X connect 33 0 32 0;
#X connect 34 0 32 1;
#X connect 35 0 48 0;
#X connect 35 0 47 0;
#X connect 36 0 41 0;
#X connect 37 0 39 0;
#X connect 37 0 40 0;
#X connect 38 0 40 1;
#X connect 39 0 36 0;
#X connect 40 0 39 1;
#X connect 41 0 46 0;
#X connect 42 0 44 0;
#X connect 42 0 45 0;
#X connect 43 0 45 1;
#X connect 44 0 46 1;
#X connect 45 0 44 1;
#X connect 46 0 21 0;
#X connect 47 0 49 0;
#X connect 48 0 50 0;
#X connect 49 0 38 0;
#X connect 50 0 43 0;
#X restore 727 486 pd AeolianFreq;
#X obj 1289 75 inlet;
#X obj 816 61 s \$0-mass;
#X obj 1178 718 outlet~;
#X obj 1085 718 outlet~;
#X obj 902 134 outlet;
#X obj 1113 131 inlet;
#X obj 744 280 max 1;
#X obj 57 62 r myMet;
#X obj 57 85 snapshot~;
#X floatatom 57 109 0 0 0 0 - - -;
#X text 1255 58 Damping Parameter;
#X obj 1043 47 r~ \$0-AdVal;
#X obj 975 269 s~ \$0-redVel;
#X obj 1178 698 r~ \$0-redVel;
#X obj 998 249 s~ \$0-lockFreq;
#X obj 767 447 r~ \$0-lockFreq;
#X obj 1085 697 r~ \$0-lockFreq;
#X obj 744 321 s \$0-harmNo;
#X obj 1083 651 r \$0-harmNo;
#X obj 953 207 r \$0-harmNo;
#X obj 1289 96 s \$0-dampPar;
#X obj 1113 154 s \$0-onOff;
#X obj 1254 464 r \$0-onOff;
#X obj 531 667 r \$0-onOff;
#X obj 1039 460 s~ \$0-modFreq;
#X obj 1232 422 r~ \$0-modFreq;
#X obj 964 480 s~ \$0-diffFreq;
#X obj 1243 442 r~ \$0-diffFreq;
#X floatatom 755 58 0 0 0 0 - - -;
#X floatatom 847 41 0 0 0 0 - - -;
#X floatatom 1284 118 0 0 0 0 - - -;
#X floatatom 1150 130 0 0 0 0 - - -;
#X floatatom 913 747 0 0 0 0 - - -;
#X obj 953 289 s \$0-redVelCo;
#N canvas 713 289 400 432 VCalc 0;
#X obj 202 126 r~ \$0-thisNatF;
#X obj 178 41 r \$0-diameter;
#X obj 178 83 line~;
#X obj 178 105 *~ 6.28319;
#X obj 163 20 r~ \$0-windSpeed;
#X obj 163 270 /~;
#X obj 163 302 outlet~;
#X obj 163 158 /~;
#X obj 202 281 outlet~;
#X obj 54 289 r myMet;
#X obj 54 312 snapshot~;
#X floatatom 97 334 0 0 0 0 - - -;
#X obj 54 335 outlet;
#X obj 217 146 inlet;
#X obj 217 189 line~;
#X obj 202 244 *~;
#X msg 178 61 \$1 20;
#X text 37 89 V = u/(2pi.f.d);
#X text 254 149 Harmonic Number;
#X msg 217 168 \$1 40;
#X text 38 373 Patch that calculates the Reduced Velocity \, V.;
#X connect 0 0 15 0;
#X connect 1 0 16 0;
#X connect 2 0 3 0;
#X connect 3 0 7 1;
#X connect 4 0 7 0;
#X connect 5 0 6 0;
#X connect 5 0 10 0;
#X connect 7 0 5 0;
#X connect 9 0 10 0;
#X connect 10 0 11 0;
#X connect 10 0 12 0;
#X connect 13 0 19 0;
#X connect 14 0 15 1;
#X connect 15 0 5 1;
#X connect 15 0 8 0;
#X connect 16 0 2 0;
#X connect 19 0 14 0;
#X restore 953 228 pd VCalc;
#N canvas 40 37 1392 752 SimpHyst 0;
#X obj 289 250 sig~ 1;
#X obj 304 336 exp~;
#X obj 274 382 /~;
#X obj 289 357 +~;
#X obj 121 338 -~ 1;
#X obj 121 358 *~ -1;
#X obj 136 180 sig~ 1;
#X obj 151 271 exp~;
#X obj 121 317 /~;
#X obj 136 292 +~;
#X obj 194 432 *~;
#X obj 121 381 spigot~;
#X obj -7 99 r myMet;
#X obj -7 120 snapshot~;
#X floatatom -7 143 0 0 0 0 - - -;
#X obj 72 644 outlet~;
#N canvas 0 27 450 362 PlotWrt 0;
#X obj 116 303 textfile;
#X msg 330 202 clear \, rewind;
#X msg 169 202 add \$1;
#X msg 116 202 add2 \$1;
#X obj 105 92 snapshot~;
#X floatatom 119 129 0 0 0 0 - - -;
#X obj 198 92 snapshot~;
#X floatatom 250 119 0 0 0 0 - - -;
#X obj 25 15 inlet~;
#X obj 343 45 inlet~;
#X obj 105 67 r myMet;
#X obj 198 67 r myMet;
#X msg 218 202 write hystTest2.txt;
#X connect 1 0 0 0;
#X connect 2 0 0 0;
#X connect 3 0 0 0;
#X connect 4 0 5 0;
#X connect 4 0 3 0;
#X connect 6 0 7 0;
#X connect 6 0 2 0;
#X connect 8 0 4 0;
#X connect 9 0 6 0;
#X connect 10 0 4 0;
#X connect 11 0 6 0;
#X connect 12 0 0 0;
#X restore -6 583 pd PlotWrt;
#X floatatom 103 460 0 0 0 0 - - -;
#X floatatom 58 461 0 0 0 0 - - -;
#N canvas 432 91 476 532 Hyst1 0;
#X obj 184 20 inlet~;
#X obj 309 66 snapshot~;
#X obj 309 43 r myMet;
#X floatatom 356 91 0 0 0 0 - - -;
#X floatatom 149 135 0 0 0 0 - - -;
#X floatatom 270 136 0 0 0 0 - - -;
#X obj 184 69 snapshot~;
#X obj 119 45 r myMet;
#X floatatom 102 93 0 0 0 0 - - -;
#X obj 184 46 delta~;
#X obj 184 92 > 0;
#X obj 235 91 < 0;
#X obj 234 267 - 1;
#X obj 234 287 * -1;
#X floatatom 291 310 0 0 0 0 - - -;
#N canvas 582 482 491 257 accDec 0;
#X obj 91 77 r myMet;
#X obj 224 20 inlet;
#X obj 268 21 inlet;
#X obj 91 98 spigot;
#X msg 91 119 1;
#X obj 153 78 r myMet;
#X obj 153 99 spigot;
#X msg 153 120 0;
#X floatatom 91 141 0 0 0 0 - - -;
#X obj 153 142 outlet;
#X obj 298 72 r myMet;
#X obj 298 93 spigot;
#X msg 298 114 1;
#X obj 360 73 r myMet;
#X obj 360 94 spigot;
#X msg 360 115 0;
#X obj 360 137 outlet;
#X floatatom 298 135 0 0 0 0 - - -;
#X text 88 177 Identifies if the Reduced Velocity is increasing or
decreasing.;
#X connect 0 0 3 0;
#X connect 1 0 6 1;
#X connect 1 0 11 1;
#X connect 2 0 3 1;
#X connect 2 0 14 1;
#X connect 3 0 4 0;
#X connect 4 0 8 0;
#X connect 4 0 9 0;
#X connect 5 0 6 0;
#X connect 6 0 7 0;
#X connect 7 0 8 0;
#X connect 7 0 9 0;
#X connect 10 0 11 0;
#X connect 11 0 12 0;
#X connect 12 0 16 0;
#X connect 12 0 17 0;
#X connect 13 0 14 0;
#X connect 14 0 15 0;
#X connect 15 0 16 0;
#X connect 15 0 17 0;
#X restore 184 113 pd accDec;
#X obj 151 166 spigot;
#X obj 202 162 spigot;
#X obj 169 213 spigot;
#X floatatom 136 282 0 0 0 0 - - -;
#X obj 168 281 outlet;
#X obj 234 311 outlet;
#X obj 202 189 > 1.06;
#X obj 169 244 < 0.9;
#X text 52 371 This patch identifies which path of the hysteresis curve
the reduced velocity is on. It keeps it locked into this path between
the values of 0.9 and 1.06. Outwith these values both legs are approx
the same.;
#X text 67 -14 Goal - If output = 1 at any time then keep it at one
until other input = 1;
#X connect 0 0 9 0;
#X connect 0 0 1 0;
#X connect 1 0 3 0;
#X connect 1 0 16 0;
#X connect 1 0 17 0;
#X connect 2 0 1 0;
#X connect 2 0 13 0;
#X connect 2 0 23 0;
#X connect 6 0 8 0;
#X connect 6 0 10 0;
#X connect 6 0 11 0;
#X connect 7 0 6 0;
#X connect 9 0 6 0;
#X connect 10 0 15 0;
#X connect 11 0 15 1;
#X connect 12 0 13 0;
#X connect 13 0 14 0;
#X connect 13 0 21 0;
#X connect 15 0 4 0;
#X connect 15 0 16 1;
#X connect 15 1 5 0;
#X connect 15 1 17 1;
#X connect 16 0 18 0;
#X connect 17 0 22 0;
#X connect 18 0 23 0;
#X connect 22 0 18 1;
#X connect 23 0 19 0;
#X connect 23 0 12 0;
#X connect 23 0 20 0;
#X restore 58 439 pd Hyst1;
#X obj 11 246 sig~ 1;
#X obj 26 332 exp~;
#X obj -4 378 /~;
#X obj 11 353 +~;
#X obj -153 333 -~ 1;
#X obj -137 180 sig~ 1;
#X obj -123 266 exp~;
#X obj -153 312 /~;
#X obj -138 287 +~;
#X obj -19 435 *~;
#X obj -50 177 sig~ 1;
#X obj -35 264 exp~;
#X obj -65 310 /~;
#X obj -50 285 +~;
#X obj -65 355 +~ 1;
#X obj -65 378 spigot~;
#X obj -41 408 +~;
#X obj 72 495 +~;
#X msg 614 64 \$1 20;
#X obj 617 43 hsl 128 15 0.01 10 1 0 empty empty empty -2 -8 0 10 -262144
-1 -1 0 1;
#X floatatom 658 68 0 0 0 0 - - -;
#X obj 621 13 line;
#X obj -19 458 spigot~;
#X obj -65 333 *~ 0.2;
#X obj 291 96 r myMet;
#X obj 291 117 snapshot~;
#X floatatom 291 138 0 0 0 0 - - -;
#X obj 209 382 spigot~;
#X obj 209 338 -~ 1;
#X obj 209 358 *~ -1;
#X obj 224 186 sig~ 1;
#X obj 239 271 exp~;
#X obj 209 317 /~;
#X obj 224 292 +~;
#X obj 194 409 +~;
#X floatatom 270 160 0 0 0 0 - - -;
#X obj 304 291 -~ 1.2;
#X obj 26 288 -~ 1.2;
#X obj 614 86 line~;
#X obj 871 -5 inlet;
#X obj 26 309 *~ 50;
#X obj 304 313 *~ 50;
#X obj 814 202 inlet;
#X obj -35 219 -~ 1.02;
#X obj -123 220 -~ 0.92;
#X obj -123 242 *~ 33;
#X obj -153 353 *~ -1.3;
#X obj -35 241 *~ 200;
#X obj 239 248 *~ 33;
#X msg 566 -22 1.6;
#X obj 151 248 *~ 200;
#X msg 520 -24 0.4;
#X obj 799 112 r \$0-mass;
#X obj 799 135 / 1.225;
#X msg 799 158 \$1 20;
#X obj 799 177 line~;
#X text 853 139 m* = rho_m / rho_f;
#X floatatom 874 264 0 0 0 0 - - -;
#X obj 829 245 t f b;
#X obj 194 454 spigot~;
#X obj 814 268 *;
#X obj 635 363 r~ \$0-myRey;
#X obj 587 363 r myMet;
#X obj 587 386 snapshot~;
#X floatatom 630 409 0 0 0 0 - - -;
#X obj 548 431 spigot~;
#X obj 443 430 spigot~;
#X obj 563 250 r~ \$0-myRey;
#X obj 563 293 pow~ 0.36;
#X obj 614 271 sig~ 0.36;
#X obj 563 314 *~ 0.41;
#X obj 563 334 log~ 10;
#X obj 613 313 sig~ 10;
#X obj 814 308 line~;
#X obj 799 331 *~;
#X obj 799 371 s~ \$0-myApl;
#X obj 458 281 r~ \$0-myApl;
#X obj 458 347 *~;
#X obj 458 303 *~ -1.29;
#X obj 443 408 *~ 0.63;
#X obj 443 262 sig~ 1;
#X obj 443 324 +~;
#X obj 473 324 r~ \$0-myApl;
#X obj 443 386 +~;
#X obj 563 118 r~ \$0-myApl;
#X obj 563 184 *~;
#X obj 548 99 sig~ 1;
#X obj 548 161 +~;
#X obj 578 161 r~ \$0-myApl;
#X obj 548 228 +~;
#X obj 563 140 *~ -1.12;
#X obj 563 205 *~ 0.3;
#X obj 458 367 *~ 0.59;
#X obj 548 356 *~;
#X obj 72 516 /~ 1.2;
#X obj 482 458 +~;
#X obj 239 227 -~ 0.9;
#X obj 248 138 < 0.86;
#X obj 151 226 -~ 0.89;
#X obj -64 142 >= 0.995;
#X floatatom 925 219 0 0 0 0 - - -;
#X text 128 643 A/d;
#X text -198 62 Sigmoid functions replicating the inital branch of
the hysteresis curve.;
#X text 151 60 Sigmoid functions replicating the lower branch of the
hysteresis curve.;
#X text 681 23 Test objects;
#X obj -153 374 spigot~;
#X text -303 477 By time decent kicks in the other sigmoids will be
= 1 therefore the multiplication of the decending sigmoid rather than
adding.;
#X text 855 199 Damping input;
#X text 864 286 Harmonic number;
#X text -117 521 Normalises the Hysteresis plot;
#X obj -171 17 s~ \$0-thisV;
#X obj -30 80 r~ \$0-thisV;
#X obj -123 199 r~ \$0-thisV;
#X obj -35 197 r~ \$0-thisV;
#X obj 26 266 r~ \$0-thisV;
#X obj 58 403 r~ \$0-thisV;
#X obj -6 560 r~ \$0-thisV;
#X obj 151 203 r~ \$0-thisV;
#X obj 270 76 r~ \$0-thisV;
#X obj 238 205 r~ \$0-thisV;
#X obj 304 269 r~ \$0-thisV;
#X text 424 241 Low Re route;
#X text 468 125 High Re route;
#X text 715 422 Clipped to match the range given in Govardhan paper
as well as to stop the value exploding after 1.5;
#X obj 587 409 <= 500;
#X msg 622 -11 1.6 30000;
#X msg 695 0 0.4 30000;
#X obj -171 -5 inlet~;
#X obj 72 560 clip~ 0 2;
#X obj 799 352 clip~ 0 1.5;
#X obj 72 538 *~;
#X obj 871 17 s \$0-thisHarm;
#X obj 829 224 r \$0-thisHarm;
#X msg 814 289 \$1 40;
#X obj 72 581 snapshot~;
#X obj 164 562 r myMet;
#X obj 72 622 vline~;
#X msg 72 601 \$1 50;
#X text 124 607 Smoothing;
#X text 234 594 This patch takes the Reduced Velocity V value \, (\$0-thisV)
and calculates the corresponding value of maximum vibration \, A/d.
;
#X text 493 491 Calculates Amax;
#X connect 0 0 2 0;
#X connect 0 0 3 0;
#X connect 1 0 3 1;
#X connect 2 0 10 1;
#X connect 3 0 2 1;
#X connect 4 0 5 0;
#X connect 5 0 11 0;
#X connect 6 0 8 0;
#X connect 6 0 9 0;
#X connect 7 0 9 1;
#X connect 8 0 4 0;
#X connect 9 0 8 1;
#X connect 10 0 79 0;
#X connect 11 0 54 0;
#X connect 12 0 13 0;
#X connect 13 0 14 0;
#X connect 13 0 119 0;
#X connect 19 0 18 0;
#X connect 19 0 42 1;
#X connect 19 1 17 0;
#X connect 19 1 79 1;
#X connect 20 0 22 0;
#X connect 20 0 23 0;
#X connect 21 0 23 1;
#X connect 22 0 29 1;
#X connect 23 0 22 1;
#X connect 24 0 66 0;
#X connect 25 0 27 0;
#X connect 25 0 28 0;
#X connect 26 0 28 1;
#X connect 27 0 24 0;
#X connect 28 0 27 1;
#X connect 29 0 42 0;
#X connect 30 0 32 0;
#X connect 30 0 33 0;
#X connect 31 0 33 1;
#X connect 32 0 43 0;
#X connect 33 0 32 1;
#X connect 34 0 35 0;
#X connect 35 1 36 1;
#X connect 36 0 29 0;
#X connect 37 0 114 0;
#X connect 38 0 58 0;
#X connect 39 0 38 0;
#X connect 39 0 40 0;
#X connect 41 0 39 0;
#X connect 42 1 37 0;
#X connect 43 0 34 0;
#X connect 44 0 45 0;
#X connect 45 0 46 0;
#X connect 45 0 117 0;
#X connect 47 1 54 1;
#X connect 48 0 49 0;
#X connect 49 0 47 0;
#X connect 50 0 52 0;
#X connect 50 0 53 0;
#X connect 51 0 53 1;
#X connect 52 0 48 0;
#X connect 53 0 52 1;
#X connect 54 0 10 0;
#X connect 56 0 61 0;
#X connect 57 0 60 0;
#X connect 59 0 151 0;
#X connect 60 0 21 0;
#X connect 61 0 1 0;
#X connect 62 0 80 0;
#X connect 62 0 120 0;
#X connect 63 0 67 0;
#X connect 64 0 65 0;
#X connect 65 0 26 0;
#X connect 66 0 125 0;
#X connect 67 0 31 0;
#X connect 68 0 51 0;
#X connect 69 0 41 0;
#X connect 70 0 7 0;
#X connect 71 0 41 0;
#X connect 72 0 73 0;
#X connect 73 0 74 0;
#X connect 74 0 75 0;
#X connect 75 0 94 0;
#X connect 78 0 80 1;
#X connect 78 1 80 0;
#X connect 79 1 37 1;
#X connect 80 0 153 0;
#X connect 81 0 83 0;
#X connect 82 0 83 0;
#X connect 83 0 84 0;
#X connect 83 0 144 0;
#X connect 85 0 115 1;
#X connect 86 1 115 0;
#X connect 87 0 88 0;
#X connect 88 0 90 0;
#X connect 89 0 88 1;
#X connect 90 0 91 0;
#X connect 91 0 113 1;
#X connect 92 0 91 1;
#X connect 93 0 94 1;
#X connect 94 0 149 0;
#X connect 96 0 98 0;
#X connect 97 0 112 0;
#X connect 98 0 101 1;
#X connect 99 0 86 0;
#X connect 100 0 101 0;
#X connect 101 0 103 0;
#X connect 102 0 97 0;
#X connect 102 0 97 1;
#X connect 103 0 99 0;
#X connect 104 0 110 0;
#X connect 105 0 111 0;
#X connect 106 0 107 0;
#X connect 107 0 109 0;
#X connect 108 0 105 0;
#X connect 108 0 105 1;
#X connect 109 0 113 0;
#X connect 110 0 107 1;
#X connect 111 0 109 1;
#X connect 112 0 103 1;
#X connect 113 0 85 0;
#X connect 114 0 150 0;
#X connect 115 0 150 1;
#X connect 116 0 68 0;
#X connect 117 0 11 1;
#X connect 117 0 47 1;
#X connect 117 0 55 0;
#X connect 118 0 70 0;
#X connect 119 0 35 1;
#X connect 119 0 125 1;
#X connect 125 0 36 0;
#X connect 131 0 13 0;
#X connect 132 0 64 0;
#X connect 133 0 63 0;
#X connect 134 0 57 0;
#X connect 135 0 19 0;
#X connect 136 0 16 0;
#X connect 137 0 118 0;
#X connect 138 0 45 0;
#X connect 139 0 116 0;
#X connect 140 0 56 0;
#X connect 144 0 85 1;
#X connect 144 0 86 1;
#X connect 145 0 41 0;
#X connect 146 0 41 0;
#X connect 147 0 130 0;
#X connect 148 0 16 1;
#X connect 148 0 154 0;
#X connect 149 0 95 0;
#X connect 150 0 148 0;
#X connect 152 0 78 0;
#X connect 152 0 77 0;
#X connect 153 0 93 0;
#X connect 154 0 157 0;
#X connect 155 0 154 0;
#X connect 156 0 15 0;
#X connect 157 0 156 0;
#X restore 1161 268 pd SimpHyst;
#X obj 1161 207 r~ \$0-redVel;
#X obj 1192 227 r \$0-dampPar;
#X obj 1224 246 r \$0-harmNo;
#X obj 1161 288 s~ \$0-AdVal;
#X obj 1265 484 r~ \$0-AdVal;
#N canvas 361 196 756 527 FMout 0;
#X obj 170 -2 inlet~;
#X obj -67 61 osc~;
#X obj -67 384 throw~ l;
#X obj -56 363 throw~ r;
#X obj -67 -10 inlet~;
#X obj -52 15 inlet~;
#X obj -67 343 spigot~;
#X obj -67 37 +~;
#X obj -48 188 osc~;
#X obj -67 232 +~;
#X obj -3 118 r mod;
#X obj -48 95 inlet~;
#X obj -33 118 osc~;
#X obj -33 142 *~ 1;
#X obj -48 164 +~;
#X text -40 31 Modulation frequency;
#X text 81 -24 A/d - max vibration;
#X text -46 80 Difference frequency;
#X obj 170 20 s~ \$0-myAd;
#X obj -52 251 r~ \$0-myAd;
#X text -191 -32 Fv \, vortex shedding freq;
#X obj 1 320 inlet;
#X text 35 322 on/off;
#X obj -67 321 *~ 5e-05;
#X obj -67 273 *~;
#X text -329 265 Vibration value as calculated in SimpHyst;
#X text -399 56 High Frequency FM Spectrum around the vortex shedding
frequency;
#X text -405 204 Low Frequency spectrum around the difference frequency
;
#X text -432 328 Gain value to strike a balance between the FM spectrums
and the output from the dipoles due to the Aeolian Tone;
#X text -235 449 Patch that calculates the full FM spectrum and scales
it according to the vibration amount A as well as a ratio to the Aeolian
tone dipoles.;
#X text 6 376 Send signal to the DAC;
#X text 11 203 LF Spectrum is at lower level that HF one;
#X obj -48 208 *~ 0.1;
#X obj -67 300 *~;
#X obj -36 274 r~ \$0-reyGain;
#X connect 0 0 18 0;
#X connect 1 0 9 0;
#X connect 4 0 7 0;
#X connect 5 0 7 1;
#X connect 6 0 2 0;
#X connect 6 0 3 0;
#X connect 7 0 1 0;
#X connect 8 0 32 0;
#X connect 9 0 24 0;
#X connect 10 0 13 1;
#X connect 11 0 14 0;
#X connect 11 0 12 0;
#X connect 12 0 13 0;
#X connect 13 0 14 1;
#X connect 14 0 8 0;
#X connect 19 0 24 1;
#X connect 21 0 6 1;
#X connect 23 0 6 0;
#X connect 24 0 33 0;
#X connect 32 0 9 1;
#X connect 33 0 23 0;
#X connect 34 0 33 1;
#X restore 1221 504 pd FMout;
#X obj 727 526 s~ \$0-vorFreq;
#X obj 474 647 r~ \$0-vorFreq;
#X obj 1221 401 r~ \$0-vorFreq;
#X obj 1039 419 r~ \$0-vorFreq;
#X obj 1176 650 r \$0-vorFreq;
#X obj 808 506 s \$0-vorFreq;
#X text 773 299 Calcs Harmonic No;
#X obj 906 622 r \$0-harmNo;
#X obj 885 602 r~ \$0-thisNatF;
#X obj 885 643 *~ 1;
#X obj 870 582 r~ \$0-vorFreq;
#X obj 870 663 /~;
#X obj 921 685 r myMet;
#X obj 870 705 snapshot~;
#X obj 870 725 == 1;
#X obj 870 684 spigot~;
#X obj 909 663 r \$0-onOff;
#X obj 1257 684 r myMet;
#X obj 1257 704 snapshot~;
#X floatatom 1257 725 0 0 0 0 - - -;
#X obj 964 419 r \$0-harmNo;
#X obj 402 498 r~ \$0-vorFreq;
#X floatatom 692 302 0 0 0 0 - - -;
#X floatatom 782 260 0 0 0 0 - - -;
#X obj 808 467 r~ \$0-redVel;
#X obj 249 204 r myMet;
#X obj 249 227 snapshot~;
#X floatatom 249 251 0 0 0 0 - - -;
#X obj 535 210 r myMet;
#X obj 535 233 snapshot~;
#X floatatom 535 257 0 0 0 0 - - -;
#X obj 552 469 -~ 1;
#X obj 568 316 sig~ 1;
#X obj 582 402 exp~;
#X obj 552 448 /~;
#X obj 567 423 +~;
#X obj 552 489 *~ -1;
#X obj 582 337 r~ \$0-myRey;
#X obj 610 552 r myMet;
#X obj 610 575 snapshot~;
#X floatatom 610 599 0 0 0 0 - - -;
#X obj 552 511 s~ \$0-reyGain;
#X obj 582 378 *~ 0.5;
#X obj 582 356 -~ 43;
#X connect 0 0 4 0;
#X connect 0 0 32 0;
#X connect 3 0 19 0;
#X connect 3 0 36 0;
#X connect 6 0 90 0;
#X connect 8 0 5 0;
#X connect 8 0 117 0;
#X connect 9 0 92 0;
#X connect 11 0 72 0;
#X connect 15 0 58 1;
#X connect 16 0 58 4;
#X connect 17 0 20 0;
#X connect 17 0 60 0;
#X connect 18 0 21 0;
#X connect 18 0 61 0;
#X connect 29 0 30 0;
#X connect 29 0 35 0;
#X connect 39 0 58 0;
#X connect 40 0 58 3;
#X connect 41 0 58 5;
#X connect 45 0 9 0;
#X connect 46 0 92 1;
#X connect 47 0 85 1;
#X connect 47 0 110 0;
#X connect 47 0 138 0;
#X connect 48 0 85 0;
#X connect 48 0 137 0;
#X connect 50 0 70 0;
#X connect 51 0 50 0;
#X connect 52 0 57 1;
#X connect 53 0 57 3;
#X connect 54 0 57 0;
#X connect 55 0 57 2;
#X connect 56 0 57 5;
#X connect 57 0 38 0;
#X connect 57 1 37 0;
#X connect 58 0 42 0;
#X connect 62 0 57 6;
#X connect 63 0 57 7;
#X connect 64 0 58 7;
#X connect 65 0 58 6;
#X connect 66 0 68 0;
#X connect 67 0 66 0;
#X connect 69 0 57 4;
#X connect 70 0 9 1;
#X connect 71 0 58 2;
#X connect 72 0 73 0;
#X connect 73 0 12 0;
#X connect 73 0 44 0;
#X connect 75 0 76 0;
#X connect 77 0 51 0;
#X connect 79 0 80 0;
#X connect 81 0 82 0;
#X connect 82 0 50 1;
#X connect 82 0 70 1;
#X connect 85 0 86 0;
#X connect 85 0 88 0;
#X connect 87 0 88 0;
#X connect 88 0 89 0;
#X connect 88 0 113 0;
#X connect 90 0 7 0;
#X connect 90 1 43 0;
#X connect 90 1 177 0;
#X connect 90 2 10 0;
#X connect 90 2 180 0;
#X connect 91 0 90 1;
#X connect 92 0 33 0;
#X connect 92 1 34 0;
#X connect 95 0 97 0;
#X connect 96 0 97 1;
#X connect 97 0 99 0;
#X connect 98 0 99 0;
#X connect 99 0 100 0;
#X connect 99 0 174 0;
#X connect 100 0 115 0;
#X connect 101 0 105 0;
#X connect 101 0 126 0;
#X connect 103 0 135 0;
#X connect 103 1 133 0;
#X connect 104 0 108 0;
#X connect 104 0 107 0;
#X connect 108 0 106 0;
#X connect 108 0 151 0;
#X connect 108 1 156 0;
#X connect 109 0 129 0;
#X connect 109 0 139 0;
#X connect 114 0 130 0;
#X connect 114 0 140 0;
#X connect 115 0 101 0;
#X connect 115 0 173 0;
#X connect 116 0 117 0;
#X connect 117 0 118 0;
#X connect 120 0 66 1;
#X connect 122 0 111 0;
#X connect 122 0 169 0;
#X connect 124 0 108 1;
#X connect 125 0 112 0;
#X connect 127 0 102 0;
#X connect 128 0 143 0;
#X connect 131 0 150 3;
#X connect 132 0 74 1;
#X connect 134 0 150 1;
#X connect 136 0 150 2;
#X connect 143 0 142 0;
#X connect 143 1 121 0;
#X connect 143 2 123 0;
#X connect 144 0 148 0;
#X connect 145 0 144 0;
#X connect 146 0 144 1;
#X connect 147 0 144 2;
#X connect 149 0 150 4;
#X connect 152 0 74 0;
#X connect 153 0 150 0;
#X connect 154 0 103 1;
#X connect 155 0 93 0;
#X connect 158 0 160 1;
#X connect 159 0 160 0;
#X connect 160 0 162 1;
#X connect 161 0 162 0;
#X connect 162 0 166 0;
#X connect 163 0 164 0;
#X connect 164 0 165 0;
#X connect 165 0 94 0;
#X connect 165 0 141 0;
#X connect 166 0 164 0;
#X connect 167 0 166 1;
#X connect 168 0 169 0;
#X connect 169 0 170 0;
#X connect 171 0 103 0;
#X connect 172 0 82 0;
#X connect 175 0 108 2;
#X connect 176 0 177 0;
#X connect 177 0 178 0;
#X connect 179 0 180 0;
#X connect 180 0 181 0;
#X connect 182 0 187 0;
#X connect 183 0 185 0;
#X connect 183 0 186 0;
#X connect 184 0 186 1;
#X connect 185 0 182 0;
#X connect 186 0 185 1;
#X connect 187 0 190 0;
#X connect 187 0 192 0;
#X connect 188 0 194 0;
#X connect 189 0 190 0;
#X connect 190 0 191 0;
#X connect 193 0 184 0;
#X connect 194 0 193 0;