[PD-cvs] pd/extra complex-mod~-help.pd, NONE, 1.1 expr-help.pd, NONE, 1.1 hilbert~-help.pd, NONE, 1.1 rev1~-help.pd, NONE, 1.1 rev2~-help.pd, NONE, 1.1 rev3~-help.pd, NONE, 1.1

Miller Puckette millerpuckette at users.sourceforge.net
Sat Dec 31 01:59:49 CET 2005


Update of /cvsroot/pure-data/pd/extra
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv24040/extra

Added Files:
	complex-mod~-help.pd expr-help.pd hilbert~-help.pd 
	rev1~-help.pd rev2~-help.pd rev3~-help.pd 
Log Message:
Added about 64 files that I hadn't realized weren't in the CVS
repository.  Threw in pd/portaudio/pa_win_wdmks for good measure, although
I haven't tried compiling that in yet (no windoze machine handy today).



--- NEW FILE: rev2~-help.pd ---
#N canvas 167 160 766 354 12;
#X floatatom 73 185 0 0 120 0 - - -;
#X floatatom 106 323 0 0 120 0 - - -;
#N canvas 0 0 539 448 tests 0;
#X obj 67 33 inlet;
#X obj 309 189 inlet;
#X obj 235 207 line~;
#X obj 235 230 cos~;
#X obj 235 68 loadbang;
#X msg 235 91 -0.25;
#X obj 235 276 *~;
#X obj 186 309 hip~ 5;
#X floatatom 308 218 0 0 0 0 - - -;
#X obj 308 264 osc~ 440;
#X obj 308 241 mtof;
#X obj 235 253 *~ 0.1;
#X obj 308 299 *~;
#X obj 326 325 *~;
#X obj 292 330 *~;
#X msg 279 150 -0.25 \, 0.25 \$1;
#X obj 41 148 biquad~ 0 0 1 -1 0;
#X obj 63 70 t b;
#X obj 104 72 del 3;
#X obj 57 101 1;
#X obj 96 101 0;
#X obj 41 355 outlet~;
#X obj 279 126 inlet;
#X obj 40 175 *~;
#X connect 0 0 17 0;
#X connect 1 0 8 0;
#X connect 2 0 3 0;
#X connect 3 0 11 0;
#X connect 4 0 5 0;
#X connect 5 0 2 0;
#X connect 6 0 7 0;
#X connect 7 0 21 0;
#X connect 8 0 10 0;
#X connect 9 0 6 1;
#X connect 9 0 12 0;
#X connect 9 0 12 1;
#X connect 9 0 13 0;
#X connect 10 0 9 0;
#X connect 11 0 6 0;
#X connect 12 0 13 1;
#X connect 12 0 6 1;
#X connect 12 0 14 0;
#X connect 12 0 14 1;
#X connect 13 0 6 1;
#X connect 14 0 6 1;
#X connect 15 0 2 0;
#X connect 16 0 23 0;
#X connect 17 0 18 0;
#X connect 17 0 19 0;
#X connect 18 0 20 0;
#X connect 19 0 16 0;
#X connect 19 0 23 1;
#X connect 20 0 16 0;
#X connect 20 0 23 1;
#X connect 22 0 15 0;
#X connect 23 0 21 0;
#X restore 17 154 pd tests;
#X msg 56 35 10;
#X msg 54 62 20;
#X msg 53 90 100;
#X msg 52 115 500;
#X obj 17 15 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
-1;
#X text 37 9 impulse;
#N canvas 0 0 450 300 output 0;
#X obj 54 202 dac~;
#X obj 132 119 pack 0 100;
#X obj 132 142 line~;
#X obj 54 165 *~;
#X obj 132 97 dbtorms;
#X obj 33 42 inlet~;
#X obj 177 42 inlet;
#X obj 177 74 clip 0 120;
#X msg 257 133 \; pd dsp 1;
#X obj 98 42 inlet~;
#X obj 94 168 *~;
#X connect 1 0 2 0;
#X connect 2 0 3 1;
#X connect 2 0 10 1;
#X connect 3 0 0 0;
#X connect 4 0 1 0;
#X connect 5 0 3 0;
#X connect 6 0 7 0;
#X connect 6 0 8 0;
#X connect 7 0 4 0;
#X connect 9 0 10 0;
#X connect 10 0 0 1;
#X restore 18 324 pd output;
#X floatatom 97 127 0 0 0 0 - - -;
#X text 136 96 tone;
#X text 135 112 pitch;
#X text 114 185 level \, dB;
#X floatatom 117 209 0 0 100 0 - - -;
#X text 158 209 liveness \, 0-100;
#X text 505 330 modified for Pd version 0.37;
#X floatatom 161 235 0 0 120 0 - - -;
#X floatatom 205 259 0 0 120 0 - - -;
#X text 192 235 crossover frequency \, Hz.;
#X text 238 260 HF damping \, percent;
#X obj 30 290 rev2~ 100 90 3000 20;
#X text 141 324 output level \, dB;
#X text 281 8 REV2~ - a simple 1-in \, 4-out reverberator;
#X text 95 35 tone;
#X text 96 52 bursts;
#X text 231 37 The creation arguments (level \, liveness \, crossover
frequency \, HF damping) may also be supplied in four inlets as shown.
The "liveness" (actually the internal feedback percentage) should be
100 for infinite reverb \, 90 for longish \, and 80 for short. The
crossover frequency and HF damping work together: at frequencies above
crossover \, the feedback is diminished by the "damping" as a percentage.
So zero HF damping means equal reverb time at all frequencies \, and
100% damping means almost nothing above the crossover frequency gets
through.;
#X text 132 130 (60 for;
#X text 115 150 middle C);
#X connect 0 0 21 1;
#X connect 1 0 9 2;
#X connect 2 0 9 0;
#X connect 2 0 21 0;
#X connect 3 0 2 1;
#X connect 4 0 2 1;
#X connect 5 0 2 1;
#X connect 6 0 2 1;
#X connect 7 0 2 0;
#X connect 10 0 2 2;
#X connect 14 0 21 2;
#X connect 17 0 21 3;
#X connect 18 0 21 4;
#X connect 21 0 9 0;
#X connect 21 1 9 1;

--- NEW FILE: hilbert~-help.pd ---
#N canvas 156 234 600 488 12;
#X obj 67 124 hilbert~;
#X obj 66 85 osc~ 440;
#X graph graph1 0 -1 882 1 279 209 579 39;
#X array out-left 882 float;
#X array out-right 882 float;
#X pop;
#X obj 67 274 tabwrite~ out-left;
#X obj 118 248 tabwrite~ out-right;
#X msg 137 188 bang \; pd dsp 1;
#X floatatom 66 57;
#X text 71 319 The Hilbert transform (the name is abused here according to computer music tradition) puts out a phase quadrature version of the input signal suitable for signal sideband modulation via complex-mod~.;
#X connect 0 0 3 0;
#X connect 0 1 4 0;
#X connect 1 0 0 0;
#X connect 5 0 3 0;
#X connect 5 0 4 0;
#X connect 6 0 1 0;

--- NEW FILE: expr-help.pd ---
#N canvas 70 36 1012 579 10;
#X text 66 10 expression evaluation family - expr \, expr~ \, fexpr~
;
#X text 63 239 Syntyax:;
#X text 64 311 $f#: float input variable;
#X text 65 326 $s#: symbol input variable;
#X text 553 90 Used for expr~ only:;
#X text 553 105 $v#: signal (vector) input (vector by vector evaluation)
;
#X text 550 164 Used for fexpr~ only:;
#X text 550 220 $y[n]: the output value indexed by n where n has to
satisfy 0 > n >= -vector size.;
#X text 550 248 (the vector size can be changed by the "block~" object.)
;
#X text 550 179 $x#[n]: the sample from inlet # indexed by n where
n has to satisfy 0 => n >= -vector size \, ($x# is a shorthand for
$x#[0] \, specifying the current sample);
#X text 63 151 expr~ is used for expression evaluaion of signal data
on the vector by vector basis;
#X text 63 136 expr is used for expression evaluaion of control data
;
#X text 67 39 For a more detailed documentaion refer to http://www.crca.ucsd.edu/~yadegari/expr.html
;
#X text 64 254 The syntax is very close to how expressions are written
in C. Variables are specified as follows where the '#' stands for the
inlet number:;
#X text 65 297 $i#: integer input variable;
#X text 63 179 fexpr~ is used for expression evaluaion on sample level
data \; i.e. \, filter design. Warning: fexpr~ is very cpu intensive.
;
#X text 633 12 updated for Pd 0.35 test 26 and expr* 0.4;
#X text 67 85 you can define multiple expressoins in the same object.
semicolon is used to separates the expressions.;
#X text 635 294 $y -> $y1[-1];
#X text 550 263 Shorthands: $x -> $x1[0];
#X text 635 279 $x1 -> $x1[0] $x2 -> $x2[0] .....;
#X text 635 309 $y1 -> $y1[-1] $y2 -> $y2[-1] .....;
#N canvas 0 0 828 385 Examples 0;
#X obj 33 151 expr 1;
#X floatatom 197 119 0 0 0;
#X floatatom 33 181 0 0 0;
#X msg 33 123 bang;
#X obj 101 149 expr 2 + 3;
#X msg 101 122 bang;
#X floatatom 101 177 0 0 0;
#X floatatom 196 177 0 0 0;
#X obj 196 149 expr 2+$f1;
#X floatatom 34 220 0 0 0;
#X floatatom 34 277 0 0 0;
#X obj 34 249 expr $f1 * $f2;
#X floatatom 113 220 0 0 0;
#N canvas 0 0 450 300 graph1 0;
#X array array1 10 float 0;
#X coords 0 10 10 0 200 150 1;
#X restore 584 180 graph;
#X floatatom 35 315 0 0 0;
#X floatatom 35 371 0 0 0;
#X floatatom 194 219 0 0 0;
#X floatatom 194 276 0 0 0;
#X obj 194 248 expr $s2[$f1];
#X msg 267 220 symbol array1;
#X obj 35 343 expr sin(2 * 3.14159 * $f1 / 360);
#X msg 330 281 \; array1 1 4 2 8 5 6 1 4 2 8 5 6;
#X floatatom 310 184 5 0 0;
#X floatatom 395 186 5 0 0;
#X floatatom 480 184 5 0 0;
#X floatatom 310 105 5 0 0;
#X obj 310 132 expr $f1 \; if ($f1 > 0 \, $f1 * 2 \, 0) \; if ($f1
<= 0 \, $f1 / 2 \, 0);
#X text 34 56 Examples of expr object;
#X text 304 88 an example of multiple expressions and the use of 'if'
;
#X connect 0 0 2 0;
#X connect 1 0 8 0;
#X connect 3 0 0 0;
#X connect 4 0 6 0;
#X connect 5 0 4 0;
#X connect 8 0 7 0;
#X connect 9 0 11 0;
#X connect 11 0 10 0;
#X connect 12 0 11 1;
#X connect 14 0 20 0;
#X connect 16 0 18 0;
#X connect 18 0 17 0;
#X connect 19 0 18 1;
#X connect 20 0 15 0;
#X connect 25 0 26 0;
#X connect 26 0 22 0;
#X connect 26 1 23 0;
#X connect 26 2 24 0;
#X restore 307 398 pd Examples of expr;
#N canvas 23 24 882 676 Examples 0;
#X text -88 101 expr~ examples:;
#X obj -24 355 print~;
#X msg 13 334 bang;
#X obj -24 276 sig~ 440;
#X floatatom 49 293 0 0 0;
#X floatatom -24 253 0 0 0;
#X obj -24 316 expr~ $v1*$f2;
#X obj 85 356 print~;
#X msg 101 335 bang;
#X floatatom 85 268 0 0 0;
#X floatatom 158 270 0 0 0;
#X floatatom 357 291 0 0 0;
#X floatatom 244 267 0 0 0;
#X obj 244 294 osc~;
#X msg 369 47 \; pd dsp 0;
#X msg 291 49 \; pd dsp 1;
#X text 294 26 audio on;
#X text 377 25 audio off;
#X text -45 236 vector times scalar;
#X text 87 236 vector;
#X obj 243 354 dac~;
#X text 241 245 frequency;
#X text 373 273 amplitude;
#X obj 85 315 expr~ $v1*$v2;
#X floatatom 207 471 5 0 0;
#X obj -40 520 tabsend~ a1;
#N canvas 0 0 450 300 graph4 0;
#X array a1 64 float 0;
#X coords 0 1 63 -1 200 140 1;
#X restore -39 542 graph;
#X obj -40 497 expr~ max(min($v1 \, $f2/10) \, -$f2/10);
#X text -38 123 NOTES: the first inlet of expr~ cannot be a $f1 or
$i1 \, this may change in later releases;
#X text -87 420 A simple limiter example;
#X obj 356 158 vsl 15 128 0 127 0 0 empty empty empty 20 8 0 8 -262144
-1 -1 0 1;
#X obj 243 315 expr~ $v1*$f2/128;
#X text -82 28 make sure you turn on audio for the expr~ examples;
#X obj -40 473 osc~ 2756.25;
#X text 122 436 Move the value below between 0 and 10;
#X text 126 451 to change the limiter threshold;
#X obj 417 522 tabsend~ a2;
#X obj 580 518 tabsend~ a3;
#X obj 417 439 osc~ 2756.25;
#N canvas 0 0 450 300 graph1 0;
#X array a2 64 float 1;
#A 0 -0.419198 -0.487122 -0.481805 -0.400382 -0.252053 -0.0571681 0.155563
0.353314 0.504227 0.582557 0.573016 0.473664 0.296682 0.0669659 -0.18137
-0.410083 -0.582709 -0.670415 -0.656787 -0.540803 -0.337462 -0.0758923
0.204826 0.461522 0.653623 0.74958 0.732042 0.600932 0.373867 0.0838359
-0.225617 -0.506972 -0.716061 -0.819026 -0.797803 -0.653251 -0.405409
-0.0906877 0.243486 0.545852 0.769218 0.877835 0.853191 0.697093 0.431698
0.096368 -0.258195 -0.577642 -0.812367 -0.925245 -0.897515 -0.731894
-0.452386 -0.100793 0.269551 0.601932 0.844984 0.960659 0.930205 0.757204
0.467199 0.103913 -0.277405 -0.618414;
#X coords 0 1 63 -1 200 140 1;
#X restore 347 554 graph;
#N canvas 0 0 450 300 graph2 0;
#X array a3 64 float 0;
#X coords 0 1 63 -1 200 140 1;
#X restore 569 554 graph;
#X obj 417 473 expr~ $v1 *$v2 \; if ($v2 > 0 \, 0 \, $v1*$v2);
#X obj 580 439 osc~ 100;
#X connect 2 0 1 0;
#X connect 3 0 6 0;
#X connect 4 0 6 1;
#X connect 5 0 3 0;
#X connect 6 0 1 0;
#X connect 8 0 7 0;
#X connect 9 0 23 0;
#X connect 10 0 23 1;
#X connect 11 0 31 1;
#X connect 12 0 13 0;
#X connect 13 0 31 0;
#X connect 23 0 7 0;
#X connect 24 0 27 1;
#X connect 27 0 25 0;
#X connect 30 0 11 0;
#X connect 31 0 20 0;
#X connect 31 0 20 1;
#X connect 33 0 27 0;
#X connect 38 0 41 0;
#X connect 41 0 36 0;
#X connect 41 1 37 0;
#X connect 42 0 41 1;
#X restore 307 433 pd Examples of expr~;
#X text 40 399 For expr examples click here ->;
#X text 41 433 For expr~ examples click here ->;
#X text 40 471 For fexpr~ examples click here ->;
#N canvas 0 0 1059 688 examples 0;
#X msg 519 84 \; pd dsp 0;
#X msg 428 84 \; pd dsp 1;
#X text 426 64 audio on;
#X text 518 65 audio off;
#X floatatom 126 304 0 0 0;
#X floatatom 259 323 0 0 0;
#X msg 226 283 -10;
#X text 53 103 fexpr~ examples:;
#X obj 125 571 print~;
#X msg 247 552 bang;
#X floatatom 125 475 0 0 0;
#X obj 126 347 fexpr~ ($x1[$f2]+$x1)/2;
#X obj 125 532 fexpr~ $x1+$y[-1];
#X floatatom 635 366 0 0 0;
#X floatatom 795 387 0 0 0;
#X obj 630 456 dac~;
#X obj 632 407 fexpr~ ($x1[$f2/1000]+$x1)/2;
#X msg 864 317 0 10000;
#X obj 795 368 line 0;
#X msg 798 318 -10000;
#X obj 120 389 dac~;
#X text 96 227 Simple FIR filter;
#X text 557 134 Simple FIR filter using fractional offset;
#X msg 704 318 -10000 10000;
#X obj 635 387 osc~ 2205;
#X msg 644 343 1102.5;
#X msg 862 342 0 10000;
#X msg 796 343 -20000;
#X msg 702 343 -20000 10000;
#X msg 635 318 2205;
#X msg 548 312 start;
#X msg 550 334 stop;
#X msg 57 284 start;
#X msg 56 309 stop;
#X msg 75 469 start;
#X msg 74 494 stop;
#X obj 491 335 loadbang;
#X obj 18 495 loadbang;
#X obj 1 309 loadbang;
#X text 617 291 frequency;
#X text 707 300 of the simple filter;
#X msg 293 282 -20;
#X obj 126 325 osc~ 2205;
#X msg 156 281 1102.5;
#X msg 110 281 2205;
#X msg 260 282 0;
#X text 123 445 simple accumulator defined as and an IIR filter;
#X text 52 148 NOTE: fexpr~ could use lots of CPU power \, by default
fexpr~ is on when it is loaded. In this page we are turning them off
with loadbang \, so to hear them you have to turn them on explicitly.
You can use the "start" and "stop" messages to start and stop fexpr~
and expr~;
#X text 706 288 index defining the frequency;
#X text 95 240 -10 offset will fully filter audio frequency of 2205
\, and -20 offset will filter audio at frequency of 1102.5;
#X text 559 215 Thus \, the offset -10000 will filter audio at frequency
of 2205 and the offset value -20000 will filter the audio at frequency
of 1102.5.;
#X text 558 161 When fractional offset is used \, fexpr~ determines
indexed by linear interpolation. In the following example the offset
value is divided by 1000 \, thus we can continuously change the offset
without an audible click in the output.;
#X text 288 318 If you change this value you;
#X text 290 330 hear a click;
#X text 51 87 make sure you turn on audio for the fexpr~ examples;
#X text 55 -323 Used for fexpr~ only:;
#X text 55 -267 $y[n]: the output value indexed by n where n has to
satisfy 0 > n >= -vector size.;
#X text 55 -239 (the vector size can be changed by the "block~" object.)
;
#X text 55 -308 $x#[n]: the sample from inlet # indexed by n where
n has to satisfy 0 => n >= -vector size \, ($x# is a shorthand for
$x#[0] \, specifying the current sample);
#X text 140 -193 $y -> $y1[-1];
#X text 55 -224 Shorthands: $x -> $x1[0];
#X text 140 -208 $x1 -> $x1[0] $x2 -> $x2[0] .....;
#X text 140 -178 $y1 -> $y1[-1] $y2 -> $y2[-1] .....;
#X text 64 -125 fexpr~ responds to the following methods;
#X text 66 -106 clear - clears all the previous input and output buffers
;
#X text 65 -92 clear x# - clears the previous values of the #th input
;
#X text 66 -79 clear y# - clears the previous values of the #th output
;
#X text 66 -33 set x# val-1 val-2 ... - sets the as many supplied values
of the #th input;
#X text 513 -22 e.g. \, set x2 3.4 0.4 sets x2[-1]=3.4 and x2[-2]=0.4
;
#X text 66 -2 set y# val-1 val-2 ... - sets the as many supplied values
of the #th input;
#X text 514 4 e.g. \, set y3 1.1 3.3 4.5 sets y3[-1]=1.1 y3[-2]=3.3
and y3[-3]=4.5;
#X text 64 -54 set val val ... - sets the first past values of each
output;
#X text 513 -59 e.g. \, set 0.1 2.2 0.4 sets y1[-1]=0.1 y2[-1]=2.2
\, and y3[-1]=0.4;
#X msg 244 475 set 4000;
#X obj 125 504 sig~ 0.001;
#X msg 245 498 clear;
#X text 22 442 comment;
#X text 14 431 1 first click the start button;
#X text 307 494 2 click the set or the clear button;
#X text 304 547 3 then click bang to see how set and clear work;
#X connect 4 0 42 0;
#X connect 5 0 11 1;
#X connect 6 0 5 0;
#X connect 9 0 8 0;
#X connect 10 0 74 0;
#X connect 11 0 20 0;
#X connect 11 0 20 1;
#X connect 12 0 8 0;
#X connect 13 0 24 0;
#X connect 14 0 16 1;
#X connect 16 0 15 0;
#X connect 16 0 15 1;
#X connect 17 0 18 0;
#X connect 18 0 14 0;
#X connect 19 0 18 0;
#X connect 23 0 18 0;
#X connect 24 0 16 0;
#X connect 25 0 13 0;
#X connect 26 0 18 0;
#X connect 27 0 18 0;
#X connect 28 0 18 0;
#X connect 29 0 13 0;
#X connect 30 0 16 0;
#X connect 31 0 16 0;
#X connect 32 0 11 0;
#X connect 33 0 11 0;
#X connect 34 0 12 0;
#X connect 35 0 12 0;
#X connect 36 0 31 0;
#X connect 37 0 35 0;
#X connect 38 0 33 0;
#X connect 41 0 5 0;
#X connect 42 0 11 0;
#X connect 43 0 4 0;
#X connect 44 0 4 0;
#X connect 45 0 5 0;
#X connect 73 0 12 0;
#X connect 74 0 12 0;
#X connect 75 0 12 0;
#X restore 306 472 pd examples of fexpr~;
#X text 42 504 For using fexpr~ for solving;
#X text 43 520 differential equations click here ->;
#N canvas 112 22 944 449 lorenz 0;
#X obj 176 67 v pr;
#X obj 307 68 v r;
#X obj 233 69 v b;
#X floatatom 176 38 5 0 0;
#X floatatom 307 40 5 0 0;
#X msg 177 13 10;
#X obj 231 10 expr 8./3;
#X msg 128 136 set 1.2 2.3 4.4;
#X floatatom 233 39 7 0 0;
#X msg 75 46 stop;
#X msg 75 67 start;
#X floatatom 399 40 5 0 0;
#X obj 399 69 v dt;
#X msg 310 12 18;
#X msg 395 13 0.01;
#X obj 68 296 dac~;
#X obj 128 -41 bng 15 250 50 0 empty empty empty 20 8 0 8 -262144 -1
-1;
#X text 201 -41 <- turn audio on and bang here;
#X text 463 42 <- experiment with these numbers;
#X text 472 72 if you hear a buzz \, you have probably gone unstable
bang on the top again;
#X obj 489 15 line;
#X obj 128 241 /~ 20;
#X obj 234 238 /~ 20;
#X obj 340 237 /~ 20;
#X msg 484 -11 0.01 \, 0.04 5000;
#X obj 128 185 fexpr~ $y1+(pr*$y2-pr*$y1)*dt \; $y2 +(-$y1*$y3 + r*$y1-$y2)*dt
\; $y3+($y1*$y2 - b*$y3)*dt;
#X obj 14 65 loadbang;
#X text 113 -100 This is an example of how fexpr~ could be used for
solving differential equations \, in this case the lorenz equations
which generate chotic signals;
#X text 361 182 Note the following shorthands:;
#X text 360 198 $y1 -> $y1[-1] \, $y2 -> $y2[-1] \, .....;
#X text 248 136 the 'set' commands sets the initial previous values
;
#X obj 128 298 tabsend~ lorenz1a;
#X obj 234 278 tabsend~ lorenz2a;
#X obj 339 259 tabsend~ lorenz3a;
#N canvas 0 0 450 300 graph1 0;
#X array lorenz1a 64 float 0;
#X coords 0 1 63 -1 200 140 1;
#X restore 73 437 graph;
#N canvas 0 0 450 300 graph2 0;
#X array lorenz2a 64 float 0;
#X coords 0 1 63 -1 200 140 1;
#X restore 331 435 graph;
#N canvas 0 0 450 300 graph3 0;
#X array lorenz3a 64 float 0;
#X coords 0 1 63 -1 200 140 1;
#X restore 592 436 graph;
#X text 301 315 You can see the graphs if you scroll down;
#X text 301 328 but the redrawings may cause clicks in the audio;
#X connect 3 0 0 0;
#X connect 4 0 1 0;
#X connect 5 0 3 0;
#X connect 6 0 8 0;
#X connect 7 0 25 0;
#X connect 8 0 2 0;
#X connect 9 0 25 0;
#X connect 10 0 25 0;
#X connect 11 0 12 0;
#X connect 13 0 4 0;
#X connect 14 0 11 0;
#X connect 16 0 5 0;
#X connect 16 0 6 0;
#X connect 16 0 13 0;
#X connect 16 0 14 0;
#X connect 16 0 7 0;
#X connect 16 0 10 0;
#X connect 20 0 11 0;
#X connect 21 0 31 0;
#X connect 21 0 15 0;
#X connect 21 0 15 1;
#X connect 22 0 32 0;
#X connect 23 0 33 0;
#X connect 24 0 20 0;
#X connect 25 0 21 0;
#X connect 25 1 22 0;
#X connect 25 2 23 0;
#X connect 26 0 9 0;
#X restore 308 518 pd lorenz equations for audition;
#N canvas 97 36 978 656 lorenz 0;
#X obj 176 67 v pr;
#X obj 307 68 v r;
#X obj 233 69 v b;
#X floatatom 176 38 5 0 0;
#X floatatom 307 40 5 0 0;
#X msg 177 13 10;
#X obj 231 10 expr 8./3;
#N canvas 0 0 450 300 graph1 0;
#X array lorenz1 2048 float 0;
#X coords 0 -1 2047 1 200 140 1;
#X restore 82 357 graph;
#N canvas 0 0 450 300 graph2 0;
#X array lorenz2 2048 float 0;
#X coords 0 -1 2047 1 200 140 1;
#X restore 327 353 graph;
#N canvas 0 0 450 300 graph3 0;
#X array lorenz3 2048 float 0;
#X coords 0 -1 2047 1 200 140 1;
#X restore 570 347 graph;
#X msg 128 136 set 1.2 2.3 4.4;
#X floatatom 233 39 7 0 0;
#X msg 75 46 stop;
#X msg 75 67 start;
#X floatatom 399 40 5 0 0;
#X obj 399 69 v dt;
#X msg 310 12 18;
#X msg 395 13 0.01;
#X obj 128 -41 bng 15 250 50 0 empty empty empty 20 8 0 8 -262144 -1
-1;
#X text 201 -41 <- turn audio on and bang here;
#X text 463 42 <- experiment with these numbers;
#X text 472 72 if you hear a buzz \, you have probably gone unstable
bang on the top again;
#X obj 489 15 line;
#X obj 128 241 /~ 20;
#X obj 234 238 /~ 20;
#X obj 340 237 /~ 20;
#X msg 484 -11 0.01 \, 0.04 5000;
#X obj 14 65 loadbang;
#X text 113 -100 This is an example of how fexpr~ could be used for
solving differential equations \, in this case the lorenz equations
which generate chotic signals;
#X text 361 182 Note the following shorthands:;
#X text 360 198 $y1 -> $y1[-1] \, $y2 -> $y2[-1] \, .....;
#X text 248 136 the 'set' commands sets the initial previous values
;
#X obj 128 298 tabsend~ lorenz1;
#X obj 234 278 tabsend~ lorenz2;
#X obj 339 259 tabsend~ lorenz3;
#X obj 627 280 block~ 2048;
#X text 669 133 Lorenz Equations;
#X obj 128 185 fexpr~ $y1+pr * ($y2-$y1)*dt \; $y2 +(-$y1*$y3 + r*$y1-$y2)*dt
\; $y3+($y1*$y2 - b*$y3)*dt;
#X text 672 197 dZ/dt = -bZ;
#X text 669 167 dX/dt = pr * (X - Y);
#X text 668 147 written with 3 state variable X \, Y \, and Z;
#X text 670 182 dY/dt = -XZ + rX - y;
#X connect 3 0 0 0;
#X connect 4 0 1 0;
#X connect 5 0 3 0;
#X connect 6 0 11 0;
#X connect 10 0 37 0;
#X connect 11 0 2 0;
#X connect 12 0 37 0;
#X connect 13 0 37 0;
#X connect 14 0 15 0;
#X connect 16 0 4 0;
#X connect 17 0 14 0;
#X connect 18 0 5 0;
#X connect 18 0 6 0;
#X connect 18 0 16 0;
#X connect 18 0 17 0;
#X connect 18 0 10 0;
#X connect 18 0 13 0;
#X connect 22 0 14 0;
#X connect 23 0 32 0;
#X connect 24 0 33 0;
#X connect 25 0 34 0;
#X connect 26 0 22 0;
#X connect 27 0 12 0;
#X connect 37 0 23 0;
#X connect 37 1 24 0;
#X connect 37 2 25 0;
#X restore 308 541 pd lorenz equations for visualization;
#X text 68 24 by Shahrokh Yadegari;

--- NEW FILE: complex-mod~-help.pd ---
#N canvas 136 85 600 480 12;
#X graph graph1 0 -1 882 1 279 209 579 39;
#X array mod-output 882 float;
#X pop;
#X msg 84 256 bang \; pd dsp 1;
#X floatatom 67 56;
#X obj 67 186 complex-mod~;
#X obj 67 84 phasor~ 440;
#X obj 67 115 cos~;
#X obj 106 138 cos~;
#X obj 106 114 -~ 0.25;
#X floatatom 145 152;
#X text 93 351 The complex modulator takes two signals in which it considers to be the real and imaginary part of a complex-valued signal. It then does a complex multiplication by a sinusoud to shift all frequencies up or down by any frequency shift in Hz. See also hilbert~.;
#X obj 69 298 tabwrite~ mod-output;
#X text 149 204 right outlet;
#X text 151 220 gives the other;
#X text 149 236 sideband;
#X connect 1 0 10 0;
#X connect 2 0 4 0;
#X connect 3 0 10 0;
#X connect 4 0 5 0;
#X connect 4 0 7 0;
#X connect 5 0 3 0;
#X connect 6 0 3 1;
#X connect 7 0 6 0;
#X connect 8 0 3 2;

--- NEW FILE: rev3~-help.pd ---
#N canvas 70 263 765 380 12;
#X floatatom 99 212 0 0 120 0 - - -;
#X floatatom 105 340 0 0 120 0 - - -;
#N canvas 0 0 539 448 tests 0;
#X obj 67 33 inlet;
#X obj 309 189 inlet;
#X obj 235 207 line~;
#X obj 235 230 cos~;
#X obj 235 68 loadbang;
#X msg 235 91 -0.25;
#X obj 235 276 *~;
#X obj 186 309 hip~ 5;
#X floatatom 308 218 0 0 0 0 - - -;
#X obj 308 264 osc~ 440;
#X obj 308 241 mtof;
#X obj 235 253 *~ 0.1;
#X obj 308 299 *~;
#X obj 326 325 *~;
#X obj 292 330 *~;
#X msg 279 150 -0.25 \, 0.25 \$1;
#X obj 41 148 biquad~ 0 0 1 -1 0;
#X obj 63 70 t b;
#X obj 104 72 del 3;
#X obj 57 101 1;
#X obj 96 101 0;
#X obj 41 355 outlet~;
#X obj 279 126 inlet;
#X obj 51 192 *~;
#X connect 0 0 17 0;
#X connect 1 0 8 0;
#X connect 2 0 3 0;
#X connect 3 0 11 0;
#X connect 4 0 5 0;
#X connect 5 0 2 0;
#X connect 6 0 7 0;
#X connect 7 0 21 0;
#X connect 8 0 10 0;
#X connect 9 0 6 1;
#X connect 9 0 12 0;
#X connect 9 0 12 1;
#X connect 9 0 13 0;
#X connect 10 0 9 0;
#X connect 11 0 6 0;
#X connect 12 0 13 1;
#X connect 12 0 6 1;
#X connect 12 0 14 0;
#X connect 12 0 14 1;
#X connect 13 0 6 1;
#X connect 14 0 6 1;
#X connect 15 0 2 0;
#X connect 16 0 23 0;
#X connect 17 0 18 0;
#X connect 17 0 19 0;
#X connect 18 0 20 0;
#X connect 19 0 16 0;
#X connect 19 0 23 1;
#X connect 20 0 16 0;
#X connect 20 0 23 1;
#X connect 22 0 15 0;
#X connect 23 0 21 0;
#X restore 16 171 pd tests;
#X msg 55 52 10;
#X msg 53 79 20;
#X msg 52 107 100;
#X msg 51 132 500;
#X obj 16 32 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
-1;
#X text 36 26 impulse;
#N canvas 0 0 450 300 output 0;
#X obj 54 202 dac~;
#X obj 132 119 pack 0 100;
#X obj 132 142 line~;
#X obj 54 165 *~;
#X obj 132 97 dbtorms;
#X obj 33 42 inlet~;
#X obj 177 42 inlet;
#X obj 177 74 clip 0 120;
#X msg 257 133 \; pd dsp 1;
#X obj 98 42 inlet~;
#X obj 94 168 *~;
#X connect 1 0 2 0;
#X connect 2 0 3 1;
#X connect 2 0 10 1;
#X connect 3 0 0 0;
#X connect 4 0 1 0;
#X connect 5 0 3 0;
#X connect 6 0 7 0;
#X connect 6 0 8 0;
#X connect 7 0 4 0;
#X connect 9 0 10 0;
#X connect 10 0 0 1;
#X restore 17 340 pd output;
#X floatatom 96 144 0 0 0 0 - - -;
#X text 135 113 tone;
#X text 134 129 pitch;
#X text 140 212 level \, dB;
#X floatatom 134 234 0 0 100 0 - - -;
#X text 175 234 liveness \, 0-100;
#X floatatom 169 258 4 0 5000 0 - - -;
#X floatatom 204 281 0 0 100 0 - - -;
#X text 217 256 crossover frequency \, Hz.;
#X text 240 283 HF damping \, percent;
#X text 140 341 output level \, dB;
#X text 94 52 tone;
#X text 95 69 bursts;
#X text 131 147 (60 for;
#X text 114 167 middle C);
#X obj 29 307 rev3~ 100 90 3000 20;
#X text 263 4 REV3~ - hard-core \, 2-in \, 4-out reverberator;
#X text 236 56 The creation arguments (level \, liveness \, crossover
frequency \, HF damping) may also be supplied in four inlets as shown.
The "liveness" (actually the internal feedback percentage) should be
100 for infinite reverb \, 90 for longish \, and 80 for short. The
crossover frequency and HF damping work together: at frequencies above
crossover \, the feedback is diminished by the "damping" as a percentage.
So zero HF damping means equal reverb time at all frequencies \, and
100% damping means almost nothing above the crossover frequency gets
through.;
#X text 236 29 (A more expensive \, presumably better \, one than rev2~.)
;
#X text 470 352 modified for Pd version 0.37-1;
#X connect 0 0 25 2;
#X connect 1 0 9 2;
#X connect 2 0 9 0;
#X connect 2 0 25 0;
#X connect 3 0 2 1;
#X connect 4 0 2 1;
#X connect 5 0 2 1;
#X connect 6 0 2 1;
#X connect 7 0 2 0;
#X connect 10 0 2 2;
#X connect 14 0 25 3;
#X connect 16 0 25 4;
#X connect 17 0 25 5;
#X connect 25 0 9 0;
#X connect 25 1 9 1;

--- NEW FILE: rev1~-help.pd ---
#N canvas 55 21 1008 526 12;
#X obj 148 439 dac~;
#X obj 58 72 line~;
#X msg 58 49 0 \, 10000 5;
#X obj 58 118 cos~;
#X msg 146 70 1;
#X obj 146 47 loadbang;
#X obj 58 95 clip~ 0 0.25;
#X floatatom 173 264 0 0 0;
#X obj 251 134 line~;
#X obj 251 157 cos~;
#X msg 324 54 -0.25 \, 0.25 100;
#X obj 251 8 loadbang;
#X msg 251 31 -0.25;
#X obj 251 203 *~;
#X obj 58 140 hip~ 5;
#X floatatom 162 328 0 0 0;
#X obj 162 373 pack 0 100;
#X obj 162 396 line~;
#X obj 148 416 *~;
#X obj 162 350 dbtorms;
#X msg 324 77 -0.25 \, 0.25 400;
#X floatatom 324 145 0 0 0;
#X obj 324 191 osc~ 440;
#X obj 324 168 mtof;
#X msg 324 31 -0.25 \, 0.25 20;
#X obj 251 180 *~ 0.1;
#X msg 324 100 -0.25 \, 0.25 1000;
#X msg 324 122 -0.25 \, 0.25 2000;
#X obj 324 226 *~;
#X obj 342 252 *~;
#X obj 58 439 dac~;
#X floatatom 68 323 0 0 0;
#X obj 68 368 pack 0 100;
#X obj 68 391 line~;
#X obj 58 416 *~;
#X obj 68 346 dbtorms;
#X msg 324 8 0;
#X obj 308 257 *~;
#X obj 58 26 metro 2000;
#X floatatom 58 4 0 0 0;
#X msg 220 265 bang;
#X obj 284 322 env~ 32768;
#X floatatom 284 344 0 0 0;
#X text 166 244 1 sec;
#X text 143 226 dB after;
#X text 220 245 clear;
#X text 1 51 impulse;
#X text 362 7 tone;
#X text 484 31 beeps;
#X text 428 167 This is an experimental reverberator design composed
of a series of allpass filters with exponentially growing delay times.
Each allpass filter has a gain of 0.7. The reverb time is adjusted
by adjusting the input gains of the allpass filters. The last unit
is modified so that its first two "echos" mimic those of an allpass
but its loop gain depends on reverb time.;
#X text 430 299 Reverb time is controlled by specifying the dB gain
(100 normal) after one second \, so that 100 corresponds to infinite
reverb time \, 70 to two seconds \, 40 to one second \, and 0 to 0
;
#X text 671 499 modified for Pd version 0.30.;
#X msg 560 34 \; pd dsp 1;
#X text 427 475 The rev1~ module eats about 18% of my 300mHz P2 machine.
;
#X obj 148 289 rev1~;
#X text 428 381 The "clear" button impolitely clears out all the delay
lines \, You may immediately resume pumping the reverberator \, but
the input signal should be cleanly enveloped. The output \, too \,
must be enveloped and may not be opened until 5 msec after the "clear"
message is sent.;
#X connect 1 0 6 0;
#X connect 2 0 1 0;
#X connect 3 0 14 0;
#X connect 4 0 1 0;
#X connect 5 0 4 0;
#X connect 6 0 3 0;
#X connect 7 0 54 1;
#X connect 8 0 9 0;
#X connect 9 0 25 0;
#X connect 10 0 8 0;
#X connect 11 0 12 0;
#X connect 12 0 8 0;
#X connect 13 0 14 0;
#X connect 14 0 34 0;
#X connect 14 0 54 0;
#X connect 15 0 19 0;
#X connect 16 0 17 0;
#X connect 17 0 18 1;
#X connect 18 0 0 0;
#X connect 19 0 16 0;
#X connect 20 0 8 0;
#X connect 21 0 23 0;
#X connect 22 0 13 1;
#X connect 22 0 28 0;
#X connect 22 0 28 1;
#X connect 22 0 29 0;
#X connect 23 0 22 0;
#X connect 24 0 8 0;
#X connect 25 0 13 0;
#X connect 26 0 8 0;
#X connect 27 0 8 0;
#X connect 28 0 29 1;
#X connect 28 0 13 1;
#X connect 28 0 37 0;
#X connect 28 0 37 1;
#X connect 29 0 13 1;
#X connect 31 0 35 0;
#X connect 32 0 33 0;
#X connect 33 0 34 1;
#X connect 34 0 30 0;
#X connect 35 0 32 0;
#X connect 36 0 8 0;
#X connect 37 0 13 1;
#X connect 38 0 2 0;
#X connect 39 0 38 0;
#X connect 40 0 54 2;
#X connect 41 0 42 0;
#X connect 54 0 18 0;
#X connect 54 0 41 0;





More information about the Pd-cvs mailing list