Don't know about real analog squares, probably way more complex,
but attached is my simplistic approach: a soft-clipped triangle wave
gr,
Tim

2012/2/6 Pierre Massat <pimas...@gmail.com>

> Dear List,
>
> I need a square wave to use as an LFO in a ring mod patch. Though i could
> simply use [expr~ $v1>0.5], I m wondering if I could get a smoother square
> wave. I tried to use a bandlimited square wave, but I don't have enough
> harmonics and the top of the wave isn't flat enough. Incidentally, what do
> analog square waves from old synths look like? Anyway, I think i want a
> square wave with no jumps between 0 and 1.
>
> Cheers!
>
> Pierre.
>
> _______________________________________________
> Pd-list@iem.at mailing list
> UNSUBSCRIBE and account-management ->
> http://lists.puredata.info/listinfo/pd-list
>
>
#N canvas 78 164 512 433 10;
#X obj 47 138 *~ 2;
#X obj 46 185 tanh~;
#X obj 66 324 metro 100;
#X obj 66 306 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 1
1;
#X floatatom 47 20 5 0 0 0 - - -;
#X obj 143 123 hsl 128 15 2.8 20 0 0 empty empty empty -2 -8 0 10 -262144
-1 -1 5000 1;
#X obj 47 41 phasor~ 299;
#X obj 46 74 expr~ 4*(if($v1>0.5 \, 1-$v1 \, $v1))-1;
#X floatatom 140 141 5 0 0 0 - - -;
#X text 157 104 smooth <-> sharp;
#X obj 66 286 loadbang;
#X text 98 186 soft-clip;
#X text 265 73 make triangle;
#N canvas 0 0 450 300 (subpatch) 0;
#X array vis 400 float 1;
#A 0 0.999937 0.999895 0.999823 0.999703 0.999501 0.999161 0.998591
0.997634 0.996029 0.993345 0.988866 0.981428 0.969177 0.949263 0.917576
0.868835 0.797626 0.70106 0.582534 0.453636 0.330669 0.227176 0.148869
0.0942622 0.0583135 0.0355367 0.0214535 0.012877 0.0077022 0.00459728
0.00274053 0.00163248 0.000971973 0.000578582 0.000344336 0.000204921
0.000121951 7.25687e-05 4.31836e-05 2.56896e-05 1.52886e-05 9.08971e-06
5.42402e-06 3.21865e-06 1.90735e-06 1.13249e-06 6.85453e-07 4.17233e-07
2.38419e-07 1.49012e-07 8.9407e-08 5.96046e-08 2.98023e-08 2.98023e-08
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2.98023e-08 2.98023e-08 5.96046e-08
8.9407e-08 1.78814e-07 2.68221e-07 4.76837e-07 7.7486e-07 1.3411e-06
2.23517e-06 3.75509e-06 6.28829e-06 1.05798e-05 1.7792e-05 2.98917e-05
5.02467e-05 8.44598e-05 0.000141919 0.000238508 0.000400782 0.000673354
0.00113115 0.0018996 0.0031884 0.00534692 0.0089536 0.0149566 0.0248832
0.041123 0.0672309 0.108046 0.169147 0.254925 0.365089 0.491457 0.618927
0.731877 0.821029 0.885188 0.928354 0.956096 0.973403 0.984002 0.990419
0.994277 0.996587 0.997966 0.998789 0.999279 0.999571 0.999745 0.999848
0.99991 0.999946 0.999968 0.999981 0.999989 0.999993 0.999996 0.999998
0.999999 0.999999 1 1 1 0.999999 0.999999 0.999998 0.999996 0.999994
0.99999 0.999983 0.999971 0.999951 0.999918 0.999863 0.99977 0.999613
0.99935 0.998908 0.998166 0.996921 0.994836 0.991352 0.985552 0.975954
0.960238 0.934936 0.895289 0.835727 0.751681 0.643004 0.517308 0.389382
0.275063 0.184184 0.118426 0.0740147 0.0454008 0.0275201 0.0165595
0.00991961 0.00592613 0.00353462 0.00210616 0.00125426 0.000746697
0.000444412 0.000264496 0.000157386 9.36687e-05 5.57303e-05 3.317e-05
1.97291e-05 1.17421e-05 6.97374e-06 4.14252e-06 2.47359e-06 1.46031e-06
8.64267e-07 5.06639e-07 2.98023e-07 1.78814e-07 1.19209e-07 5.96046e-08
2.98023e-08 2.98023e-08 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2.98023e-08
2.98023e-08 5.96046e-08 8.9407e-08 1.19209e-07 2.08616e-07 3.57628e-07
6.25849e-07 1.01328e-06 1.72853e-06 2.89083e-06 4.88758e-06 8.19564e-06
1.37985e-05 2.31564e-05 3.89218e-05 6.54161e-05 0.000109971 0.000184774
0.00031051 0.000521749 0.000876546 0.00147229 0.00247189 0.00414738
0.00695062 0.0116264 0.0193864 0.032157 0.0528865 0.0857944 0.136234
0.20953 0.308191 0.428146 0.557186 0.678943 0.780415 0.856591 0.909408
0.944044 0.965933 0.979446 0.987668 0.992625 0.995599 0.997377 0.998437
0.99907 0.999446 0.99967 0.999804 0.999883 0.999931 0.999959 0.999975
0.999985 0.999991 0.999995 0.999997 0.999998 0.999999 0.999999 1 1
0.999999 0.999999 0.999998 0.999997 0.999995 0.999992 0.999987 0.999978
0.999962 0.999937 0.999894 0.999822 0.9997 0.999496 0.999154 0.998578
0.997613 0.995995 0.993287 0.98877 0.981269 0.968917 0.948843 0.916917
0.867842 0.796221 0.699238 0.580421 0.451486 0.328752 0.225655 0.147773
0.0935241 0.0578387 0.0352404 0.0212721 0.0127672 0.00763613 0.0045577
0.00271693 0.00161839 0.000963598 0.000573575 0.000341356 0.000203133
0.000120878 7.19428e-05 4.27961e-05 2.5481e-05 1.51396e-05 9.0301e-06
5.36442e-06 3.18885e-06 1.90735e-06 1.13249e-06 6.85453e-07 3.8743e-07
2.38419e-07 1.49012e-07 8.9407e-08 5.96046e-08 2.98023e-08 2.98023e-08
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2.98023e-08 2.98023e-08 5.96046e-08
8.9407e-08 1.78814e-07 2.68221e-07 4.76837e-07 8.04663e-07 1.3411e-06
2.23517e-06 3.78489e-06 6.34789e-06 1.06692e-05 1.7941e-05 3.016e-05
5.06938e-05 8.5175e-05 0.00014317 0.000240594 0.000404269 0.000679225
0.00114101 0.00191611 0.00321609 0.00539327 0.00903094 0.015085 0.0250947
0.0414666 0.0677772 0.108885;
#X coords 0 1 399 -1 200 140 2 0 0;
#X restore 186 246 graph;
#X obj 46 372 tabwrite~ vis;
#X obj 46 162 +~;
#X obj 351 124 hsl 128 15 -1 1 0 0 empty empty empty -2 -8 0 10 -262144
-1 -1 5000 1;
#X obj 278 194 * 2;
#X text 386 94 duty cycle;
#X text 350 107 1%;
#X text 406 107 50%;
#X text 463 106 99%;
#X obj 278 172 f;
#X obj 278 150 t b f;
#X obj 46 247 expr~ (0.5*$v1)+0.5;
#X connect 0 0 15 0;
#X connect 1 0 24 0;
#X connect 2 0 14 0;
#X connect 3 0 2 0;
#X connect 4 0 6 0;
#X connect 5 0 0 1;
#X connect 5 0 8 0;
#X connect 5 0 23 0;
#X connect 6 0 7 0;
#X connect 7 0 0 0;
#X connect 10 0 3 0;
#X connect 15 0 1 0;
#X connect 16 0 22 0;
#X connect 17 0 15 1;
#X connect 22 0 17 0;
#X connect 23 0 22 0;
#X connect 23 1 17 1;
#X connect 24 0 14 0;
_______________________________________________
Pd-list@iem.at mailing list
UNSUBSCRIBE and account-management -> 
http://lists.puredata.info/listinfo/pd-list

Reply via email to