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