#N canvas 472 94 815 459 12;
#X obj 449 241 sqrt;
#X text 141 94 trigger;
#X text 84 178 relative frequency;
#X obj 68 344 *~;
#X obj 237 329 line~;
#X obj 237 356 *~;
#X obj 237 383 *~;
#X msg 237 292 0 \$1;
#X obj 449 268 sqrt;
#X obj 68 95 r trigger;
#X obj 449 187 float \$1;
#X obj 255 242 r duration;
#X obj 90 229 r frequency;
#X text 304 212 relative duration;
#X obj 68 381 throw~ sum;
#X obj 68 122 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
-1;
#X msg 449 295 \$1 5;
#X obj 238 188 del 5;
#X obj 449 214 * 0.1;
#X obj 68 282 + \$4;
#X text 522 186 get amplitude from argument 1;
#X text 498 213 normalize to 0.1;
#X text 499 240 take fourth root (square root twice);
#X text 527 257 because we'll raise line~ output to;
#X text 526 274 fourth power;
#X text 491 294 attack time 5 msec;
#X text 282 187 decay after 5 msec;
#X text 453 164 attack;
#X obj 237 214 float \$2;
#X obj 237 265 *;
#X text 274 265 actual duration;
#X obj 68 203 float \$3;
#X obj 68 255 *;
#X obj 68 317 osc~;
#X text 100 255 times global freq.;
#X text 111 282 plus detune;
#X text 281 292 decay msg to line~;
#X text 276 357 raise to fourth power for;
#X text 277 375 natural-sounding decay shape;
#X text 71 409 add to global;
#X text 70 428 summing bus;
#X text 37 37 This patch is used as an abstraction in the additive
synthesis example \, D06.additive.pd;
#X text 36 7 partial -- sinusoidal partial for additive synthesis;
#X text 577 24 arguments:;
#X text 551 49 1 amplitude \; 2 relative duration \; 3 relative frequency
\; 4 detune;
#X obj 238 161 trigger bang bang;
#X connect 0 0 8 0;
#X connect 3 0 14 0;
#X connect 4 0 5 0;
#X connect 4 0 5 1;
#X connect 5 0 6 0;
#X connect 5 0 6 1;
#X connect 6 0 3 1;
#X connect 7 0 4 0;
#X connect 8 0 16 0;
#X connect 9 0 15 0;
#X connect 10 0 18 0;
#X connect 11 0 29 1;
#X connect 12 0 32 1;
#X connect 15 0 31 0;
#X connect 15 0 45 0;
#X connect 16 0 4 0;
#X connect 17 0 28 0;
#X connect 18 0 0 0;
#X connect 19 0 33 0;
#X connect 28 0 29 0;
#X connect 29 0 7 0;
#X connect 31 0 32 0;
#X connect 32 0 19 0;
#X connect 33 0 3 0;
#X connect 45 0 17 0;
#X connect 45 1 10 0;
