#N canvas 650 36 605 577 12;
#X declare -stdpath ./;
#X obj 75 454 catch~ sum;
#X obj 304 307 s frequency;
#X obj 402 317 s duration;
#X floatatom 402 267 0 0 0 0 - - - 0;
#X obj 402 292 * 100;
#X obj 304 282 mtof;
#X floatatom 304 257 0 0 0 0 - - - 0;
#X text 90 12 ADDITIVE SYNTHESIS;
#X text 440 257 duration in tenths;
#X text 442 273 of a second;
#X text 263 258 pitch;
#X text 340 505 updated for Pd version 0.37;
#X obj 75 493 output~;
#X text 38 91 Partial takes as arguments an amplitude \, a relative
frequency \, a detuning frequency \, and a relative duration. You set
absolute duration and pitch using the controls below. Hit the trigger
to make sound., f 59;
#X obj 44 169 partial 1 1 0.56 0;
#X text 38 40 This patch demonstrates using an abstraction \, "partial"
\, to make a simple additive synthesis instrument originally from Jean-Claude
Risset.;
#X obj 304 197 loadbang;
#X msg 304 231 72;
#X msg 402 237 40;
#X obj 315 355 bng 25 250 50 0 empty empty empty 0 -6 0 8 #fcfcfc #000000
#000000;
#X obj 315 391 s trigger;
#X obj 44 194 partial 0.67 0.9 0.56 1;
#X obj 44 219 partial 1 0.65 0.92 0;
#X obj 44 244 partial 1.8 0.55 0.92 1.7;
#X obj 44 269 partial 2.67 0.325 1.19 0;
#X obj 44 294 partial 1.67 0.35 1.7 0;
#X obj 44 319 partial 1.46 0.25 2 0;
#X obj 44 344 partial 1.33 0.2 2.74 0;
#X obj 44 369 partial 1.33 0.15 3 0;
#X obj 44 394 partial 1 0.1 3.76 0;
#X obj 44 419 partial 1.33 0.075 4.07 0;
#X text 348 357 <= click to play a note;
#X obj 437 11 declare -stdpath ./;
#X connect 0 0 12 0;
#X connect 0 0 12 1;
#X connect 3 0 4 0;
#X connect 4 0 2 0;
#X connect 5 0 1 0;
#X connect 6 0 5 0;
#X connect 16 0 17 0;
#X connect 16 0 18 0;
#X connect 17 0 6 0;
#X connect 18 0 3 0;
#X connect 19 0 20 0;
