#N canvas 560 38 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 obj 139 614 output~;
#X floatatom 228 156 4 0 50 0 - - - 0;
#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 286 633 declare -stdpath ./;
#X text 264 156 <-- gliss time;
#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 obj 68 25 cnv 5 5 25 empty empty Changing\ The\ Center\ Frequency\ Quickly 15 13 0 16 #dfdfdf #202020 0;
#X obj 175 343 *~ 0;
#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 13 0;
#X connect 9 0 10 0;
#X connect 10 0 17 0;
#X connect 10 0 11 0;
#X connect 11 0 16 0;
#X connect 12 0 30 0;
#X connect 14 0 19 1;
#X connect 15 0 12 0;
#X connect 15 0 25 0;
#X connect 16 0 19 0;
#X connect 17 0 19 0;
#X connect 18 0 1 0;
#X connect 18 0 5 1;
#X connect 18 0 12 1;
#X connect 19 0 15 0;
#X connect 22 0 23 0;
#X connect 22 0 24 0;
#X connect 23 0 25 1;
#X connect 24 0 30 1;
#X connect 25 0 4 0;
#X connect 25 0 3 0;
#X connect 30 0 4 0;
#X connect 30 0 3 0;
