#N canvas 413 23 623 690 12;
#X declare -stdpath ./;
#X obj 73 487 cos~;
#X obj 73 427 *~;
#X obj 115 487 cos~;
#X obj 175 390 wrap~;
#X obj 133 395 -~;
#X obj 115 457 +~;
#X obj 115 522 -~;
#X obj 157 554 *~;
#X obj 139 580 +~;
#X obj 175 74 loadbang;
#X obj 175 100 metro 400;
#X obj 175 129 del 200;
#X obj 175 267 samphold~;
#X text 138 21 CHANGING THE CENTER FREQUENCY QUICKLY;
#X obj 139 614 output~;
#X floatatom 228 156 4 0 50 0 - - - 0;
#X text 384 624 updated for Pd version 0.37;
#X obj 175 209 line~;
#X msg 175 155 13.5;
#X msg 137 142 4;
#X obj 73 216 phasor~ 80;
#X obj 175 183 pack f f;
#X obj 427 110 declare -stdpath ./;
#X text 264 156 <-- gliss time;
#X obj 175 343 *~;
#X obj 267 254 hradio 19 1 0 2 empty empty empty 0 -10 0 12 #dfdfdf #000000 #000000 0;
#X obj 229 298 == 0;
#X obj 267 299 == 1;
#X obj 133 343 *~ 1;
#X text 313 252 <-- select which one is actually used, f 20;
#X text 260 371 Since in the previous patch the amplitudes of the two cosines depend on "center frequency" we can't change that discontinuously without clicking \, as you hear in this patch., f 45;
#X text 260 439 The fix is to use a [samphold~] object to keep the center frequency frozen except at phase crossings. At the phase crossings the two weighted cosines add to one \, so we can discontinuously change the frequencies and weights there., f 45;
#X connect 0 0 6 1;
#X connect 0 0 8 0;
#X connect 1 0 0 0;
#X connect 1 0 5 0;
#X connect 2 0 6 0;
#X connect 3 0 4 1;
#X connect 3 0 7 1;
#X connect 4 0 1 1;
#X connect 5 0 2 0;
#X connect 6 0 7 0;
#X connect 7 0 8 1;
#X connect 8 0 14 0;
#X connect 9 0 10 0;
#X connect 10 0 19 0;
#X connect 10 0 11 0;
#X connect 11 0 18 0;
#X connect 12 0 24 0;
#X connect 15 0 21 1;
#X connect 17 0 12 0;
#X connect 17 0 28 0;
#X connect 18 0 21 0;
#X connect 19 0 21 0;
#X connect 20 0 1 0;
#X connect 20 0 5 1;
#X connect 20 0 12 1;
#X connect 21 0 17 0;
#X connect 24 0 4 0;
#X connect 24 0 3 0;
#X connect 25 0 26 0;
#X connect 25 0 27 0;
#X connect 26 0 28 1;
#X connect 27 0 24 1;
#X connect 28 0 4 0;
#X connect 28 0 3 0;
