aboutsummaryrefslogtreecommitdiff
path: root/pd/doc/5.reference
diff options
context:
space:
mode:
authorMiller Puckette <millerpuckette@users.sourceforge.net>2004-09-06 20:20:36 +0000
committerMiller Puckette <millerpuckette@users.sourceforge.net>2004-09-06 20:20:36 +0000
commited932acb5860bf8b9296169676499562a55d139e (patch)
treedc6a40dba908deb07c175cd40ee19c197318f72d /pd/doc/5.reference
parentdad636821f6e7d3ead02c157f308c0ceeba9af3d (diff)
checking in version 0.38test5.
Oops, I realize I forgot some more nice files, will add them and re-commit. svn path=/trunk/; revision=2010
Diffstat (limited to 'pd/doc/5.reference')
-rw-r--r--pd/doc/5.reference/cpole~-help.pd119
-rw-r--r--pd/doc/5.reference/czero_rev~-help.pd142
-rw-r--r--pd/doc/5.reference/czero~-help.pd124
-rw-r--r--pd/doc/5.reference/line-help.pd17
-rw-r--r--pd/doc/5.reference/lop~-help.pd48
-rw-r--r--pd/doc/5.reference/rpole~-help.pd79
-rw-r--r--pd/doc/5.reference/rzero_rev~-help.pd81
-rw-r--r--pd/doc/5.reference/rzero~-help.pd79
8 files changed, 661 insertions, 28 deletions
diff --git a/pd/doc/5.reference/cpole~-help.pd b/pd/doc/5.reference/cpole~-help.pd
new file mode 100644
index 00000000..e0df0339
--- /dev/null
+++ b/pd/doc/5.reference/cpole~-help.pd
@@ -0,0 +1,119 @@
+#N canvas 281 13 533 567 12;
+#X obj 54 90 osc~ 100;
+#X msg 62 117 clear;
+#X obj 79 547 lop~;
+#X text 10 550 see also:;
+#X text 333 549 updated for Pd version-0.38;
+#X obj 86 497 rzero~;
+#X obj 37 517 cpole~;
+#X obj 37 497 rpole~;
+#X obj 135 497 rzero_rev~;
+#X obj 86 517 czero~;
+#X obj 135 517 czero_rev~;
+#X text 213 497 real;
+#X text 212 518 complex;
+#X text 34 481 1-pole;
+#X text 83 481 1-zero;
+#X text 133 481 1-zero \, reversed;
+#X text 59 466 summary of raw filters:;
+#X text 73 300 y[n] = y[n-1] + a[n] * x[n];
+#X text 12 369 The transfer function is H(Z) = 1/(1 - aZ^-1).;
+#X text 106 116 <-- clear internal state to zero;
+#N canvas 168 90 498 357 test 0;
+#X obj 76 78 osc~;
+#X floatatom 76 55 5 0 0 0 - - -;
+#X obj 18 287 env~ 16384;
+#X floatatom 18 311 5 0 0 0 - - -;
+#X obj 104 107 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0
+1;
+#X obj 76 105 *~;
+#X msg 85 132 set 1;
+#X floatatom 350 112 4 -1000 1000 0 - - -;
+#X obj 215 315 dac~;
+#X obj 215 279 *~;
+#X text 80 18 Stuff to test it:;
+#X obj 241 106 cos~;
+#X obj 77 227 cpole~;
+#X obj 261 65 phasor~;
+#X floatatom 261 44 5 0 0 0 - - -;
+#X floatatom 132 55 5 0 0 0 - - -;
+#X obj 160 107 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0
+1;
+#X obj 132 105 *~;
+#X obj 132 78 phasor~;
+#X floatatom 324 42 5 0 0 0 - - -;
+#X obj 324 65 / 1000;
+#X obj 274 107 -~ 0.25;
+#X obj 274 129 cos~;
+#X obj 350 131 / 1000;
+#X obj 240 157 *~;
+#X obj 274 157 *~;
+#X obj 94 287 env~ 16384;
+#X floatatom 94 311 5 0 0 0 - - -;
+#X obj 247 275 dbtorms;
+#X floatatom 248 255 5 0 0 0 - - -;
+#X connect 0 0 5 0;
+#X connect 1 0 0 0;
+#X connect 2 0 3 0;
+#X connect 4 0 5 1;
+#X connect 5 0 12 0;
+#X connect 6 0 12 0;
+#X connect 7 0 23 0;
+#X connect 9 0 8 0;
+#X connect 9 0 8 1;
+#X connect 11 0 24 0;
+#X connect 12 0 2 0;
+#X connect 12 0 9 0;
+#X connect 12 1 26 0;
+#X connect 13 0 21 0;
+#X connect 13 0 11 0;
+#X connect 14 0 13 0;
+#X connect 15 0 18 0;
+#X connect 16 0 17 1;
+#X connect 17 0 12 0;
+#X connect 18 0 17 0;
+#X connect 19 0 20 0;
+#X connect 20 0 13 1;
+#X connect 21 0 22 0;
+#X connect 22 0 25 0;
+#X connect 23 0 25 1;
+#X connect 23 0 24 1;
+#X connect 24 0 12 2;
+#X connect 25 0 12 3;
+#X connect 26 0 27 0;
+#X connect 28 0 9 1;
+#X connect 29 0 28 0;
+#X restore 459 483 pd test;
+#X text 113 550 etc.: user-friendly filters;
+#X text 10 387 (Pd also provides a suite of user-friendly filters.
+This and other raw filters are provided for situations which the user-friendly
+ones can't handle. See Chapter 8 of http://crca.ucsd.edu/~msp/techniques
+for an introduction to the necessary theory.);
+#X obj 52 7 cpole~;
+#X text 114 7 complex one-pole (recursive) filter \, raw;
+#X text 118 91 <-- signal to filter (real part);
+#X text 117 173 <-- signal to filter (imaginary part);
+#X obj 84 172 sig~;
+#X obj 115 197 sig~;
+#X text 149 199 <-- filter coefficient (real part);
+#X obj 145 219 sig~;
+#X obj 53 244 cpole~ 0.9 0.4;
+#X text 159 246 <-- creation arguments initialize filter;
+#X text 187 262 coefficient (real and imaginary part);
+#X text 14 278 The action of cpole~ is:;
+#X text 11 320 where y[n] is the output \, x[n] the input \, and a[n]
+the filter coefficient (all complex numbers). The filter is unstable
+if/when |a[n]|>1.;
+#X text 8 31 Cpole~ filters a complex audio signal (first two inlets)
+via a one-pole filter \, whose coefficients are controlled by creation
+arguments or by another complex audio signal (remaining two inlets).
+;
+#X text 150 144 <-- set internal state (real&imaginary parts);
+#X msg 64 143 set 0.6 0.8;
+#X text 179 221 <-- filter coefficient (imaginary part);
+#X connect 0 0 31 0;
+#X connect 1 0 31 0;
+#X connect 27 0 31 1;
+#X connect 28 0 31 2;
+#X connect 30 0 31 3;
+#X connect 38 0 31 0;
diff --git a/pd/doc/5.reference/czero_rev~-help.pd b/pd/doc/5.reference/czero_rev~-help.pd
new file mode 100644
index 00000000..77b5cee6
--- /dev/null
+++ b/pd/doc/5.reference/czero_rev~-help.pd
@@ -0,0 +1,142 @@
+#N canvas 118 9 534 590 12;
+#X obj 57 106 osc~ 100;
+#X msg 65 133 clear;
+#X obj 82 563 lop~;
+#X text 13 566 see also:;
+#X text 336 565 updated for Pd version-0.38;
+#X obj 89 513 rzero~;
+#X obj 40 533 cpole~;
+#X obj 40 513 rpole~;
+#X obj 138 513 rzero_rev~;
+#X obj 89 533 czero~;
+#X obj 138 533 czero_rev~;
+#X text 216 513 real;
+#X text 215 534 complex;
+#X text 37 497 1-pole;
+#X text 86 497 1-zero;
+#X text 136 497 1-zero \, reversed;
+#X text 62 482 summary of raw filters:;
+#X text 109 132 <-- clear internal state to zero;
+#N canvas 255 257 585 372 test 0;
+#X obj 152 296 env~ 16384;
+#X floatatom 152 320 5 0 0 0 - - -;
+#X floatatom 499 76 4 -1000 1000 0 - - -;
+#X obj 349 324 dac~;
+#X obj 349 288 *~;
+#X obj 390 70 cos~;
+#X floatatom 298 8 5 0 0 0 - - -;
+#X obj 298 31 phasor~;
+#X floatatom 398 14 5 0 0 0 - - -;
+#X obj 397 39 / 1000;
+#X obj 423 71 -~ 0.25;
+#X obj 423 93 cos~;
+#X obj 499 95 / 1000;
+#X obj 389 121 *~;
+#X obj 423 121 *~;
+#X obj 228 296 env~ 16384;
+#X floatatom 228 320 5 0 0 0 - - -;
+#X obj 381 284 dbtorms;
+#X floatatom 382 264 5 0 0 0 - - -;
+#X obj 117 89 phasor~;
+#X floatatom 115 60 5 0 0 0 - - -;
+#X text 77 13 Stuff to test it:;
+#X obj 131 149 cpole~;
+#X obj 241 262 *~ -1;
+#X obj 21 261 env~ 16384;
+#X floatatom 21 285 5 0 0 0 - - -;
+#X obj 50 312 env~ 16384;
+#X floatatom 50 336 5 0 0 0 - - -;
+#X obj 138 181 cpole~;
+#X obj 146 216 czero_rev~;
+#X obj 154 264 czero_rev~;
+#X msg 204 103 clear;
+#X obj 262 50 cos~;
+#X obj 261 83 *~ 0.02;
+#X obj 193 50 sig~ 1.1;
+#X obj 448 296 *~;
+#X connect 0 0 1 0;
+#X connect 2 0 12 0;
+#X connect 4 0 3 0;
+#X connect 5 0 13 0;
+#X connect 6 0 7 0;
+#X connect 7 0 32 0;
+#X connect 8 0 9 0;
+#X connect 9 0 7 1;
+#X connect 10 0 11 0;
+#X connect 11 0 14 0;
+#X connect 12 0 14 1;
+#X connect 12 0 13 1;
+#X connect 13 0 22 2;
+#X connect 13 0 28 2;
+#X connect 13 0 29 2;
+#X connect 13 0 30 2;
+#X connect 14 0 22 3;
+#X connect 14 0 23 0;
+#X connect 14 0 29 3;
+#X connect 15 0 16 0;
+#X connect 17 0 4 1;
+#X connect 17 0 35 1;
+#X connect 18 0 17 0;
+#X connect 19 0 22 0;
+#X connect 19 0 24 0;
+#X connect 19 0 35 0;
+#X connect 20 0 19 0;
+#X connect 22 0 28 0;
+#X connect 22 1 28 1;
+#X connect 23 0 28 3;
+#X connect 23 0 30 3;
+#X connect 24 0 25 0;
+#X connect 26 0 27 0;
+#X connect 28 0 26 0;
+#X connect 28 0 29 0;
+#X connect 28 1 29 1;
+#X connect 29 0 30 0;
+#X connect 29 1 30 1;
+#X connect 30 0 0 0;
+#X connect 30 0 4 0;
+#X connect 30 1 15 0;
+#X connect 31 0 22 0;
+#X connect 31 0 28 0;
+#X connect 32 0 33 0;
+#X connect 33 0 5 0;
+#X connect 33 0 10 0;
+#X connect 34 0 33 0;
+#X connect 35 0 3 1;
+#X restore 462 499 pd test;
+#X text 116 566 etc.: user-friendly filters;
+#X text 13 403 (Pd also provides a suite of user-friendly filters.
+This and other raw filters are provided for situations which the user-friendly
+ones can't handle. See Chapter 8 of http://crca.ucsd.edu/~msp/techniques
+for an introduction to the necessary theory.);
+#X text 121 107 <-- signal to filter (real part);
+#X text 120 189 <-- signal to filter (imaginary part);
+#X obj 87 188 sig~;
+#X obj 118 213 sig~;
+#X text 152 215 <-- filter coefficient (real part);
+#X obj 148 235 sig~;
+#X text 162 262 <-- creation arguments initialize filter;
+#X text 190 278 coefficient (real and imaginary part);
+#X text 153 160 <-- set internal state (real&imaginary parts);
+#X msg 67 159 set 0.6 0.8;
+#X text 182 237 <-- filter coefficient (imaginary part);
+#X text 17 295 The action of czero~ is:;
+#X text 14 336 where y[n] is the output \, x[n] the input \, and a[n]
+the filter coefficient (all complex numbers). The filter is always
+stable.;
+#X obj 56 260 czero~ 0.9 0.4;
+#X obj 36 7 czero_rev~;
+#X text 114 9 complex one-zero (non-recursive) "reverse" filter \,
+raw;
+#X text 11 34 Czero_rev~ filters a complex audio signal (first two
+inlets) via a one-zero filter \, whose coefficients are controlled
+by creation arguments or by another complex audio signal (remaining
+two inlets). The impulse response is that of "rzero" reversed in time.
+;
+#X text 77 316 y[n] = - a[n] * x[n] + x[n-1];
+#X text 15 385 The transfer function is H(Z) = -a + Z^-1.;
+#X connect 0 0 34 0;
+#X connect 1 0 34 0;
+#X connect 23 0 34 1;
+#X connect 24 0 34 2;
+#X connect 26 0 34 3;
+#X connect 30 0 34 0;
diff --git a/pd/doc/5.reference/czero~-help.pd b/pd/doc/5.reference/czero~-help.pd
new file mode 100644
index 00000000..58dab9cc
--- /dev/null
+++ b/pd/doc/5.reference/czero~-help.pd
@@ -0,0 +1,124 @@
+#N canvas 79 19 533 567 12;
+#X obj 54 90 osc~ 100;
+#X msg 62 117 clear;
+#X obj 79 547 lop~;
+#X text 10 550 see also:;
+#X text 333 549 updated for Pd version-0.38;
+#X obj 86 497 rzero~;
+#X obj 37 517 cpole~;
+#X obj 37 497 rpole~;
+#X obj 135 497 rzero_rev~;
+#X obj 86 517 czero~;
+#X obj 135 517 czero_rev~;
+#X text 213 497 real;
+#X text 212 518 complex;
+#X text 34 481 1-pole;
+#X text 83 481 1-zero;
+#X text 133 481 1-zero \, reversed;
+#X text 59 466 summary of raw filters:;
+#X text 106 116 <-- clear internal state to zero;
+#N canvas 255 257 585 372 test 0;
+#X obj 152 296 env~ 16384;
+#X floatatom 152 320 5 0 0 0 - - -;
+#X floatatom 484 121 4 -1000 1000 0 - - -;
+#X obj 349 324 dac~;
+#X obj 349 288 *~;
+#X obj 375 115 cos~;
+#X floatatom 301 60 5 0 0 0 - - -;
+#X obj 329 112 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0
+1;
+#X obj 301 110 *~;
+#X obj 301 83 phasor~;
+#X floatatom 382 66 5 0 0 0 - - -;
+#X obj 382 89 / 1000;
+#X obj 408 116 -~ 0.25;
+#X obj 408 138 cos~;
+#X obj 484 140 / 1000;
+#X obj 374 166 *~;
+#X obj 408 166 *~;
+#X obj 228 296 env~ 16384;
+#X floatatom 228 320 5 0 0 0 - - -;
+#X obj 381 284 dbtorms;
+#X floatatom 382 264 5 0 0 0 - - -;
+#X obj 245 220 czero~;
+#X floatatom 201 132 4 -1000 1000 0 - - -;
+#X obj 92 126 cos~;
+#X obj 112 85 phasor~;
+#X floatatom 115 60 5 0 0 0 - - -;
+#X obj 125 127 -~ 0.25;
+#X obj 125 149 cos~;
+#X obj 201 151 / 1000;
+#X obj 91 177 *~;
+#X obj 125 177 *~;
+#X text 214 27 Stuff to test it:;
+#X connect 0 0 1 0;
+#X connect 2 0 14 0;
+#X connect 4 0 3 0;
+#X connect 4 0 3 1;
+#X connect 5 0 15 0;
+#X connect 6 0 9 0;
+#X connect 7 0 8 1;
+#X connect 8 0 21 0;
+#X connect 9 0 8 0;
+#X connect 10 0 11 0;
+#X connect 11 0 5 0;
+#X connect 11 0 12 0;
+#X connect 12 0 13 0;
+#X connect 13 0 16 0;
+#X connect 14 0 16 1;
+#X connect 14 0 15 1;
+#X connect 15 0 21 2;
+#X connect 16 0 21 3;
+#X connect 17 0 18 0;
+#X connect 19 0 4 1;
+#X connect 20 0 19 0;
+#X connect 21 0 0 0;
+#X connect 21 0 4 0;
+#X connect 21 1 17 0;
+#X connect 22 0 28 0;
+#X connect 23 0 29 0;
+#X connect 24 0 26 0;
+#X connect 24 0 23 0;
+#X connect 25 0 24 0;
+#X connect 26 0 27 0;
+#X connect 27 0 30 0;
+#X connect 28 0 30 1;
+#X connect 28 0 29 1;
+#X connect 29 0 21 0;
+#X connect 30 0 21 1;
+#X restore 459 483 pd test;
+#X text 113 550 etc.: user-friendly filters;
+#X text 10 387 (Pd also provides a suite of user-friendly filters.
+This and other raw filters are provided for situations which the user-friendly
+ones can't handle. See Chapter 8 of http://crca.ucsd.edu/~msp/techniques
+for an introduction to the necessary theory.);
+#X text 118 91 <-- signal to filter (real part);
+#X text 117 173 <-- signal to filter (imaginary part);
+#X obj 84 172 sig~;
+#X obj 115 197 sig~;
+#X text 149 199 <-- filter coefficient (real part);
+#X obj 145 219 sig~;
+#X text 159 246 <-- creation arguments initialize filter;
+#X text 187 262 coefficient (real and imaginary part);
+#X text 150 144 <-- set internal state (real&imaginary parts);
+#X msg 64 143 set 0.6 0.8;
+#X obj 52 7 czero~;
+#X text 112 7 complex one-zero (non-recursive) filter \, raw;
+#X text 8 31 Czero~ filters a complex audio signal (first two inlets)
+via a one-zero filter \, whose coefficients are controlled by creation
+arguments or by another complex audio signal (remaining two inlets).
+;
+#X text 179 221 <-- filter coefficient (imaginary part);
+#X text 14 279 The action of czero~ is:;
+#X text 73 300 y[n] = x[n] - a[n] * x[n-1];
+#X text 11 320 where y[n] is the output \, x[n] the input \, and a[n]
+the filter coefficient (all complex numbers). The filter is always
+stable.;
+#X text 12 369 The transfer function is H(Z) = 1 - aZ^-1.;
+#X obj 53 244 czero~ 0.9 0.4;
+#X connect 0 0 39 0;
+#X connect 1 0 39 0;
+#X connect 23 0 39 1;
+#X connect 24 0 39 2;
+#X connect 26 0 39 3;
+#X connect 30 0 39 0;
diff --git a/pd/doc/5.reference/line-help.pd b/pd/doc/5.reference/line-help.pd
index fd0c02d4..f5d5ad38 100644
--- a/pd/doc/5.reference/line-help.pd
+++ b/pd/doc/5.reference/line-help.pd
@@ -1,10 +1,10 @@
#N canvas 31 15 669 403 12;
#X floatatom 22 339 0 0 0 0 - - -;
-#X msg 31 232 0 1000;
-#X msg 46 254 39;
+#X msg 31 205 0 1000;
+#X msg 46 227 39;
#X obj 66 15 line;
#X text 106 14 - ramp generator;
-#X msg 22 209 1 1000;
+#X msg 22 182 1 1000;
#X text 18 36 The line object takes (target \, time) pairs and slews
to the specified target over the time given \, updating its output
at a "grain rate" given by the creation argument. If you dont' specify
@@ -14,19 +14,22 @@ a float causes a jump in the output regardless of whatever time value
was specified in some previous message. If the line object receives
a message specifying some new target before reaching the previous one
\, it takes off from its current value.;
-#X text 93 221 send a pair to ramp to a new value;
-#X text 105 251 send a single number to jump;
+#X text 93 194 send a pair to ramp to a new value;
+#X text 105 224 send a single number to jump;
#X text 46 363 see also:;
#X obj 132 361 line~;
-#X msg 57 279 stop;
-#X text 98 278 "stop" message to stop output;
+#X msg 57 252 stop;
+#X text 98 251 "stop" message to stop output;
#X obj 22 313 line 0 100;
#X text 383 369 updated for Pd version 0.37;
#X text 125 310 creation arguments:;
#X text 316 310 1 initial value;
#X text 318 330 2 time grain in milliseconds;
+#X msg 51 282 set 5;
+#X text 99 282 "set" to change value (and stop) without output;
#X connect 1 0 13 0;
#X connect 2 0 13 0;
#X connect 5 0 13 0;
#X connect 11 0 13 0;
#X connect 13 0 0 0;
+#X connect 18 0 13 0;
diff --git a/pd/doc/5.reference/lop~-help.pd b/pd/doc/5.reference/lop~-help.pd
index 9f3e85f8..92b5ed22 100644
--- a/pd/doc/5.reference/lop~-help.pd
+++ b/pd/doc/5.reference/lop~-help.pd
@@ -1,31 +1,37 @@
-#N canvas 402 99 566 329 12;
+#N canvas 390 359 566 329 12;
#X obj 70 228 env~;
-#X floatatom 70 248;
-#X floatatom 107 178;
-#X obj 70 206 hip~ 5;
-#X text 119 201 The high pass filter is initialized to cutoff frequencies below 5 Hz.;
+#X floatatom 70 248 0 0 0 0 - - -;
+#X floatatom 107 178 0 0 0 0 - - -;
#X obj 12 226 env~;
-#X floatatom 12 245;
-#X text 108 227 env~ gives the amplitude of the signal envelop in dB.;
-#X floatatom 12 107;
-#X msg 452 24 \; pd dsp 1;
-#X msg 452 58 \; pd dsp 0;
+#X floatatom 12 245 0 0 0 0 - - -;
+#X floatatom 12 107 0 0 0 0 - - -;
#X obj 83 6 lop~;
-#X text 9 68 The left inlet is the incoming audio signal. The right inlet is the cutoff frequency in Hz.;
+#X text 9 68 The left inlet is the incoming audio signal. The right
+inlet is the cutoff frequency in Hz.;
#X obj 12 130 osc~ 100;
#X text 57 105 <-- scroll to change input frequency;
-#X text 12 266 Compare the value of the original signal on the left with the value of the filtered signal on the right.;
-#X text 8 35 lop~ is a one-pole low pass filter with a specified rolloff frequency.;
+#X text 8 35 lop~ is a one-pole low pass filter with a specified rolloff
+frequency.;
#X text 114 7 - one-pole low pass filter;
#X msg 70 154 clear;
#X text 114 153 <-- reinitialize internal state;
#X text 139 179 <-- set cutoff frequency;
-#X text 364 306 updated for Pd version-0.30;
+#X obj 70 206 lop~ 5;
+#X text 121 209 The filter is initialized to cut off frequencies above
+5 Hz.;
+#X text 12 266 Compare the strength of the original signal on the left
+with that of the filtered signal on the right.;
+#X text 104 228 env~ gives the amplitude of the signal in dB.;
+#X text 8 305 see also:;
+#X obj 77 304 hip~;
+#X obj 112 304 bp~;
+#X obj 139 304 vcf~;
+#X text 364 306 updated for Pd version-0.38;
#X connect 0 0 1 0;
-#X connect 2 0 3 1;
-#X connect 3 0 0 0;
-#X connect 5 0 6 0;
-#X connect 8 0 13 0;
-#X connect 13 0 5 0;
-#X connect 13 0 3 0;
-#X connect 18 0 3 0;
+#X connect 2 0 15 1;
+#X connect 3 0 4 0;
+#X connect 5 0 8 0;
+#X connect 8 0 3 0;
+#X connect 8 0 15 0;
+#X connect 12 0 15 0;
+#X connect 15 0 0 0;
diff --git a/pd/doc/5.reference/rpole~-help.pd b/pd/doc/5.reference/rpole~-help.pd
new file mode 100644
index 00000000..07d50267
--- /dev/null
+++ b/pd/doc/5.reference/rpole~-help.pd
@@ -0,0 +1,79 @@
+#N canvas 56 7 526 510 12;
+#X floatatom 118 172 0 0 0 0 - - -;
+#X obj 54 85 osc~ 100;
+#X msg 69 117 clear;
+#X obj 77 483 lop~;
+#X text 8 483 see also:;
+#X obj 52 7 rpole~;
+#X text 114 7 real one-pole (recursive) filter \, raw;
+#X text 8 35 Rpole~ filters an audio signal (left inlet) via a one-pole
+real filter \, whose coefficient is controlled by a creation argument
+or by an audio signal (right inlet).;
+#X text 331 482 updated for Pd version-0.38;
+#X obj 84 430 rzero~;
+#X obj 35 450 cpole~;
+#X obj 35 430 rpole~;
+#X obj 133 430 rzero_rev~;
+#X obj 84 450 czero~;
+#X obj 133 450 czero_rev~;
+#X text 211 430 real;
+#X text 210 451 complex;
+#X text 32 414 1-pole;
+#X text 81 414 1-zero;
+#X text 131 414 1-zero \, reversed;
+#X text 57 399 summary of raw filters:;
+#X msg 71 143 set 1;
+#X text 117 143 <-- set internal state;
+#X text 118 86 <-- signal to filter;
+#X text 142 173 <-- filter coefficient (may be a signal);
+#X text 129 198 <-- creation argument initializes filter coefficient
+;
+#X text 73 252 y[n] = y[n-1] + a[n] * x[n];
+#X text 10 302 The transfer function is H(Z) = 1/(1 - aZ^-1).;
+#X text 113 116 <-- clear internal state to zero;
+#X text 8 270 where y[n] is the output \, x[n] the input \, and a[n]
+the filter coefficient. The filter is unstable if/when |a[n]|>1.;
+#X obj 53 195 rpole~ 0.9;
+#X text 14 230 The action of rpole~ is:;
+#N canvas 393 91 326 287 test 0;
+#X obj 76 78 osc~;
+#X floatatom 76 55 5 0 0 0 - - -;
+#X obj 77 219 env~ 16384;
+#X floatatom 77 243 5 0 0 0 - - -;
+#X obj 76 168 rpole~;
+#X obj 104 107 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0
+1;
+#X obj 76 105 *~;
+#X msg 97 137 set 1;
+#X floatatom 172 157 4 -100 100 0 - - -;
+#X obj 172 182 / 100;
+#X obj 214 256 dac~;
+#X obj 228 177 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0
+1;
+#X obj 214 220 *~;
+#X obj 230 197 / 10;
+#X text 80 18 Stuff to test it:;
+#X connect 0 0 6 0;
+#X connect 1 0 0 0;
+#X connect 2 0 3 0;
+#X connect 4 0 2 0;
+#X connect 4 0 12 0;
+#X connect 5 0 6 1;
+#X connect 6 0 4 0;
+#X connect 7 0 4 0;
+#X connect 8 0 9 0;
+#X connect 9 0 4 1;
+#X connect 11 0 13 0;
+#X connect 12 0 10 0;
+#X connect 12 0 10 1;
+#X connect 13 0 12 1;
+#X restore 457 416 pd test;
+#X text 111 483 etc.: user-friendly filters;
+#X text 8 320 (Pd also provides a suite of user-friendly filters. This
+and other raw filters are provided for situations which the user-friendly
+ones can't handle. See Chapter 8 of http://crca.ucsd.edu/~msp/techniques
+for an introduction to the necessary theory.);
+#X connect 0 0 30 1;
+#X connect 1 0 30 0;
+#X connect 2 0 30 0;
+#X connect 21 0 30 0;
diff --git a/pd/doc/5.reference/rzero_rev~-help.pd b/pd/doc/5.reference/rzero_rev~-help.pd
new file mode 100644
index 00000000..ae85dcea
--- /dev/null
+++ b/pd/doc/5.reference/rzero_rev~-help.pd
@@ -0,0 +1,81 @@
+#N canvas 717 52 526 510 12;
+#X floatatom 127 186 0 0 0 0 - - -;
+#X obj 49 98 osc~ 100;
+#X msg 64 130 clear;
+#X obj 77 483 lop~;
+#X text 8 483 see also:;
+#X text 331 482 updated for Pd version-0.38;
+#X obj 84 430 rzero~;
+#X obj 35 450 cpole~;
+#X obj 35 430 rpole~;
+#X obj 133 430 rzero_rev~;
+#X obj 84 450 czero~;
+#X obj 133 450 czero_rev~;
+#X text 211 430 real;
+#X text 210 451 complex;
+#X text 32 414 1-pole;
+#X text 81 414 1-zero;
+#X text 131 414 1-zero \, reversed;
+#X text 57 399 summary of raw filters:;
+#X msg 66 156 set 1;
+#X text 112 156 <-- set internal state;
+#X text 113 99 <-- signal to filter;
+#X text 155 189 <-- filter coefficient (may be a signal);
+#X text 143 210 <-- creation argument initializes filter coefficient
+;
+#X text 108 129 <-- clear internal state to zero;
+#N canvas 393 91 326 287 test 0;
+#X obj 76 78 osc~;
+#X floatatom 76 55 5 0 0 0 - - -;
+#X obj 77 219 env~ 16384;
+#X floatatom 77 243 5 0 0 0 - - -;
+#X obj 104 107 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0
+1;
+#X obj 76 105 *~;
+#X msg 97 137 set 1;
+#X floatatom 172 157 4 -100 100 0 - - -;
+#X obj 172 182 / 100;
+#X obj 214 256 dac~;
+#X obj 228 177 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0
+1;
+#X obj 214 220 *~;
+#X obj 230 197 / 10;
+#X text 80 18 Stuff to test it:;
+#X obj 76 168 rzero_rev~;
+#X connect 0 0 5 0;
+#X connect 1 0 0 0;
+#X connect 2 0 3 0;
+#X connect 4 0 5 1;
+#X connect 5 0 14 0;
+#X connect 6 0 14 0;
+#X connect 7 0 8 0;
+#X connect 8 0 14 1;
+#X connect 10 0 12 0;
+#X connect 11 0 9 0;
+#X connect 11 0 9 1;
+#X connect 12 0 11 1;
+#X connect 14 0 2 0;
+#X connect 14 0 11 0;
+#X restore 457 416 pd test;
+#X text 111 483 etc.: user-friendly filters;
+#X text 8 270 where y[n] is the output \, x[n] the input \, and a[n]
+the filter coefficient. The filter is always stable.;
+#X obj 52 7 rzero_rev~;
+#X text 139 7 real one-zero (non-recursive) "reverse" filter \, raw
+;
+#X obj 48 208 rzero_rev~ 1;
+#X text 7 35 Rzero_rev~ filters an audio signal (left inlet) via a
+one-zero real filter \, whose coefficient is controlled by a creation
+argument or by an audio signal (right inlet). The impulse response
+is that of "rzero" reversed in time.;
+#X text 14 230 The action of rpole_rev~ is:;
+#X text 71 251 y[n] = -a[n] * x[n] + x[n-1];
+#X text 6 302 The transfer function is H(Z) = -a + Z^-1.;
+#X text 5 321 (Pd also provides a suite of user-friendly filters. This
+and other raw filters are provided for situations which the user-friendly
+ones can't handle. See Chapter 8 of http://crca.ucsd.edu/~msp/techniques
+for an introduction to the necessary theory.);
+#X connect 0 0 29 1;
+#X connect 1 0 29 0;
+#X connect 2 0 29 0;
+#X connect 18 0 29 0;
diff --git a/pd/doc/5.reference/rzero~-help.pd b/pd/doc/5.reference/rzero~-help.pd
new file mode 100644
index 00000000..c2200371
--- /dev/null
+++ b/pd/doc/5.reference/rzero~-help.pd
@@ -0,0 +1,79 @@
+#N canvas 56 7 526 510 12;
+#X floatatom 104 172 0 0 0 0 - - -;
+#X obj 54 85 osc~ 100;
+#X msg 69 117 clear;
+#X obj 77 483 lop~;
+#X text 8 483 see also:;
+#X text 331 482 updated for Pd version-0.38;
+#X obj 84 430 rzero~;
+#X obj 35 450 cpole~;
+#X obj 35 430 rpole~;
+#X obj 133 430 rzero_rev~;
+#X obj 84 450 czero~;
+#X obj 133 450 czero_rev~;
+#X text 211 430 real;
+#X text 210 451 complex;
+#X text 32 414 1-pole;
+#X text 81 414 1-zero;
+#X text 131 414 1-zero \, reversed;
+#X text 57 399 summary of raw filters:;
+#X msg 71 143 set 1;
+#X text 117 143 <-- set internal state;
+#X text 118 86 <-- signal to filter;
+#X text 128 173 <-- filter coefficient (may be a signal);
+#X text 115 198 <-- creation argument initializes filter coefficient
+;
+#X text 113 116 <-- clear internal state to zero;
+#X text 14 230 The action of rpole~ is:;
+#N canvas 393 91 326 287 test 0;
+#X obj 76 78 osc~;
+#X floatatom 76 55 5 0 0 0 - - -;
+#X obj 77 219 env~ 16384;
+#X floatatom 77 243 5 0 0 0 - - -;
+#X obj 104 107 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0
+1;
+#X obj 76 105 *~;
+#X msg 97 137 set 1;
+#X floatatom 172 157 4 -100 100 0 - - -;
+#X obj 172 182 / 100;
+#X obj 214 256 dac~;
+#X obj 228 177 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0
+1;
+#X obj 214 220 *~;
+#X obj 230 197 / 10;
+#X text 80 18 Stuff to test it:;
+#X obj 76 168 rzero~;
+#X connect 0 0 5 0;
+#X connect 1 0 0 0;
+#X connect 2 0 3 0;
+#X connect 4 0 5 1;
+#X connect 5 0 14 0;
+#X connect 6 0 14 0;
+#X connect 7 0 8 0;
+#X connect 8 0 14 1;
+#X connect 10 0 12 0;
+#X connect 11 0 9 0;
+#X connect 11 0 9 1;
+#X connect 12 0 11 1;
+#X connect 14 0 2 0;
+#X connect 14 0 11 0;
+#X restore 457 416 pd test;
+#X text 111 483 etc.: user-friendly filters;
+#X obj 52 7 rzero~;
+#X text 114 7 real one-zero (non-recursive) filter \, raw;
+#X text 8 35 Rzero~ filters an audio signal (left inlet) via a one-zero
+real filter \, whose coefficient is controlled by a creation argument
+or by an audio signal (right inlet).;
+#X obj 53 195 rzero~ 1;
+#X text 8 270 where y[n] is the output \, x[n] the input \, and a[n]
+the filter coefficient. The filter is always stable.;
+#X text 10 302 The transfer function is H(Z) = 1 - aZ^-1.;
+#X text 73 252 y[n] = x[n] - a[n] * x[n-1];
+#X text 8 320 (Pd also provides a suite of user-friendly filters. This
+and other raw filters are provided for situations which the user-friendly
+ones can't handle. See Chapter 8 of http://crca.ucsd.edu/~msp/techniques
+for an introduction to the necessary theory.);
+#X connect 0 0 30 1;
+#X connect 1 0 30 0;
+#X connect 2 0 30 0;
+#X connect 18 0 30 0;