changeset 147:6924de90e725

Correct implementation of the Goldstein Intensity equations. Possibly needs to be scaled for raw sound level. Still with auto elevation
author Rod Selfridge <r.selfridge@qmul.ac.uk>
date Fri, 04 Dec 2015 12:07:08 +0000
parents 2c43c7e0d377
children b212009af7f7
files .DS_Store June/.DS_Store scene demo/freqCalcCyl3No_D1Mach.pd scene demo/testBed.pd
diffstat 4 files changed, 387 insertions(+), 351 deletions(-) [+]
line wrap: on
line diff
Binary file .DS_Store has changed
Binary file June/.DS_Store has changed
--- a/scene demo/freqCalcCyl3No_D1Mach.pd	Sun Nov 29 18:18:14 2015 +0000
+++ b/scene demo/freqCalcCyl3No_D1Mach.pd	Fri Dec 04 12:07:08 2015 +0000
@@ -1,4 +1,4 @@
-#N canvas 9 24 1402 829 10;
+#N canvas 9 24 1396 823 10;
 #X text 567 158 Mass Density of Air;
 #X text 96 418 Frequency (Hz);
 #X obj 689 159 *~ 1.225;
@@ -308,7 +308,7 @@
 #X obj 292 122 r~ \$0-str;
 #X obj 312 162 r \$0-leng;
 #X obj 331 204 r \$0-dist;
-#N canvas 290 27 1072 725 GoldfreqGain 0;
+#N canvas 336 65 1238 721 GoldfreqGain 0;
 #N canvas 759 125 286 294 pow6 0;
 #X obj 47 67 *~;
 #X obj 76 67 *~;
@@ -377,43 +377,43 @@
 #X obj 219 68 *~;
 #X obj 219 102 *~ 1;
 #X obj 404 71 *;
-#X text 424 30 Distance;
-#X floatatom 369 72 5 0 0 0 - - -;
-#X text 586 593 Calculates Drag Dipole gain;
+#X text 471 2 Distance;
+#X floatatom 451 62 5 0 0 0 - - -;
+#X text 724 562 Calculates Drag Dipole gain;
 #X text 48 626 Calculates Lift Dipole gain;
 #X obj 173 8 inlet~;
 #X obj 219 7 inlet~;
 #X text 283 38 Diameter;
 #X obj 277 53 inlet;
-#X obj 404 46 inlet;
+#X obj 451 18 inlet;
 #X obj 219 646 outlet~;
-#X obj 620 568 outlet~;
+#X obj 758 537 outlet~;
 #X obj 240 159 inlet;
 #X text 278 154 Length;
 #X obj 219 185 *~ 1;
-#X obj 234 430 sig~;
-#X obj 292 427 sig~;
+#X obj 290 374 sig~;
+#X obj 322 438 sig~;
 #X obj 287 563 loadbang;
 #X obj 287 584 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 1
 1;
 #X obj 287 602 metro 10;
-#X obj 234 456 /~ 360;
-#X obj 234 502 *~;
-#X obj 219 525 *~;
+#X obj 234 468 /~ 360;
+#X obj 234 517 *~;
+#X obj 219 540 *~;
 #X obj 287 623 snapshot~;
 #X floatatom 287 643 10 0 0 0 - - -;
-#X obj 732 494 loadbang;
-#X obj 732 515 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 1
+#X obj 398 512 loadbang;
+#X obj 398 533 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 1
 1;
-#X obj 732 533 metro 10;
-#X obj 732 554 snapshot~;
-#X floatatom 732 574 10 0 0 0 - - -;
+#X obj 398 551 metro 10;
+#X obj 398 572 snapshot~;
+#X floatatom 398 592 10 0 0 0 - - -;
 #X obj 149 419 loadbang;
 #X obj 149 440 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 1
 1;
 #X obj 149 458 metro 10;
 #X obj 149 479 snapshot~;
-#X floatatom 149 499 5 0 0 0 - - -;
+#X floatatom 112 524 10 0 0 0 - - -;
 #X obj 752 19 inlet;
 #X obj 851 21 inlet;
 #X obj 947 24 inlet;
@@ -434,20 +434,20 @@
 #X obj 219 130 *~ 1.225;
 #X text 93 126 Mass Density of Air;
 #X text 147 227 Sqrt(2xpi);
-#X obj 234 478 sin~;
-#X obj 292 455 /~ 360;
-#X obj 292 501 *~;
-#X obj 292 477 cos~;
-#X obj 219 551 *~;
+#X obj 234 493 sin~;
+#X obj 322 466 /~ 360;
+#X obj 322 512 *~;
+#X obj 322 488 cos~;
+#X obj 219 566 *~;
 #X obj 404 96 * 4.05513e+07;
 #X text 355 115 Speed of Sound to power 3;
 #X obj 404 149 * 32;
-#X obj 547 190 r SIG_MACH;
+#X obj 553 189 r SIG_MACH;
 #X obj 518 189 cos~;
 #X obj 518 212 *~;
 #X obj 466 213 sig~ 1;
 #X obj 503 243 -~;
-#N canvas 759 125 286 289 pow4 0;
+#N canvas 1150 227 286 289 pow4 0;
 #X obj 47 67 *~;
 #X obj 76 67 *~;
 #X obj 76 35 inlet~;
@@ -483,58 +483,72 @@
 #X obj 429 376 snapshot~;
 #X floatatom 429 396 10 0 0 0 - - -;
 #X obj 219 346 /~;
-#X obj 134 375 s~ \$0-aGainG;
-#X obj 665 469 r~ \$0-aGainG;
-#X obj 620 543 *~ 0.1;
-#X obj 585 371 +~ 90;
-#X obj 585 394 /~ 360;
-#X obj 585 440 *~;
-#X obj 585 416 sin~;
-#X obj 635 390 /~ 360;
-#X obj 635 436 *~;
-#X obj 635 412 cos~;
-#X obj 620 467 *~;
-#X obj 620 506 *~;
-#X text 548 4 Azimuth;
-#X text 654 3 Elevation;
+#X obj 133 287 s~ \$0-aGainG;
+#X obj 872 246 r~ \$0-aGainG;
+#X obj 758 512 *~ 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 647 1 Azimuth;
+#X text 546 3 Elevation;
 #X obj 549 21 inlet;
 #X obj 651 19 inlet;
 #X floatatom 549 68 5 0 0 0 - - -;
 #X floatatom 651 68 5 0 0 0 - - -;
-#X obj 554 44 s \$0-this_azim;
-#X obj 658 44 s \$0-this_elev;
-#X obj 234 378 r \$0-this_azim;
-#X obj 292 400 r \$0-this_elev;
-#X obj 585 321 r \$0-this_azim;
-#X obj 635 343 r \$0-this_elev;
-#X obj 585 345 sig~;
-#X obj 635 367 sig~;
-#X obj 518 113 r \$0-this_azim;
-#X obj 518 137 sig~;
-#X obj 518 163 /~ 360;
+#X obj 322 417 r \$0-this_azim;
+#X obj 290 352 r \$0-this_elev;
+#X obj 773 314 r \$0-this_azim;
+#X obj 723 256 r \$0-this_elev;
+#X obj 723 280 sig~;
+#X obj 773 336 sig~;
+#X obj 518 117 sig~;
 #X text 297 695 comment;
+#X obj 518 148 r~ plotElev;
+#X obj 234 439 r~ plotElev;
+#X obj 150 588 s~ plotOPF;
+#X obj 676 541 s~ plotOPD;
+#X obj 554 44 s \$0-this_elev;
+#X obj 658 44 s \$0-this_azim;
+#X obj 518 93 r \$0-this_elev;
+#X obj 458 40 s \$0-thisDist;
+#X obj 887 268 r \$0-thisDist;
+#X obj 370 39 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 588 167 Remember - Goldstein moves cylinder;
+#X obj 656 302 r~ plotElev;
+#X floatatom 359 98 5 0 0 0 - - -;
+#X obj 518 170 /~ 360;
+#X text 684 638;
+#X obj 758 475 *~;
 #X connect 0 0 2 0;
 #X connect 1 0 2 1;
 #X connect 2 0 3 0;
 #X connect 3 0 56 0;
 #X connect 4 0 64 0;
+#X connect 4 0 124 0;
 #X connect 9 0 1 0;
 #X connect 9 0 1 1;
 #X connect 10 0 0 0;
 #X connect 12 0 53 0;
-#X connect 13 0 4 1;
-#X connect 13 0 4 0;
 #X connect 13 0 6 0;
+#X connect 13 0 113 0;
 #X connect 16 0 18 1;
 #X connect 18 0 55 0;
-#X connect 19 0 24 0;
-#X connect 20 0 60 0;
 #X connect 21 0 22 0;
 #X connect 22 0 23 0;
 #X connect 23 0 27 0;
 #X connect 24 0 59 0;
 #X connect 25 0 26 1;
-#X connect 25 0 37 0;
 #X connect 26 0 63 0;
 #X connect 27 0 28 0;
 #X connect 29 0 30 0;
@@ -553,6 +567,7 @@
 #X connect 41 0 50 0;
 #X connect 53 0 3 1;
 #X connect 55 0 80 0;
+#X connect 55 0 81 0;
 #X connect 56 0 18 0;
 #X connect 59 0 25 0;
 #X connect 59 0 25 1;
@@ -562,6 +577,7 @@
 #X connect 62 0 61 1;
 #X connect 63 0 14 0;
 #X connect 63 0 27 0;
+#X connect 63 0 108 0;
 #X connect 64 0 66 0;
 #X connect 66 0 73 0;
 #X connect 67 0 69 1;
@@ -578,9 +594,9 @@
 #X connect 77 0 78 0;
 #X connect 78 0 79 0;
 #X connect 80 0 26 0;
-#X connect 80 0 81 0;
-#X connect 82 0 92 1;
+#X connect 82 0 121 0;
 #X connect 83 0 15 0;
+#X connect 83 0 109 0;
 #X connect 84 0 85 0;
 #X connect 85 0 87 0;
 #X connect 86 0 91 0;
@@ -590,22 +606,31 @@
 #X connect 89 0 91 1;
 #X connect 90 0 89 0;
 #X connect 90 0 89 1;
-#X connect 91 0 92 0;
-#X connect 92 0 83 0;
-#X connect 92 0 32 0;
+#X connect 91 0 127 0;
+#X connect 94 0 96 0;
+#X connect 94 0 110 0;
 #X connect 95 0 97 0;
-#X connect 95 0 99 0;
-#X connect 96 0 98 0;
-#X connect 96 0 100 0;
-#X connect 101 0 19 0;
-#X connect 102 0 20 0;
-#X connect 103 0 105 0;
-#X connect 104 0 106 0;
-#X connect 105 0 84 0;
-#X connect 106 0 88 0;
-#X connect 107 0 108 0;
-#X connect 108 0 109 0;
-#X connect 109 0 68 0;
+#X connect 95 0 111 0;
+#X connect 98 0 20 0;
+#X connect 99 0 19 0;
+#X connect 100 0 103 0;
+#X connect 101 0 102 0;
+#X connect 103 0 88 0;
+#X connect 106 0 125 0;
+#X connect 107 0 24 0;
+#X connect 112 0 104 0;
+#X connect 114 0 116 0;
+#X connect 114 0 116 1;
+#X connect 115 0 4 0;
+#X connect 115 0 4 1;
+#X connect 116 0 117 0;
+#X connect 117 0 119 0;
+#X connect 119 0 120 0;
+#X connect 120 0 121 1;
+#X connect 121 0 127 1;
+#X connect 123 0 84 0;
+#X connect 125 0 68 0;
+#X connect 127 0 83 0;
 #X restore 293 287 pd GoldfreqGain;
 #N canvas 732 187 570 435 Qvalues 0;
 #X obj 50 93 inlet~;
@@ -829,11 +854,11 @@
 #X obj 268 637 r~ \$0-str;
 #X obj 291 681 r \$0-leng;
 #X obj 337 771 r \$0-dist;
-#N canvas 397 23 1006 797 GoldnoiseGain 0;
+#N canvas 904 44 1006 797 GoldnoiseGain 1;
 #X text -21029 166 Mass Density of Air \, squared;
 #X obj -20846 141 *~ 1;
-#X obj -20722 151 *;
-#X text -20722 104 Distance;
+#X obj -20750 161 *;
+#X text -20750 114 Distance;
 #N canvas 759 125 235 275 pow8 0;
 #X obj 47 67 *~;
 #X obj 76 67 *~;
@@ -864,7 +889,7 @@
 #X restore -20846 69 pd pow8;
 #X obj -20846 44 inlet~;
 #X obj -20810 101 inlet;
-#X obj -20722 125 inlet;
+#X obj -20750 135 inlet;
 #X obj -20846 679 outlet~;
 #X text -20785 63 Gain proportional to windspeed to power 8 for spectrum
 ;
@@ -894,7 +919,7 @@
 #X obj -20342 77 s~ \$0-this_elev;
 #X obj -20810 122 *;
 #X obj -20846 169 *~ 1.225;
-#X obj -20604 185 r~ \$0-this_azim;
+#X obj -20487 110 r~ \$0-this_azim;
 #N canvas 759 125 250 309 pow5 0;
 #X obj 47 67 *~;
 #X obj 76 35 inlet~;
@@ -919,8 +944,8 @@
 #X connect 8 0 9 0;
 #X connect 9 0 2 0;
 #X connect 9 0 3 0;
-#X restore -20685 437 pd pow5;
-#X obj -20685 413 sig~ 343.56;
+#X restore -20750 529 pd pow5;
+#X obj -20750 505 sig~ 343.56;
 #N canvas 875 261 250 309 pow5 0;
 #X obj 47 67 *~;
 #X obj 76 35 inlet~;
@@ -945,22 +970,22 @@
 #X connect 8 0 9 0;
 #X connect 9 0 2 0;
 #X connect 9 0 3 0;
-#X restore -20650 356 pd pow5;
-#X obj -20604 211 /~ 360;
-#X obj -20604 233 cos~;
-#X obj -20589 255 r SIG_MACH;
-#X obj -20589 279 sig~;
-#X obj -20604 304 *~;
-#X obj -20650 303 sig~ 1;
-#X obj -20650 330 -~;
-#X obj -20685 232 sig~ 3.1416;
-#X obj -20685 257 *~;
-#X obj -20700 209 sig~ 16;
-#X obj -20700 281 *~;
-#X obj -20700 391 *~;
-#X obj -20700 464 *~;
-#X obj -20722 178 sig~;
-#X obj -20722 504 *~;
+#X restore -20715 455 pd pow5;
+#X obj -20669 305 /~ 360;
+#X obj -20669 332 cos~;
+#X obj -20654 354 r SIG_MACH;
+#X obj -20654 378 sig~;
+#X obj -20669 403 *~;
+#X obj -20715 402 sig~ 1;
+#X obj -20715 429 -~;
+#X obj -20750 376 sig~ 3.1416;
+#X obj -20750 401 *~;
+#X obj -20765 353 sig~ 16;
+#X obj -20765 425 *~;
+#X obj -20765 483 *~;
+#X obj -20765 556 *~;
+#X obj -20750 188 sig~;
+#X obj -20831 585 *~;
 #X obj -20846 611 /~;
 #X obj -20976 300 loadbang;
 #X obj -20976 321 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1
@@ -974,7 +999,13 @@
 #X obj -20622 587 metro 10;
 #X obj -20622 608 snapshot~;
 #X floatatom -20622 628 8 0 0 0 - - -;
-#X obj -20846 658 *~ 5000;
+#X obj -20654 262 r~ plotElev;
+#X obj -20925 705 s~ plotOPN;
+#X obj -20846 658 *~ 3000;
+#X obj -20669 283 -~;
+#X text -20617 290 Angle goes with the flow in Goldstein hence 90 -
+theta so that theta is same angle as dipole angles.;
+#X obj -20669 238 sig~ 180;
 #X connect 1 0 34 0;
 #X connect 2 0 52 0;
 #X connect 4 0 1 0;
@@ -999,7 +1030,6 @@
 #X connect 33 0 1 1;
 #X connect 34 0 54 0;
 #X connect 34 0 58 0;
-#X connect 35 0 39 0;
 #X connect 36 0 51 1;
 #X connect 37 0 36 0;
 #X connect 38 0 50 1;
@@ -1019,7 +1049,7 @@
 #X connect 51 0 53 1;
 #X connect 52 0 53 0;
 #X connect 53 0 54 1;
-#X connect 54 0 65 0;
+#X connect 54 0 67 0;
 #X connect 55 0 56 0;
 #X connect 56 0 57 0;
 #X connect 57 0 58 0;
@@ -1028,8 +1058,12 @@
 #X connect 61 0 62 0;
 #X connect 62 0 63 0;
 #X connect 63 0 64 0;
-#X connect 65 0 8 0;
-#X connect 65 0 18 0;
+#X connect 65 0 68 1;
+#X connect 67 0 8 0;
+#X connect 67 0 18 0;
+#X connect 67 0 66 0;
+#X connect 68 0 39 0;
+#X connect 70 0 68 0;
 #X restore 274 527 pd GoldnoiseGain;
 #X text 265 574 Calculates the gain of the wake;
 #X obj 1059 36 inlet;
@@ -1076,13 +1110,15 @@
 #X connect 1 0 2 0;
 #X connect 2 0 3 0;
 #X restore 144 128 pd QV;
-#X obj 105 173 *~ 3;
 #X text 49 367 Creates the shaped noise sound equivalent to a narrow
 band signal at the drag dipole fundamental frequency.;
+#X obj 105 173 *~ 2;
+#X floatatom 153 276 5 0 0 0 - - -;
 #X connect 0 0 4 0;
 #X connect 1 0 10 0;
 #X connect 2 0 13 0;
 #X connect 3 0 8 1;
+#X connect 3 0 16 0;
 #X connect 4 0 12 1;
 #X connect 5 0 8 0;
 #X connect 8 0 6 0;
@@ -1090,14 +1126,10 @@
 #X connect 9 0 12 0;
 #X connect 10 0 5 1;
 #X connect 11 0 10 1;
-#X connect 12 0 14 0;
+#X connect 12 0 15 0;
 #X connect 13 0 12 2;
-#X connect 14 0 5 0;
+#X connect 15 0 5 0;
 #X restore 1076 535 pd dragDiFunNo;
-#X obj 1102 579 r~ \$0-myFreq;
-#X obj 1075 559 r~ \$0-dragDiGain;
-#X obj 1129 599 r \$0-thisPan;
-#X obj 1156 619 r \$0-TuGain;
 #N canvas 1014 140 491 522 dragDiFun 0;
 #X obj 165 125 osc~;
 #X obj 165 298 throw~ l;
@@ -1113,6 +1145,7 @@
 #X obj 201 187 inlet;
 #X text 60 369 Generates the pure tone associated with the drag dipole
 fundamental frequency.;
+#X floatatom 212 256 5 0 0 0 - - -;
 #X connect 0 0 3 0;
 #X connect 3 0 4 0;
 #X connect 4 0 1 0;
@@ -1123,82 +1156,9 @@
 #X connect 8 0 5 0;
 #X connect 9 0 7 0;
 #X connect 10 0 4 1;
+#X connect 10 0 13 0;
 #X connect 11 0 6 1;
 #X restore 908 537 pd dragDiFun;
-#X obj 954 600 r \$0-thisPan;
-#X obj 908 557 r~ \$0-myFreq;
-#X obj 931 579 r~ \$0-dragDiGain;
-#X obj 977 620 r \$0-TuGain;
-#N canvas 854 207 464 503 dragDi1stNo 0;
-#X obj 124 84 inlet~;
-#X obj 120 198 inlet~;
-#X obj 161 105 inlet;
-#X obj 132 281 inlet;
-#X obj 105 282 *~;
-#X obj 105 347 throw~ l;
-#X obj 132 324 throw~ r;
-#X obj 105 303 fcpan;
-#X obj 105 65 noise~;
-#X obj 120 262 *~ 1;
-#X obj 141 241 r \$0-TuGain;
-#X obj 105 151 vcf~ 10;
-#N canvas 607 346 247 157 QV 0;
-#X obj 90 25 inlet;
-#X obj 90 47 * 5;
-#X obj 90 70 + 5;
-#X obj 90 93 outlet;
-#X connect 0 0 1 0;
-#X connect 1 0 2 0;
-#X connect 2 0 3 0;
-#X restore 144 128 pd QV;
-#X obj 105 173 *~ 3;
-#X obj 124 105 *~ 4;
-#X text 49 393 Creates the shaped noise sound equivalent to a narrow
-band signal at the drag dipole first harmonic frequency.;
-#X obj 120 220 *~ 0.8;
-#X connect 0 0 14 0;
-#X connect 1 0 16 0;
-#X connect 2 0 12 0;
-#X connect 3 0 7 1;
-#X connect 4 0 7 0;
-#X connect 7 0 5 0;
-#X connect 7 1 6 0;
-#X connect 8 0 11 0;
-#X connect 9 0 4 1;
-#X connect 10 0 9 1;
-#X connect 11 0 13 0;
-#X connect 12 0 11 2;
-#X connect 13 0 4 0;
-#X connect 14 0 11 1;
-#X connect 16 0 9 0;
-#X restore 1075 640 pd dragDi1stNo;
-#N canvas 1014 140 491 522 dragDi1st 0;
-#X obj 165 125 osc~;
-#X obj 165 298 throw~ l;
-#X obj 192 275 throw~ r;
-#X obj 165 232 *~;
-#X obj 165 253 fcpan;
-#X obj 180 209 *~ 1;
-#X obj 165 75 inlet~;
-#X obj 180 145 inlet~;
-#X obj 192 232 inlet;
-#X obj 201 187 inlet;
-#X obj 180 168 *~ 0.8;
-#X obj 165 100 *~ 4;
-#X text 60 369 Generates the pure tone associated with the drag dipole
-first harmonic frequency.;
-#X connect 0 0 3 0;
-#X connect 3 0 4 0;
-#X connect 4 0 1 0;
-#X connect 4 1 2 0;
-#X connect 5 0 3 1;
-#X connect 6 0 11 0;
-#X connect 7 0 10 0;
-#X connect 8 0 4 1;
-#X connect 9 0 5 1;
-#X connect 10 0 5 0;
-#X connect 11 0 0 0;
-#X restore 908 643 pd dragDi1st;
 #X obj 742 470 r~ \$0-myFreq;
 #X obj 769 490 r \$0-thisPan;
 #X obj 796 510 r \$0-TuGain;
@@ -1225,26 +1185,28 @@
 #X connect 1 0 2 0;
 #X connect 2 0 3 0;
 #X restore 144 128 pd QV;
-#X obj 105 173 *~ 3;
 #X obj 124 105 *~ 5;
-#X obj 120 220 *~ 0.6;
 #X text 49 393 Creates the shaped noise sound equivalent to a narrow
 band signal at the lift dipole second harmonic frequency.;
-#X connect 0 0 14 0;
+#X obj 120 220 *~ 0.1;
+#X obj 105 173 *~ 1;
+#X floatatom 174 303 5 0 0 0 - - -;
+#X connect 0 0 13 0;
 #X connect 1 0 15 0;
 #X connect 2 0 12 0;
 #X connect 3 0 7 1;
+#X connect 3 0 17 0;
 #X connect 4 0 7 0;
 #X connect 7 0 5 0;
 #X connect 7 1 6 0;
 #X connect 8 0 11 0;
 #X connect 9 0 4 1;
 #X connect 10 0 9 1;
-#X connect 11 0 13 0;
+#X connect 11 0 16 0;
 #X connect 12 0 11 2;
-#X connect 13 0 4 0;
-#X connect 14 0 11 1;
+#X connect 13 0 11 1;
 #X connect 15 0 9 0;
+#X connect 16 0 4 0;
 #X restore 715 531 pd liftDi2ndNo;
 #X obj 607 487 r \$0-thisPan;
 #X obj 561 444 r~ \$0-myFreq;
@@ -1261,20 +1223,22 @@
 #X obj 192 232 inlet;
 #X obj 201 187 inlet;
 #X obj 165 100 *~ 5;
-#X obj 180 168 *~ 0.6;
 #X text 60 369 Generates the pure tone associated with the lift dipole
 second harmonic frequency.;
+#X obj 180 168 *~ 0.1;
+#X floatatom 228 256 5 0 0 0 - - -;
 #X connect 0 0 3 0;
 #X connect 3 0 4 0;
 #X connect 4 0 1 0;
 #X connect 4 1 2 0;
 #X connect 5 0 3 1;
 #X connect 6 0 10 0;
-#X connect 7 0 11 0;
+#X connect 7 0 12 0;
 #X connect 8 0 4 1;
+#X connect 8 0 13 0;
 #X connect 9 0 5 1;
 #X connect 10 0 0 0;
-#X connect 11 0 5 0;
+#X connect 12 0 5 0;
 #X restore 561 530 pd liftDi2nd;
 #X obj 584 466 r~ \$0-liftDiGain;
 #X obj 608 596 r \$0-thisPan;
@@ -1293,20 +1257,22 @@
 #X obj 192 232 inlet;
 #X obj 201 187 inlet;
 #X obj 165 100 *~ 3;
-#X obj 180 168 *~ 0.8;
 #X text 60 369 Generates the pure tone associated with the lift dipole
 first harmonic frequency.;
+#X obj 180 168 *~ 0.5;
+#X floatatom 234 254 5 0 0 0 - - -;
 #X connect 0 0 3 0;
 #X connect 3 0 4 0;
 #X connect 4 0 1 0;
 #X connect 4 1 2 0;
 #X connect 5 0 3 1;
 #X connect 6 0 10 0;
-#X connect 7 0 11 0;
+#X connect 7 0 12 0;
 #X connect 8 0 4 1;
+#X connect 8 0 13 0;
 #X connect 9 0 5 1;
 #X connect 10 0 0 0;
-#X connect 11 0 5 0;
+#X connect 12 0 5 0;
 #X restore 562 639 pd liftDi1st;
 #X obj 742 574 r~ \$0-myFreq;
 #X obj 769 594 r \$0-thisPan;
@@ -1334,26 +1300,28 @@
 #X connect 1 0 2 0;
 #X connect 2 0 3 0;
 #X restore 144 128 pd QV;
-#X obj 105 173 *~ 3;
 #X text 49 393 Creates the shaped noise sound equivalent to a narrow
 band signal at the lift dipole second harmonic frequency.;
 #X obj 124 105 *~ 3;
-#X obj 120 220 *~ 0.8;
-#X connect 0 0 15 0;
-#X connect 1 0 16 0;
+#X obj 120 220 *~ 0.5;
+#X obj 105 173 *~ 1;
+#X floatatom 163 302 5 0 0 0 - - -;
+#X connect 0 0 14 0;
+#X connect 1 0 15 0;
 #X connect 2 0 12 0;
 #X connect 3 0 7 1;
+#X connect 3 0 17 0;
 #X connect 4 0 7 0;
 #X connect 7 0 5 0;
 #X connect 7 1 6 0;
 #X connect 8 0 11 0;
 #X connect 9 0 4 1;
 #X connect 10 0 9 1;
-#X connect 11 0 13 0;
+#X connect 11 0 16 0;
 #X connect 12 0 11 2;
-#X connect 13 0 4 0;
-#X connect 15 0 11 1;
-#X connect 16 0 9 0;
+#X connect 14 0 11 1;
+#X connect 15 0 9 0;
+#X connect 16 0 4 0;
 #X restore 715 635 pd liftDi1stNo;
 #X obj 608 708 r \$0-thisPan;
 #X obj 562 665 r~ \$0-myFreq;
@@ -1374,6 +1342,7 @@
 #X obj 180 168 *~ 1;
 #X text 60 369 Generates the pure tone associated with the lift dipole
 fundamental frequency.;
+#X floatatom 227 254 5 0 0 0 - - -;
 #X connect 0 0 3 0;
 #X connect 3 0 4 0;
 #X connect 4 0 1 0;
@@ -1382,6 +1351,7 @@
 #X connect 6 0 10 0;
 #X connect 7 0 11 0;
 #X connect 8 0 4 1;
+#X connect 8 0 13 0;
 #X connect 9 0 5 1;
 #X connect 10 0 0 0;
 #X connect 11 0 5 0;
@@ -1412,28 +1382,30 @@
 #X connect 1 0 2 0;
 #X connect 2 0 3 0;
 #X restore 144 128 pd QV;
-#X obj 105 173 *~ 3;
 #X obj 124 105 *~ 1;
 #X obj 120 220 *~ 1;
 #X text 49 393 Creates the shaped noise sound equivalent to a narrow
 band signal at the lift dipole fundamental frequency.;
-#X connect 0 0 14 0;
-#X connect 1 0 15 0;
+#X obj 105 173 *~ 1;
+#X floatatom 149 303 5 0 0 0 - - -;
+#X connect 0 0 13 0;
+#X connect 1 0 14 0;
 #X connect 2 0 12 0;
 #X connect 3 0 7 1;
+#X connect 3 0 17 0;
 #X connect 4 0 7 0;
 #X connect 7 0 5 0;
 #X connect 7 1 6 0;
 #X connect 8 0 11 0;
 #X connect 9 0 4 1;
 #X connect 10 0 9 1;
-#X connect 11 0 13 0;
+#X connect 11 0 16 0;
 #X connect 12 0 11 2;
-#X connect 13 0 4 0;
-#X connect 14 0 11 1;
-#X connect 15 0 9 0;
+#X connect 13 0 11 1;
+#X connect 14 0 9 0;
+#X connect 16 0 4 0;
 #X restore 711 744 pd liftDiFunNo;
-#X text 901 672 Patches that generate all the sounds associated with
+#X text 894 569 Patches that generate all the sounds associated with
 the drag dipole;
 #X text 554 772 Patches that generate all the sounds associated with
 the lift dipole;
@@ -1483,10 +1455,10 @@
 #X connect 46 0 44 0;
 #X connect 47 0 136 1;
 #X connect 49 0 53 0;
-#X connect 49 0 191 0;
+#X connect 49 0 181 0;
 #X connect 50 0 48 3;
 #X connect 51 0 54 0;
-#X connect 51 0 192 0;
+#X connect 51 0 182 0;
 #X connect 56 0 55 0;
 #X connect 56 0 6 0;
 #X connect 56 0 95 0;
@@ -1531,9 +1503,9 @@
 #X connect 123 0 125 0;
 #X connect 123 0 126 0;
 #X connect 124 0 123 0;
-#X connect 127 0 152 2;
-#X connect 128 0 152 0;
-#X connect 129 0 152 1;
+#X connect 127 0 148 2;
+#X connect 128 0 148 0;
+#X connect 129 0 148 1;
 #X connect 130 0 131 1;
 #X connect 132 0 131 3;
 #X connect 133 0 131 0;
@@ -1545,24 +1517,24 @@
 #X connect 141 0 143 0;
 #X connect 141 0 145 0;
 #X connect 142 0 141 0;
-#X connect 144 0 152 3;
+#X connect 144 0 148 3;
 #X connect 146 0 147 3;
-#X connect 148 0 157 1;
-#X connect 149 0 157 0;
-#X connect 150 0 157 2;
-#X connect 151 0 157 3;
-#X connect 153 0 158 2;
-#X connect 154 0 158 0;
-#X connect 155 0 158 1;
-#X connect 156 0 158 3;
-#X connect 159 0 163 1;
-#X connect 160 0 163 2;
+#X connect 149 0 153 1;
+#X connect 150 0 153 2;
+#X connect 151 0 153 3;
+#X connect 152 0 153 0;
+#X connect 154 0 157 2;
+#X connect 155 0 157 0;
+#X connect 156 0 157 3;
+#X connect 158 0 157 1;
+#X connect 159 0 163 2;
+#X connect 160 0 163 0;
 #X connect 161 0 163 3;
-#X connect 162 0 163 0;
-#X connect 164 0 167 2;
-#X connect 165 0 167 0;
-#X connect 166 0 167 3;
-#X connect 168 0 167 1;
+#X connect 162 0 163 1;
+#X connect 164 0 168 1;
+#X connect 165 0 168 2;
+#X connect 166 0 168 3;
+#X connect 167 0 168 0;
 #X connect 169 0 173 2;
 #X connect 170 0 173 0;
 #X connect 171 0 173 3;
@@ -1571,16 +1543,8 @@
 #X connect 175 0 178 2;
 #X connect 176 0 178 3;
 #X connect 177 0 178 0;
-#X connect 179 0 183 2;
-#X connect 180 0 183 0;
-#X connect 181 0 183 3;
-#X connect 182 0 183 1;
-#X connect 184 0 188 1;
-#X connect 185 0 188 2;
-#X connect 186 0 188 3;
-#X connect 187 0 188 0;
-#X connect 193 0 122 5;
-#X connect 194 0 122 6;
-#X connect 195 0 136 3;
-#X connect 197 0 131 4;
-#X connect 198 0 131 5;
+#X connect 183 0 122 5;
+#X connect 184 0 122 6;
+#X connect 185 0 136 3;
+#X connect 187 0 131 4;
+#X connect 188 0 131 5;
--- a/scene demo/testBed.pd	Sun Nov 29 18:18:14 2015 +0000
+++ b/scene demo/testBed.pd	Fri Dec 04 12:07:08 2015 +0000
@@ -1,4 +1,4 @@
-#N canvas 178 34 1134 770 10;
+#N canvas 178 34 1172 765 10;
 #X obj 167 -82 loadbang;
 #N canvas 236 158 426 423 windspeed 0;
 #X obj 3 -19 +~ 1;
@@ -71,7 +71,7 @@
 #X restore -268 -129 pd windspeed;
 #X obj -268 138 delwrite~ varwind 3000;
 #X obj -185 -127 hsl 128 15 0 150 0 0 empty empty empty -2 -8 0 10
--262144 -1 -1 2601 1;
+-262144 -1 -1 1101 1;
 #X obj -225 -24 snapshot~;
 #X obj -225 -49 metro 100;
 #X obj -225 -71 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1
@@ -84,7 +84,7 @@
 #X obj -49 -126 loadbang;
 #X msg -49 -98 5;
 #X obj 215 10 hsl 128 15 0.001 0.3 1 0 empty empty empty -2 -8 0 10
--262144 -1 -1 800 1;
+-262144 -1 -1 5127 1;
 #X floatatom 223 34 8 0 0 0 - - -;
 #X obj 273 284 hsl 128 15 0.009 0.9 0 0 empty empty empty -2 -8 0 10
 -262144 -1 -1 6999 1;
@@ -94,17 +94,17 @@
 -1 -1 6350 1;
 #X floatatom 270 195 5 0 0 0 - - -;
 #X obj 261 221 hsl 128 15 -180 180 0 0 empty empty empty -2 -8 0 10
--262144 -1 -1 0 1;
+-262144 -1 -1 10231 1;
 #X floatatom 285 250 5 0 0 0 - - -;
 #X obj 236 109 hsl 128 15 100 1 1 0 empty empty empty -2 -8 0 10 -262144
--1 -1 9347 1;
+-1 -1 8877 1;
 #X floatatom 247 138 5 0 0 0 - - -;
 #X text 414 285 Pan Value;
 #X obj -271 425 vu 15 120 empty empty -1 -8 0 10 -66577 -1 1 0;
 #X obj -208 425 vu 15 120 empty empty -1 -8 0 10 -66577 -1 1 0;
 #X text -211 334 Gain;
 #X obj -256 277 loadbang;
-#N canvas 865 368 284 318 opLevels 0;
+#N canvas 865 368 416 344 opLevels 0;
 #X obj 74 188 dac~;
 #X obj 30 70 catch~ l;
 #X obj 128 70 catch~ r;
@@ -144,7 +144,7 @@
 #X restore -272 382 pd opLevels;
 #X msg -256 300 5;
 #X obj -269 353 hsl 100 25 0.1 5000 0 0 empty empty empty -2 -8 0 10
--262144 -1 -1 196 1;
+-262144 -1 -1 396 1;
 #X obj -7 -21 snapshot~;
 #X obj -7 -46 metro 100;
 #X floatatom -7 6 10 0 0 0 - - -;
@@ -163,7 +163,6 @@
 #X obj 340 -139 bng 35 250 50 0 empty empty empty 17 7 0 10 -4032 -1
 -1;
 #X floatatom 197 555 8 0 0 0 - - -;
-#X msg 117 92 12;
 #X msg 96 149 0;
 #X msg 53 267 0.5;
 #X obj 167 -58 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
@@ -204,7 +203,6 @@
 #X msg 11 379 0;
 #X msg -8 432 0;
 #X text 437 397 Source Rotation Y;
-#X text 425 343 Source Rotation X;
 #X text 449 450 Source Rotation Z;
 #N canvas 1023 81 1013 557 writing 0;
 #X obj 23 -100 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 1
@@ -434,7 +432,6 @@
 -1 -1 0 1;
 #X obj 405 478 r SET_UP;
 #X text 462 505 Turbulence Intensity;
-#X obj 197 530 freqCalcCyl3No_D1Mach;
 #X floatatom 349 530 5 0 0 0 - - -;
 #X msg -28 485 0;
 #X msg 254 -34 1;
@@ -482,129 +479,204 @@
 #X obj -115 45 loadbang;
 #X text -118 162 Wind Speed;
 #X obj -253 45 hsl 128 15 -90 90 0 0 empty empty empty -2 -8 0 10 -262144
--1 -1 11250 1;
+-1 -1 0 1;
 #X msg -257 25 0;
-#X connect 0 0 45 0;
+#X text 425 343 Source Rotation X;
+#X msg 520 35 0;
+#X obj 520 110 -~ 180;
+#X obj 520 86 line~ 0 1;
+#X obj 580 235 snapshot~;
+#X obj 580 188 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 1
+1;
+#X floatatom 580 262 10 0 0 0 - - -;
+#X obj 580 163 loadbang;
+#N canvas 83 555 450 362 PlotWrt 1;
+#X obj 116 303 textfile;
+#X msg 319 202 clear \, rewind;
+#X msg 169 202 add \$1;
+#X msg 116 202 add2 \$1;
+#X msg 218 202 write polar.txt;
+#X obj 105 92 snapshot~;
+#X obj 105 45 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 1
+1;
+#X floatatom 119 129 10 0 0 0 - - -;
+#X obj 105 20 loadbang;
+#X obj 198 92 snapshot~;
+#X obj 198 45 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 1
+1;
+#X floatatom 250 119 10 0 0 0 - - -;
+#X obj 198 20 loadbang;
+#X obj 343 45 r~ plotElev;
+#X obj 35 19 r~ plotOPF;
+#X obj 14 75 r~ plotOPN;
+#X obj 37 101 +~;
+#X obj 105 67 metro 10;
+#X obj 198 67 metro 10;
+#X obj 27 166 +~;
+#X obj 13 134 r~ plotOPD;
+#X connect 1 0 0 0;
+#X connect 2 0 0 0;
+#X connect 3 0 0 0;
+#X connect 4 0 0 0;
+#X connect 5 0 7 0;
+#X connect 5 0 3 0;
+#X connect 6 0 17 0;
+#X connect 8 0 6 0;
+#X connect 9 0 11 0;
+#X connect 9 0 2 0;
+#X connect 10 0 18 0;
+#X connect 12 0 10 0;
+#X connect 13 0 9 0;
+#X connect 14 0 5 0;
+#X connect 15 0 16 1;
+#X connect 16 0 19 1;
+#X connect 17 0 5 0;
+#X connect 18 0 9 0;
+#X connect 20 0 19 0;
+#X restore 585 385 pd PlotWrt;
+#X obj 580 210 metro 10;
+#X obj 555 138 s~ plotElev;
+#X msg 531 57 360 5000;
+#X msg -325 11 20;
+#X obj -409 10;
+#X obj 197 530 freqCalcCyl3No_D1Mach;
+#X obj 598 105 sig~;
+#X msg 608 60 70;
+#X obj 646 -45 vsl 15 128 -180 180 0 0 empty empty empty 0 -9 0 10
+-262144 -1 -1 0 1;
+#X msg 117 92 4;
+#X connect 0 0 44 0;
 #X connect 1 0 8 0;
 #X connect 3 0 8 1;
 #X connect 3 0 9 1;
-#X connect 3 0 84 0;
+#X connect 3 0 82 0;
 #X connect 4 0 7 0;
-#X connect 4 0 53 0;
+#X connect 4 0 52 0;
 #X connect 5 0 4 0;
 #X connect 6 0 5 0;
 #X connect 8 0 9 0;
 #X connect 9 0 4 0;
-#X connect 9 0 131 0;
 #X connect 10 0 6 0;
 #X connect 12 0 13 0;
 #X connect 13 0 3 0;
 #X connect 14 0 15 0;
-#X connect 14 0 122 1;
+#X connect 14 0 151 1;
 #X connect 16 0 17 0;
-#X connect 16 0 122 6;
+#X connect 16 0 151 6;
 #X connect 19 0 20 0;
-#X connect 19 0 122 4;
+#X connect 19 0 151 4;
 #X connect 21 0 22 0;
-#X connect 21 0 122 5;
-#X connect 21 0 129 0;
+#X connect 21 0 126 0;
+#X connect 21 0 151 5;
 #X connect 23 0 24 0;
-#X connect 23 0 122 3;
+#X connect 23 0 151 3;
 #X connect 29 0 31 0;
 #X connect 30 0 26 0;
 #X connect 30 1 27 0;
 #X connect 31 0 32 0;
 #X connect 32 0 30 0;
-#X connect 32 0 109 0;
+#X connect 32 0 107 0;
 #X connect 33 0 35 0;
-#X connect 33 0 55 0;
+#X connect 33 0 54 0;
 #X connect 34 0 33 0;
 #X connect 36 0 37 0;
 #X connect 37 0 34 0;
-#X connect 40 0 56 0;
-#X connect 42 0 23 0;
-#X connect 43 0 19 0;
-#X connect 44 0 16 0;
-#X connect 45 0 86 0;
-#X connect 45 0 113 0;
-#X connect 45 0 42 0;
-#X connect 45 0 43 0;
-#X connect 45 0 117 0;
-#X connect 45 0 44 0;
-#X connect 45 0 48 0;
-#X connect 45 0 73 0;
-#X connect 45 0 74 0;
-#X connect 45 0 75 0;
-#X connect 45 0 124 0;
-#X connect 46 0 47 0;
-#X connect 46 0 122 2;
-#X connect 48 0 46 0;
-#X connect 49 0 30 1;
-#X connect 50 0 108 0;
-#X connect 54 0 33 0;
-#X connect 57 0 14 0;
-#X connect 58 0 46 0;
-#X connect 59 0 23 0;
-#X connect 60 0 19 0;
-#X connect 61 0 21 0;
-#X connect 62 0 16 0;
-#X connect 64 0 65 0;
-#X connect 64 0 122 7;
-#X connect 66 0 64 0;
-#X connect 67 0 68 0;
-#X connect 67 0 122 8;
-#X connect 69 0 67 0;
-#X connect 70 0 71 0;
-#X connect 70 0 122 9;
-#X connect 72 0 70 0;
-#X connect 73 0 64 0;
-#X connect 74 0 67 0;
-#X connect 75 0 70 0;
+#X connect 40 0 55 0;
+#X connect 42 0 19 0;
+#X connect 43 0 16 0;
+#X connect 44 0 84 0;
+#X connect 44 0 111 0;
+#X connect 44 0 155 0;
+#X connect 44 0 42 0;
+#X connect 44 0 115 0;
+#X connect 44 0 43 0;
+#X connect 44 0 47 0;
+#X connect 44 0 72 0;
+#X connect 44 0 73 0;
+#X connect 44 0 74 0;
+#X connect 44 0 121 0;
+#X connect 45 0 46 0;
+#X connect 45 0 151 2;
+#X connect 47 0 45 0;
+#X connect 48 0 30 1;
+#X connect 49 0 106 0;
+#X connect 53 0 33 0;
+#X connect 56 0 14 0;
+#X connect 57 0 45 0;
+#X connect 58 0 23 0;
+#X connect 59 0 19 0;
+#X connect 60 0 21 0;
+#X connect 61 0 16 0;
+#X connect 63 0 64 0;
+#X connect 63 0 151 7;
+#X connect 65 0 63 0;
+#X connect 66 0 67 0;
+#X connect 66 0 151 8;
+#X connect 68 0 66 0;
+#X connect 69 0 70 0;
+#X connect 69 0 151 9;
+#X connect 71 0 69 0;
+#X connect 72 0 63 0;
+#X connect 73 0 66 0;
+#X connect 74 0 69 0;
+#X connect 78 0 21 0;
+#X connect 79 0 128 0;
 #X connect 80 0 21 0;
-#X connect 82 0 21 0;
+#X connect 81 0 14 0;
 #X connect 83 0 14 0;
-#X connect 85 0 14 0;
-#X connect 86 0 122 0;
-#X connect 87 0 89 0;
-#X connect 88 0 89 0;
-#X connect 90 0 100 0;
-#X connect 90 1 98 0;
-#X connect 90 2 96 0;
-#X connect 90 3 94 0;
-#X connect 90 4 93 0;
-#X connect 90 5 91 0;
-#X connect 92 0 32 0;
-#X connect 95 0 23 0;
-#X connect 97 0 46 0;
-#X connect 99 0 14 0;
-#X connect 101 0 3 0;
-#X connect 102 0 32 0;
-#X connect 103 0 90 0;
-#X connect 104 0 90 0;
-#X connect 105 0 90 0;
-#X connect 106 0 90 0;
-#X connect 107 0 103 0;
-#X connect 108 0 49 0;
-#X connect 110 0 90 0;
-#X connect 111 0 81 0;
-#X connect 111 0 112 0;
-#X connect 113 0 14 0;
-#X connect 117 0 21 0;
-#X connect 118 0 21 0;
-#X connect 119 0 122 10;
-#X connect 119 0 123 0;
-#X connect 120 0 119 0;
-#X connect 122 0 41 0;
-#X connect 122 1 114 0;
-#X connect 124 0 119 0;
-#X connect 125 0 122 1;
-#X connect 128 0 21 0;
-#X connect 130 0 81 0;
-#X connect 131 0 2 0;
-#X connect 131 0 132 0;
-#X connect 132 0 135 0;
-#X connect 133 0 132 0;
-#X connect 134 0 133 0;
-#X connect 136 0 134 0;
-#X connect 138 0 131 1;
-#X connect 139 0 138 0;
+#X connect 84 0 151 0;
+#X connect 85 0 87 0;
+#X connect 86 0 87 0;
+#X connect 88 0 98 0;
+#X connect 88 1 96 0;
+#X connect 88 2 94 0;
+#X connect 88 3 92 0;
+#X connect 88 4 91 0;
+#X connect 88 5 89 0;
+#X connect 90 0 32 0;
+#X connect 93 0 23 0;
+#X connect 95 0 45 0;
+#X connect 97 0 14 0;
+#X connect 99 0 3 0;
+#X connect 100 0 32 0;
+#X connect 101 0 88 0;
+#X connect 102 0 88 0;
+#X connect 103 0 88 0;
+#X connect 104 0 88 0;
+#X connect 105 0 101 0;
+#X connect 106 0 48 0;
+#X connect 108 0 88 0;
+#X connect 109 0 110 0;
+#X connect 111 0 14 0;
+#X connect 115 0 21 0;
+#X connect 116 0 21 0;
+#X connect 117 0 120 0;
+#X connect 117 0 151 10;
+#X connect 118 0 117 0;
+#X connect 121 0 117 0;
+#X connect 122 0 151 1;
+#X connect 125 0 21 0;
+#X connect 127 0 150 0;
+#X connect 127 0 79 0;
+#X connect 128 0 2 0;
+#X connect 128 0 129 0;
+#X connect 129 0 132 0;
+#X connect 130 0 129 0;
+#X connect 131 0 130 0;
+#X connect 133 0 131 0;
+#X connect 135 0 128 1;
+#X connect 136 0 135 0;
+#X connect 138 0 140 0;
+#X connect 139 0 147 0;
+#X connect 139 0 141 0;
+#X connect 140 0 139 0;
+#X connect 141 0 143 0;
+#X connect 142 0 146 0;
+#X connect 144 0 142 0;
+#X connect 146 0 141 0;
+#X connect 148 0 140 0;
+#X connect 151 0 41 0;
+#X connect 151 1 112 0;
+#X connect 153 0 152 0;
+#X connect 154 0 152 0;
+#X connect 155 0 23 0;