/usr/share/puredata/doc/3.audio.examples/F01.pulse.pd is in puredata-doc 0.47.1-3.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 | #N canvas 15 126 835 625 12;
#X obj 272 163 line~;
#X floatatom 53 64 0 0 0 0 - - -;
#X obj 30 315 cos~;
#N canvas 0 0 450 300 graph1 0;
#X array pulse-output 882 float 0;
#X coords 0 1.02 882 -1.02 200 130 1;
#X restore 583 409 graph;
#X obj 53 91 phasor~ 0;
#X obj 272 139 pack 0 50;
#X floatatom 272 90 0 0 100 0 - - -;
#X text 50 43 frequency;
#X obj 53 115 -~ 0.5;
#X obj 53 207 *~;
#X obj 272 114 / 10;
#X obj 30 265 clip~ -0.5 0.5;
#X obj 30 418 hip~ 5;
#N canvas 0 0 450 300 graph1 0;
#X array phase-output 882 float 0;
#X coords 0 1.02 882 -1.02 200 60 1;
#X restore 583 150 graph;
#N canvas 0 0 450 300 graph1 0;
#X array clip-output 882 float 0;
#X coords 0 1.02 882 -1.02 200 130 1;
#X restore 583 272 graph;
#X text 113 114 phase -1/2 to 1/2;
#X text 139 91 phase 0 to 1;
#X text 119 5 PULSE GENERATOR;
#X obj 19 234 tabwrite~ phase-output;
#X obj 19 393 tabwrite~ pulse-output;
#X text 103 419 high pass filter to cut DC;
#X text 319 115 fix range;
#X text 326 164 smooth it;
#X text 314 187 add 1;
#X text 41 148 <-- click to graph;
#X text 83 209 increase amplitude;
#X text 164 264 clip back to range -1/2 to 1/2;
#X text 90 316 cosine wave lookup (-1/2 and 1/2 give -1);
#X obj 272 188 +~ 1;
#X obj 19 292 tabwrite~ clip-output;
#X text 585 539 ---- 0.02 seconds ----;
#X obj 19 148 bng 20 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
-1;
#X obj 30 446 output~;
#X obj 30 338 +~ 1;
#X obj 30 361 *~ 0.5;
#X text 574 589 updated for Pd version 0.37;
#X text 88 337 add one (range now from 0 to 2);
#X text 96 360 ...and now from 0 to 1;
#X text 20 531 This patch computes a pulse train \, with an "index"
control that essentually squeezes the pulses. If "bandwidth" is zero
you get a pure cosine wave \, and for larger values of the bandwidth
\, the cosine wave is squeezed to fill smaller portions of the waveform.
;
#X text 269 71 index;
#X text 790 142 0.5;
#X text 787 198 -0.5;
#X text 785 264 1;
#X text 787 390 -1;
#X text 785 405 1;
#X text 786 528 -1;
#X connect 0 0 28 0;
#X connect 1 0 4 0;
#X connect 2 0 33 0;
#X connect 4 0 8 0;
#X connect 5 0 0 0;
#X connect 6 0 10 0;
#X connect 8 0 9 0;
#X connect 9 0 11 0;
#X connect 9 0 18 0;
#X connect 10 0 5 0;
#X connect 11 0 2 0;
#X connect 11 0 29 0;
#X connect 12 0 32 0;
#X connect 12 0 32 1;
#X connect 28 0 9 1;
#X connect 31 0 18 0;
#X connect 31 0 29 0;
#X connect 31 0 19 0;
#X connect 33 0 34 0;
#X connect 34 0 19 0;
#X connect 34 0 12 0;
|