#N canvas 510 104 668 554 12;
#X declare -stdpath ./;
#X floatatom 129 87 0 0 0 0 - - - 0;
#N canvas 0 0 450 300 (subpatch) 0;
#X array \$0-difference 882 float 0;
#X coords 0 1.02 882 -1.02 200 130 1;
#X restore 430 378 graph;
#X text 51 87 frequency;
#N canvas 0 0 450 300 (subpatch) 0;
#X array \$0-phasor1 882 float 0;
#X coords 0 1.02 882 -1.02 200 130 1;
#X restore 429 59 graph;
#X text 36 27 CLASSICAL PULSE WIDTH MODULATION;
#X obj 129 141 phasor~ 0;
#X obj 129 117 + 0.2;
#X obj 111 200 -~;
#N canvas 0 0 450 300 (subpatch) 0;
#X array \$0-phasor2 882 float 0;
#X coords 0 1.02 882 -1.02 200 130 1;
#X restore 430 218 graph;
#X text 43 350 This patch demonstrates pulse width modulation \, which
is accomplished simply by subtracting two sawtooth waves at a varying
phase difference. Here their frequencies are set to differ by 1/5 Hz.
so that the relative phase wanders continuously., f 47;
#X text 450 519 ---- 0.02 seconds ----;
#X text 49 474 updated for Pd version 0.39;
#X obj 53 257 output~;
#X obj 230 214 tabwrite~ \$0-phasor1;
#X obj 218 248 tabwrite~ \$0-phasor2;
#X obj 204 280 tabwrite~ \$0-difference;
#X obj 55 141 phasor~;
#X obj 218 147 metro 193;
#X obj 218 122 tgl 15 0 empty empty empty 0 -6 0 8 #fcfcfc #000000
#000000 0 1;
#X text 237 119 <= start/stop graphing;
#X obj 506 9 declare -stdpath ./;
#X connect 0 0 6 0;
#X connect 0 0 16 0;
#X connect 5 0 7 1;
#X connect 5 0 14 0;
#X connect 6 0 5 0;
#X connect 7 0 12 0;
#X connect 7 0 12 1;
#X connect 7 0 15 0;
#X connect 16 0 7 0;
#X connect 16 0 13 0;
#X connect 17 0 13 0;
#X connect 17 0 14 0;
#X connect 17 0 15 0;
#X connect 18 0 17 0;
