/usr/share/puredata/doc/3.audio.examples/E06.exponential.pd is in puredata-doc 0.47.1-3.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 | #N canvas 85 89 754 729 12;
#N canvas 0 0 450 300 (subpatch) 0;
#X array E06-signal 882 float 0;
#X coords 0 1.02 882 -1.02 200 130 1;
#X restore 509 46 graph;
#X obj 14 265 hip~ 5;
#N canvas 0 0 450 300 (subpatch) 0;
#X array E06-spectrum 128 float 0;
#X coords 0 4300 127 -40 257 130 1;
#X restore 463 222 graph;
#N canvas 45 83 558 569 fft 0;
#X obj 19 61 inlet~;
#X obj 208 212 inlet;
#X obj 29 92 rfft~;
#X obj 29 125 *~;
#X obj 60 125 *~;
#X obj 29 155 sqrt~;
#X obj 332 109 block~ 4096 1;
#X obj 29 181 biquad~ 0 0 0 0 1;
#X text 93 93 Fourier series;
#X text 98 146 magnitude;
#X text 96 131 calculate;
#X text 21 3 This subpatch computes the spectrum of the incoming signal
with a (rectangular windowed) FFT. FFTs aren't properly introduced
until much later.;
#X text 83 61 signal to analyze;
#X text 193 164 delay two samples;
#X text 191 182 for better graphing;
#X obj 16 425 samplerate~;
#X obj 16 402 bng 18 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
-1;
#X floatatom 16 472 5 0 0 0 - - -;
#X obj 16 448 / 256;
#X obj 16 378 loadbang;
#X floatatom 16 541 5 0 0 0 - - -;
#X obj 24 494 s fundamental;
#X obj 16 517 ftom;
#X text 14 319 At load time \, calculate a good choice of fundamental
frequency for showing spectra: the 16th bin in a 4096-point spectrum
\, so SR*16/4096 or SR/256.;
#X floatatom 191 480 5 0 0 0 - - -;
#X obj 191 456 / 4096;
#X text 187 425 One bin is SR/4096:;
#X obj 191 502 s freq-step;
#X obj 208 295 tabwrite~ E06-spectrum;
#X obj 19 295 tabwrite~ E06-signal;
#X text 71 540 <-fundamental pitch;
#X obj 220 257 metro 500;
#X obj 220 234 inlet;
#X text 273 232 toggle to graph repeatedly;
#X text 262 212 bang to graph once;
#X connect 0 0 2 0;
#X connect 0 0 29 0;
#X connect 1 0 28 0;
#X connect 1 0 29 0;
#X connect 2 0 3 0;
#X connect 2 0 3 1;
#X connect 2 1 4 0;
#X connect 2 1 4 1;
#X connect 3 0 5 0;
#X connect 4 0 5 0;
#X connect 5 0 7 0;
#X connect 7 0 28 0;
#X connect 15 0 18 0;
#X connect 15 0 25 0;
#X connect 16 0 15 0;
#X connect 17 0 21 0;
#X connect 17 0 22 0;
#X connect 18 0 17 0;
#X connect 19 0 16 0;
#X connect 22 0 20 0;
#X connect 24 0 27 0;
#X connect 25 0 24 0;
#X connect 31 0 28 0;
#X connect 31 0 29 0;
#X connect 32 0 31 0;
#X restore 22 238 pd fft;
#X text 509 178 ---- 0.02 seconds ----;
#X obj 82 217 bng 18 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
-1;
#X obj 14 293 output~;
#X text 499 708 updated for Pd version 0.37;
#X text 494 355 1;
#X text 528 355 2;
#X text 560 355 3;
#X text 592 355 4;
#X text 625 355 5;
#X text 655 355 6;
#X text 686 355 7;
#X text 462 355 0;
#X text 496 372 -- partial number --;
#X text 711 100 0;
#X obj 12 30 r fundamental;
#X obj 12 57 osc~;
#X text 573 26 WAVEFORM;
#X text 557 204 SPECTRUM;
#X text 723 338 0;
#X text 721 217 1;
#X text 722 276 0.5;
#X obj 82 238 tgl 18 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 1
;
#N canvas 0 0 450 300 (subpatch) 0;
#X array E06-tab 1003 float 1;
#A 0 1.01005 1 0.99005 0.980199 0.970446 0.960789 0.951229 0.941765
0.932394 0.923116 0.913931 0.904837 0.895834 0.88692 0.878095 0.869358
0.860708 0.852144 0.843665 0.83527 0.826959 0.818731 0.810584 0.802519
0.794534 0.786628 0.778801 0.771052 0.76338 0.755784 0.748264 0.740818
0.733447 0.726149 0.718924 0.71177 0.704688 0.697676 0.690734 0.683861
0.677057 0.67032 0.66365 0.657047 0.650509 0.644036 0.637628 0.631284
0.625002 0.618783 0.612626 0.606531 0.600496 0.594521 0.588605 0.582748
0.57695 0.571209 0.565525 0.559898 0.554327 0.548812 0.543351 0.537944
0.532592 0.527292 0.522046 0.516851 0.511709 0.506617 0.501576 0.496585
0.491644 0.486752 0.481909 0.477114 0.472367 0.467666 0.463013 0.458406
0.453845 0.449329 0.444858 0.440432 0.436049 0.431711 0.427415 0.423162
0.418952 0.414783 0.410656 0.40657 0.402524 0.398519 0.394554 0.390628
0.386741 0.382893 0.379083 0.375311 0.371577 0.367879 0.364219 0.360595
0.357007 0.353455 0.349938 0.346456 0.343008 0.339595 0.336216 0.332871
0.329559 0.32628 0.323033 0.319819 0.316637 0.313486 0.310367 0.307279
0.304221 0.301194 0.298197 0.29523 0.292293 0.289384 0.286505 0.283654
0.280832 0.278037 0.275271 0.272532 0.26982 0.267135 0.264477 0.261846
0.25924 0.256661 0.254107 0.251579 0.249075 0.246597 0.244143 0.241714
0.239309 0.236928 0.23457 0.232236 0.229925 0.227638 0.225373 0.22313
0.22091 0.218712 0.216536 0.214381 0.212248 0.210136 0.208045 0.205975
0.203926 0.201897 0.199888 0.197899 0.19593 0.19398 0.19205 0.190139
0.188247 0.186374 0.18452 0.182684 0.180866 0.179066 0.177284 0.17552
0.173774 0.172045 0.170333 0.168638 0.16696 0.165299 0.163654 0.162026
0.160414 0.158817 0.157237 0.155673 0.154124 0.15259 0.151072 0.149569
0.14808 0.146607 0.145148 0.143704 0.142274 0.140858 0.139457 0.138069
0.136695 0.135335 0.133989 0.132655 0.131336 0.130029 0.128735 0.127454
0.126186 0.12493 0.123687 0.122456 0.121238 0.120032 0.118837 0.117655
0.116484 0.115325 0.114178 0.113042 0.111917 0.110803 0.109701 0.108609
0.107528 0.106459 0.105399 0.10435 0.103312 0.102284 0.101266 0.100259
0.0992613 0.0982736 0.0972958 0.0963276 0.0953692 0.0944202 0.0934807
0.0925506 0.0916297 0.0907179 0.0898153 0.0889216 0.0880368 0.0871608
0.0862936 0.085435 0.0845849 0.0837432 0.08291 0.082085 0.0812682 0.0804596
0.079659 0.0788664 0.0780817 0.0773047 0.0765356 0.075774 0.07502 0.0742736
0.0735345 0.0728029 0.0720785 0.0713613 0.0706512 0.0699482 0.0692522
0.0685631 0.0678809 0.0672055 0.0665368 0.0658748 0.0652193 0.0645703
0.0639279 0.0632918 0.062662 0.0620385 0.0614212 0.0608101 0.060205
0.0596059 0.0590129 0.0584257 0.0578443 0.0572688 0.0566989 0.0561348
0.0555762 0.0550232 0.0544757 0.0539337 0.053397 0.0528657 0.0523397
0.0518189 0.0513033 0.0507928 0.0502874 0.0497871 0.0492917 0.0488012
0.0483156 0.0478349 0.0473589 0.0468877 0.0464212 0.0459593 0.045502
0.0450492 0.044601 0.0441572 0.0437178 0.0432828 0.0428521 0.0424257
0.0420036 0.0415857 0.0411719 0.0407622 0.0403566 0.0399551 0.0395575
0.0391639 0.0387742 0.0383884 0.0380064 0.0376283 0.0372538 0.0368832
0.0365162 0.0361528 0.0357931 0.035437 0.0350844 0.0347353 0.0343896
0.0340475 0.0337087 0.0333733 0.0330412 0.0327124 0.0323869 0.0320647
0.0317456 0.0314298 0.031117 0.0308074 0.0305009 0.0301974 0.0298969
0.0295994 0.0293049 0.0290133 0.0287246 0.0284388 0.0281559 0.0278757
0.0275983 0.0273237 0.0270518 0.0267827 0.0265162 0.0262523 0.0259911
0.0257325 0.0254765 0.025223 0.024972 0.0247235 0.0244775 0.024234
0.0239928 0.0237541 0.0235177 0.0232837 0.0230521 0.0228227 0.0225956
0.0223708 0.0221482 0.0219278 0.0217096 0.0214936 0.0212797 0.021068
0.0208584 0.0206508 0.0204453 0.0202419 0.0200405 0.0198411 0.0196437
0.0194482 0.0192547 0.0190631 0.0188734 0.0186856 0.0184997 0.0183156
0.0181334 0.017953 0.0177743 0.0175975 0.0174224 0.017249 0.0170774
0.0169075 0.0167392 0.0165727 0.0164078 0.0162445 0.0160829 0.0159229
0.0157644 0.0156076 0.0154523 0.0152985 0.0151463 0.0149956 0.0148464
0.0146986 0.0145524 0.0144076 0.0142642 0.0141223 0.0139818 0.0138427
0.0137049 0.0135686 0.0134336 0.0132999 0.0131675 0.0130365 0.0129068
0.0127784 0.0126512 0.0125254 0.0124007 0.0122773 0.0121552 0.0120342
0.0119145 0.0117959 0.0116786 0.0115624 0.0114473 0.0113334 0.0112206
0.011109 0.0109985 0.010889 0.0107807 0.0106734 0.0105672 0.0104621
0.010358 0.0102549 0.0101529 0.0100518 0.00995182 0.0098528 0.00975476
0.0096577 0.0095616 0.00946646 0.00937227 0.00927902 0.00918669 0.00909528
0.00900478 0.00891518 0.00882647 0.00873865 0.0086517 0.00856561 0.00848038
0.008396 0.00831246 0.00822975 0.00814786 0.00806679 0.00798652 0.00790705
0.00782838 0.00775048 0.00767337 0.00759701 0.00752142 0.00744658 0.00737249
0.00729913 0.0072265 0.0071546 0.00708341 0.00701293 0.00694315 0.00687406
0.00680567 0.00673795 0.0066709 0.00660453 0.00653881 0.00647375 0.00640933
0.00634556 0.00628242 0.00621991 0.00615802 0.00609675 0.00603608 0.00597602
0.00591656 0.00585769 0.0057994 0.0057417 0.00568457 0.00562801 0.00557201
0.00551657 0.00546167 0.00540733 0.00535353 0.00530026 0.00524752 0.0051953
0.00514361 0.00509243 0.00504176 0.00499159 0.00494193 0.00489275 0.00484407
0.00479587 0.00474815 0.00470091 0.00465413 0.00460782 0.00456197 0.00451658
0.00447164 0.00442715 0.0043831 0.00433948 0.00429631 0.00425356 0.00421123
0.00416933 0.00412785 0.00408677 0.00404611 0.00400585 0.00396599 0.00392653
0.00388746 0.00384878 0.00381048 0.00377257 0.00373503 0.00369786 0.00366107
0.00362464 0.00358857 0.00355287 0.00351752 0.00348252 0.00344786 0.00341356
0.00337959 0.00334597 0.00331267 0.00327971 0.00324708 0.00321477 0.00318278
0.00315111 0.00311976 0.00308871 0.00305798 0.00302755 0.00299743 0.0029676
0.00293808 0.00290884 0.0028799 0.00285124 0.00282287 0.00279478 0.00276698
0.00273944 0.00271219 0.0026852 0.00265848 0.00263203 0.00260584 0.00257991
0.00255424 0.00252883 0.00250366 0.00247875 0.00245409 0.00242967 0.00240549
0.00238156 0.00235786 0.0023344 0.00231117 0.00228818 0.00226541 0.00224287
0.00222055 0.00219846 0.00217658 0.00215492 0.00213348 0.00211225 0.00209124
0.00207043 0.00204983 0.00202943 0.00200924 0.00198925 0.00196945 0.00194986
0.00193045 0.00191125 0.00189223 0.0018734 0.00185476 0.0018363 0.00181803
0.00179994 0.00178203 0.0017643 0.00174675 0.00172937 0.00171216 0.00169512
0.00167826 0.00166156 0.00164502 0.00162866 0.00161245 0.00159641 0.00158052
0.0015648 0.00154923 0.00153381 0.00151855 0.00150344 0.00148848 0.00147367
0.00145901 0.00144449 0.00143012 0.00141589 0.0014018 0.00138785 0.00137404
0.00136037 0.00134683 0.00133343 0.00132016 0.00130703 0.00129402 0.00128115
0.0012684 0.00125578 0.00124328 0.00123091 0.00121866 0.00120654 0.00119453
0.00118265 0.00117088 0.00115923 0.00114769 0.00113627 0.00112497 0.00111377
0.00110269 0.00109172 0.00108086 0.0010701 0.00105946 0.00104891 0.00103848
0.00102814 0.00101791 0.00100779 0.000997758 0.00098783 0.000978001
0.00096827 0.000958635 0.000949097 0.000939653 0.000930303 0.000921047
0.000911882 0.000902808 0.000893825 0.000884932 0.000876127 0.000867409
0.000858778 0.000850233 0.000841773 0.000833397 0.000825105 0.000816895
0.000808767 0.000800719 0.000792752 0.000784864 0.000777055 0.000769323
0.000761668 0.000754089 0.000746586 0.000739157 0.000731803 0.000724521
0.000717312 0.000710174 0.000703108 0.000696112 0.000689185 0.000682328
0.000675539 0.000668817 0.000662162 0.000655574 0.00064905 0.000642592
0.000636198 0.000629868 0.000623601 0.000617396 0.000611253 0.000605171
0.000599149 0.000593188 0.000587285 0.000581442 0.000575656 0.000569928
0.000564257 0.000558643 0.000553084 0.000547581 0.000542133 0.000536738
0.000531398 0.00052611 0.000520875 0.000515692 0.000510561 0.000505481
0.000500451 0.000495472 0.000490542 0.000485661 0.000480829 0.000476044
0.000471307 0.000466618 0.000461975 0.000457378 0.000452827 0.000448321
0.000443861 0.000439444 0.000435072 0.000430743 0.000426456 0.000422213
0.000418012 0.000413853 0.000409735 0.000405658 0.000401622 0.000397626
0.000393669 0.000389752 0.000385874 0.000382034 0.000378233 0.00037447
0.000370744 0.000367055 0.000363402 0.000359786 0.000356206 0.000352662
0.000349153 0.000345679 0.000342239 0.000338834 0.000335463 0.000332125
0.00032882 0.000325548 0.000322309 0.000319102 0.000315927 0.000312783
0.000309671 0.00030659 0.000303539 0.000300519 0.000297529 0.000294568
0.000291637 0.000288735 0.000285862 0.000283018 0.000280202 0.000277414
0.000274654 0.000271921 0.000269215 0.000266536 0.000263884 0.000261259
0.000258659 0.000256085 0.000253537 0.000251014 0.000248517 0.000246044
0.000243596 0.000241172 0.000238772 0.000236396 0.000234044 0.000231716
0.00022941 0.000227127 0.000224867 0.00022263 0.000220415 0.000218221
0.00021605 0.0002139 0.000211772 0.000209665 0.000207579 0.000205513
0.000203468 0.000201444 0.000199439 0.000197455 0.00019549 0.000193545
0.000191619 0.000189713 0.000187825 0.000185956 0.000184106 0.000182274
0.00018046 0.000178665 0.000176887 0.000175127 0.000173384 0.000171659
0.000169951 0.00016826 0.000166586 0.000164928 0.000163287 0.000161663
0.000160054 0.000158461 0.000156885 0.000155324 0.000153778 0.000152248
0.000150733 0.000149233 0.000147748 0.000146278 0.000144823 0.000143382
0.000141955 0.000140543 0.000139144 0.00013776 0.000136389 0.000135032
0.000133688 0.000132358 0.000131041 0.000129737 0.000128446 0.000127168
0.000125903 0.00012465 0.00012341 0.000122182 0.000120966 0.000119763
0.000118571 0.000117391 0.000116223 0.000115067 0.000113922 0.000112788
0.000111666 0.000110555 0.000109455 0.000108366 0.000107287 0.00010622
0.000105163 0.000104117 0.00010308 0.000102055 0.000101039 0.000100034
9.90387e-05 9.80533e-05 9.70776e-05 9.61117e-05 9.51553e-05 9.42085e-05
9.32711e-05 9.23431e-05 9.14242e-05 9.05145e-05 8.96139e-05 8.87222e-05
8.78394e-05 8.69654e-05 8.61001e-05 8.52434e-05 8.43952e-05 8.35554e-05
8.27241e-05 8.1901e-05 8.1086e-05 8.02792e-05 7.94804e-05 7.86896e-05
7.79066e-05 7.71314e-05 7.6364e-05 7.56041e-05 7.48518e-05 7.4107e-05
7.33696e-05 7.26396e-05 7.19169e-05 7.12012e-05 7.04928e-05 6.97914e-05
6.9097e-05 6.84094e-05 6.77287e-05 6.70548e-05 6.63876e-05 6.5727e-05
6.5073e-05 6.44256e-05 6.37845e-05 6.31498e-05 6.25215e-05 6.18994e-05
6.12835e-05 6.06737e-05 6.007e-05 5.94723e-05 5.88805e-05 5.82947e-05
5.77146e-05 5.71403e-05 5.65718e-05 5.60089e-05 5.54516e-05 5.48998e-05
5.43536e-05 5.38128e-05 5.32773e-05 5.27472e-05 5.22224e-05 5.17027e-05
5.11883e-05 5.06789e-05 5.01747e-05 4.96754e-05 4.91812e-05 4.86918e-05
4.82073e-05 4.77276e-05 4.72527e-05 4.67826e-05 4.63171e-05;
#A 1000 0 0 0;
#X coords 0 1 1002 0 180 100 1;
#X restore 254 118 graph;
#N canvas 140 79 589 249 make-table 0;
#X obj 164 81 t b b;
#X obj 236 106 f;
#X obj 274 106 + 1;
#X msg 258 83 0;
#X obj 164 104 until;
#X obj 236 136 t f f;
#X obj 164 62 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
-1;
#X obj 104 164 expr exp(-($f1-1)/100);
#X obj 163 132 sel 999;
#X text 35 10 This patch computes a decaying exponential function \,
100 points per unit.;
#X obj 137 196 tabwrite E06-tab;
#X connect 0 0 4 0;
#X connect 0 1 3 0;
#X connect 1 0 2 0;
#X connect 1 0 5 0;
#X connect 1 0 8 0;
#X connect 2 0 1 1;
#X connect 3 0 1 1;
#X connect 4 0 1 0;
#X connect 5 0 7 0;
#X connect 5 1 10 1;
#X connect 6 0 0 0;
#X connect 7 0 10 0;
#X connect 8 0 4 1;
#X restore 302 258 pd make-table;
#X text 252 85 waveshaping function;
#X text 438 210 0;
#X text 437 114 1;
#X obj 12 168 +~ 1;
#X obj 12 146 *~ 100;
#X obj 12 83 +~ 1;
#X floatatom 68 53 5 0 200 0 - - -;
#X obj 68 96 pack 0 50;
#X obj 68 120 line~;
#X text 157 69 tenths;
#X obj 68 73 / 10;
#X obj 12 124 *~;
#X obj 13 190 tabread4~ E06-tab;
#X text 711 40 1;
#X text 712 160 -1;
#X text 103 237 <-- repeatedly;
#X text 104 217 <-- graph once;
#X text 121 0 Waveshaping using an exponential function;
#X text 120 53 <--index in;
#X text 250 218 0;
#X text 417 220 10;
#X text 14 652 When the index of modulation exceeds 5 we scan past
the right hand border of the table (the thousandth point \, corresponding
to exp(-10). This isn't a problem because the values are all close
to zero there.;
#X text 14 555 Table lookup is prepared as follows. First add one to
the sinusoid and adjust its amplitude according to index \; it ranges
from 0 to 2*index. Then adjust for the table's input scale (100 points
per unit \, so multiply by 100) and add one to skip the interpolation
point at the beginning of the table.;
#X text 13 398 Here we use an exponential function as a waveshaping
transfer function. The theory is shown in detail in the accompanying
book \, but in short \, we adjust the sinusoid so that \, as the index
increases \, we scan starting from the left of the transfer function
(previously the reading location grew from the center). The table contains
exp(-x) with x varying from 0 to 10 When the index is zero \, the output
is the constant 1 and the spectrum holds only DC. As the index grows
\, the output is a sequence of steadily narrower pulses \, whose spectrum
gets progressively fatter.;
#X connect 1 0 6 0;
#X connect 1 0 6 1;
#X connect 5 0 3 1;
#X connect 18 0 19 0;
#X connect 19 0 33 0;
#X connect 25 0 3 2;
#X connect 31 0 40 0;
#X connect 32 0 31 0;
#X connect 33 0 39 0;
#X connect 34 0 38 0;
#X connect 35 0 36 0;
#X connect 36 0 39 1;
#X connect 38 0 35 0;
#X connect 39 0 32 0;
#X connect 40 0 3 0;
#X connect 40 0 1 0;
|