From 9de2c74f8c6e709d682044209b09425c0b436843 Mon Sep 17 00:00:00 2001 From: Franz Zotter Date: Fri, 9 Feb 2007 20:33:48 +0000 Subject: mtx_phon_curve: I changed the output values from [pow] to [dB] values!!! Seems to be the better way to use the abstraction. mtx_phon_curve-help: corrected comments/conversion omitted. svn path=/trunk/externals/iem/iemmatrix/; revision=7412 --- abs/mtx_phon_curve-help.pd | 36 +++++++---------- abs/mtx_phon_curve.pd | 98 ++++++++++++++++++++-------------------------- 2 files changed, 58 insertions(+), 76 deletions(-) diff --git a/abs/mtx_phon_curve-help.pd b/abs/mtx_phon_curve-help.pd index f045581..26501cf 100644 --- a/abs/mtx_phon_curve-help.pd +++ b/abs/mtx_phon_curve-help.pd @@ -1,10 +1,10 @@ #N canvas 263 0 849 390 10; #N canvas 0 0 450 300 (subpatch) 0; #X array phon_curve 31 float 1; -#A 0 84.0263 70.2655 58.8035 49.2594 41.3145 34.7019 29.1992 24.6203 -20.8105 17.6404 15.0023 12.8061 10.9765 9.44971 8.17099 7.09068 6.15842 -5.31097 4.44516 3.36343 1.71908 -0.748856 -2.90756 -1.44298 2.53035 -4.39339 6.70128 12.6629 27.8308 66.0912 162.329; +#A 0 91.9955 79.14 68.4519 59.5683 52.1864 46.0531 40.9579 36.7252 +33.2091 30.2881 27.861 25.8434 24.1648 22.7658 21.5949 20.6057 19.7503 +18.9676 18.1564 17.1207 15.5152 13.0798 10.9486 12.4363 16.429 18.3084 +20.63 26.6031 41.7807 80.0491 176.294; #X coords 0 120 30 0 200 140 1; #X restore 36 187 graph; #N canvas 0 0 450 300 mtx2tablemsg 0; @@ -25,7 +25,7 @@ #X connect 6 0 1 0; #X connect 7 0 4 0; #X restore 247 230 pd mtx2tablemsg; -#X obj 356 210 loadbang; +#X obj 365 208 loadbang; #X obj 247 125 mtx_logspace; #X text 30 331 20; #X text 70 331 80; @@ -34,34 +34,28 @@ #X text 144 331 1360; #X text 186 331 5440; #X text 226 331 21760; -#X msg 356 230 bounds 0 120 30 0 \, xticks 0 1 3 \, yticks 0 20 1 \, +#X msg 365 228 bounds 0 120 30 0 \, xticks 0 1 3 \, yticks 0 20 1 \, ylabel 0 0 20 40 60 80 100 120; #X floatatom 246 48 5 0 0 0 - - -; #X obj 247 66 t b f f; -#X obj 413 142 - 100; -#X obj 247 186 mtx_+ -100; #X text 290 47 dial Phon-curve; #X obj 247 275 s phon_curve; #X text 482 26 part of iemmatrix; #X text 469 113 inletA: row/col frequency vector; #X text 469 131 inletB: phon value; -#X text 470 155 outletA: row/col vector with phone curve at specified -frequencies; -#X text 385 258 note: the "0" phon curve corresponds to the absolute +#X text 391 263 note: the "0" phon curve corresponds to the absolute threshold of hearing; #X text 44 32 [mtx_phon_curve]; +#X text 480 345 Franz Zotter \, 2007; #X obj 247 145 mtx_phon_curve 0; -#X obj 247 165 mtx_powtodb; -#X connect 1 0 17 0; +#X text 470 155 outletA: row/col vector with phone curve at specified +frequencies in dB; +#X connect 1 0 15 0; #X connect 2 0 11 0; -#X connect 3 0 24 0; +#X connect 3 0 22 0; #X connect 7 0 3 0; -#X connect 11 0 17 0; +#X connect 11 0 15 0; #X connect 12 0 13 0; #X connect 13 0 7 0; -#X connect 13 1 24 1; -#X connect 13 2 14 0; -#X connect 14 0 15 1; -#X connect 15 0 1 0; -#X connect 24 0 25 0; -#X connect 25 0 15 0; +#X connect 13 1 22 1; +#X connect 22 0 1 0; diff --git a/abs/mtx_phon_curve.pd b/abs/mtx_phon_curve.pd index 74852e7..8c865b3 100644 --- a/abs/mtx_phon_curve.pd +++ b/abs/mtx_phon_curve.pd @@ -2,90 +2,78 @@ #X obj 78 35 inlet; #X obj 422 345 mtx_exp; #X obj 422 281 mtx_- 3.3; -#X obj 211 491 mtx_+; -#X obj 53 697 outlet; +#X obj 53 553 mtx_+; +#X obj 53 646 outlet; #X obj 296 284 mtx_.^ -0.8; #X obj 504 281 mtx_.^ 4; -#X obj 296 426 mtx_* 3.64; +#X obj 296 390 mtx_* 3.64; #X obj 422 301 mtx_.^ 2; #X obj 422 321 mtx_* -0.6; -#X obj 422 418 mtx_* -6.5; -#X obj 422 445 mtx_+; +#X obj 422 375 mtx_* -6.5; +#X obj 422 402 mtx_+; #X text 94 53 freq; #X obj 78 104 mtx_* 0.001; #X obj 504 311 mtx_* 0.001; -#X text 246 30 calculates the threshold of hearing for an arbitrary -frequency vector/matrix; #X obj 79 133 t a a a a; -#X obj 53 524 mtx_+; -#X obj 53 477 mtx_* 0; -#X obj 211 468 mtx_* 1; -#X obj 182 346 / 100; +#X obj 53 518 mtx_+; +#X obj 53 448 mtx_* 0; +#X obj 108 447 mtx_* 1; +#X obj 155 355 / 100; #X obj 182 37 inlet; #X text 189 59 phon; -#X obj 182 366 expr 1-$f1; +#X obj 152 410 expr 1-$f1; #X obj 53 290 mtx_.^ -0.9; -#X obj 53 418 mtx_* 1.183; +#X obj 53 388 mtx_* 1.183; #X obj 232 63 loadbang; #X obj 182 90 \$1; #X obj 78 76 mtx_max2 0.1; -#X text 313 151 3.64*f^(-.8) - 6.5* exp(-.6*(f-3.3)^2)+10^(-3)*f^4 +#X text 344 135 3.64*f^(-.8) - 6.5* exp(-.6*(f-3.3)^2)+10^(-3)*f^4 ; -#X obj 53 546 mtx_* 0.1; -#X obj 53 674 mtx_.^; -#X obj 53 568 t a a; -#X obj 53 589 mtx_size; -#X obj 53 629 mtx_ones; -#X obj 53 610 pack; -#X obj 53 651 mtx_* 10; -#X text 312 175 0 phon curve; -#X text 312 193 absolute threshold of hearing; +#X text 343 101 0 phon curve; +#X text 343 118 absolute threshold of hearing; #X text 153 321 fade between; #X text 558 252 high freq. skirt; #X text 404 253 ear channel dip; -#X text 313 125 3 right paths:; -#X text 126 570 10^(x/10); #X text 277 250 low freq. skirt; #X text 307 266 0 phon; #X text 32 249 low freq. skirt; #X text 62 265 100 phon; -#X text 31 227 left path: lower 100 phon skirt; #X text 362 567 Franz Zoter \, 2007; -#X connect 0 0 28 0; +#X obj 53 584 mtx_+ 0; +#X obj 155 376 t f f; +#X text 321 85 3 rightmost paths:; +#X text 321 169 1 leftmost path: lower skirt of 100 phon curve; +#X text 246 30 calculates the contours of equal loudness for an arbitrary +frequency vector/matrix in dB; +#X connect 0 0 27 0; #X connect 1 0 10 0; #X connect 2 0 8 0; -#X connect 3 0 17 1; +#X connect 3 0 39 0; #X connect 5 0 7 0; #X connect 6 0 14 0; -#X connect 7 0 19 0; +#X connect 7 0 18 0; #X connect 8 0 9 0; #X connect 9 0 1 0; #X connect 10 0 11 0; #X connect 11 0 3 1; -#X connect 13 0 16 0; +#X connect 13 0 15 0; #X connect 14 0 11 1; -#X connect 16 0 24 0; -#X connect 16 1 5 0; -#X connect 16 2 2 0; -#X connect 16 3 6 0; -#X connect 17 0 30 0; -#X connect 18 0 17 0; -#X connect 19 0 3 0; -#X connect 20 0 18 1; -#X connect 20 0 23 0; -#X connect 21 0 27 0; -#X connect 23 0 19 1; -#X connect 24 0 25 0; -#X connect 25 0 18 0; -#X connect 26 0 27 0; -#X connect 27 0 20 0; -#X connect 28 0 13 0; -#X connect 30 0 32 0; -#X connect 31 0 4 0; -#X connect 32 0 33 0; -#X connect 32 1 31 1; -#X connect 33 0 35 0; -#X connect 33 1 35 1; -#X connect 34 0 36 0; -#X connect 35 0 34 0; -#X connect 36 0 31 0; +#X connect 15 0 23 0; +#X connect 15 1 5 0; +#X connect 15 2 2 0; +#X connect 15 3 6 0; +#X connect 16 0 3 0; +#X connect 17 0 16 0; +#X connect 18 0 16 1; +#X connect 19 0 40 0; +#X connect 20 0 26 0; +#X connect 22 0 18 1; +#X connect 23 0 24 0; +#X connect 24 0 17 0; +#X connect 25 0 26 0; +#X connect 26 0 19 0; +#X connect 26 0 39 1; +#X connect 27 0 13 0; +#X connect 39 0 4 0; +#X connect 40 0 17 1; +#X connect 40 1 22 0; -- cgit v1.2.1