aboutsummaryrefslogtreecommitdiff
path: root/externals/gridflow/doc/numop.pd
blob: 6e46041af44916af6fa6750baa0945d8349528e2 (plain)
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
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
#N canvas 0 0 1024 768 10;
#X obj 0 0 cnv 15 1024 30 empty empty empty 20 12 0 14 20 -66577 0;
#X text 10 0 op name;
#X text 96 0 description;
#X text 512 0 effect on pixels;
#X text 768 0 effect on coords;
#X obj 0 48 cnv 15 1024 30 empty empty empty 20 12 0 14 -249792 -66577 0;
#X msg 10 48 op ignore;
#X text 96 48  A ;
#X text 512 48 no effect;
#X text 768 48 no effect;
#X obj 0 80 cnv 15 1024 30 empty empty empty 20 12 0 14 -233280 -66577 0;
#X msg 10 80 op put;
#X text 96 80  B ;
#X text 512 80 replace by;
#X text 768 80 replace by;
#X obj 0 112 cnv 15 1024 30 empty empty empty 20 12 0 14 -249792 -66577 0;
#X msg 10 112 op +;
#X text 96 112  A + B ;
#X text 512 112 brightness \,  crossfade;
#X text 768 112 move \,  morph;
#X obj 0 144 cnv 15 1024 30 empty empty empty 20 12 0 14 -233280 -66577 0;
#X msg 10 144 op -;
#X text 96 144  A - B ;
#X text 512 144 brightness \,  motion detection;
#X text 768 144 move \,  motion detection;
#X obj 0 176 cnv 15 1024 30 empty empty empty 20 12 0 14 -249792 -66577 0;
#X msg 10 176 op inv+;
#X text 96 176  B - A ;
#X text 512 176 negate then contrast;
#X text 768 176 180 degree rotate then move;
#X obj 0 208 cnv 15 1024 30 empty empty empty 20 12 0 14 -233280 -66577 0;
#X msg 10 208 op *;
#X text 96 208  A * B ;
#X text 512 208 contrast;
#X text 768 208 zoom out;
#X obj 0 240 cnv 15 1024 30 empty empty empty 20 12 0 14 -249792 -66577 0;
#X msg 10 240 op /;
#X text 96 240  A / B \,  rounded towards zero ;
#X text 512 240 contrast;
#X text 768 240 zoom in;
#X obj 0 272 cnv 15 1024 30 empty empty empty 20 12 0 14 -233280 -66577 0;
#X msg 10 272 op div;
#X text 96 272  A / B \,  rounded downwards ;
#X text 512 272 contrast;
#X text 768 272 zoom in;
#X obj 0 304 cnv 15 1024 30 empty empty empty 20 12 0 14 -249792 -66577 0;
#X msg 10 304 op inv*;
#X text 96 304  B / A \,  rounded towards zero ;
#X obj 0 336 cnv 15 1024 30 empty empty empty 20 12 0 14 -233280 -66577 0;
#X msg 10 336 op swapdiv;
#X text 96 336  B / A \,  rounded downwards ;
#X obj 0 368 cnv 15 1024 30 empty empty empty 20 12 0 14 -249792 -66577 0;
#X msg 10 368 op %;
#X text 96 368  A % B \,  modulo (goes with div) ;
#X text 512 368 --;
#X text 768 368 tile;
#X obj 0 400 cnv 15 1024 30 empty empty empty 20 12 0 14 -233280 -66577 0;
#X msg 10 400 op swap%;
#X text 96 400  B % A \,  modulo (goes with div) ;
#X obj 0 432 cnv 15 1024 30 empty empty empty 20 12 0 14 -249792 -66577 0;
#X msg 10 432 op rem;
#X text 96 432  A % B \,  remainder (goes with /) ;
#X obj 0 464 cnv 15 1024 30 empty empty empty 20 12 0 14 -233280 -66577 0;
#X msg 10 464 op swaprem;
#X text 96 464  B % A \,  remainder (goes with /) ;
#X obj 0 496 cnv 15 1024 30 empty empty empty 20 12 0 14 -249792 -66577 0;
#X msg 10 496 op gcd;
#X text 96 496 greatest common divisor;
#X obj 0 528 cnv 15 1024 30 empty empty empty 20 12 0 14 -233280 -66577 0;
#X msg 10 528 op lcm;
#X text 96 528 least common multiple;
#X obj 0 560 cnv 15 1024 30 empty empty empty 20 12 0 14 -249792 -66577 0;
#X msg 10 560 op |;
#X text 96 560  A or B \,  bitwise ;
#X text 512 560 bright munchies;
#X text 768 560 bottomright munchies;
#X obj 0 592 cnv 15 1024 30 empty empty empty 20 12 0 14 -233280 -66577 0;
#X msg 10 592 op ^;
#X text 96 592  A xor B \,  bitwise ;
#X text 512 592 symmetric munchies (fractal checkers);
#X text 768 592 symmetric munchies (fractal checkers);
#X obj 0 624 cnv 15 1024 30 empty empty empty 20 12 0 14 -249792 -66577 0;
#X msg 10 624 op &;
#X text 96 624  A and B \,  bitwise ;
#X text 512 624 dark munchies;
#X text 768 624 topleft munchies;
#X obj 0 656 cnv 15 1024 30 empty empty empty 20 12 0 14 -233280 -66577 0;
#X msg 10 656 op <<;
#X text 96 656  A * (2**(B % 32)) \,  which is left-shifting ;
#X text 512 656 like *;
#X text 768 656 like *;
#X obj 0 688 cnv 15 1024 30 empty empty empty 20 12 0 14 -249792 -66577 0;
#X msg 10 688 op >>;
#X text 96 688  A / (2**(B % 32)) \,  which is right-shifting ;
#X text 512 688 like / \, div;
#X text 768 688 like / \, div;
#X obj 0 720 cnv 15 1024 30 empty empty empty 20 12 0 14 -233280 -66577 0;
#X msg 10 720 op ||;
#X text 96 720  if A is zero then B else A ;
#X obj 0 752 cnv 15 1024 30 empty empty empty 20 12 0 14 -249792 -66577 0;
#X msg 10 752 op &&;
#X text 96 752  if A is zero then zero else B;
#X obj 0 784 cnv 15 1024 30 empty empty empty 20 12 0 14 -233280 -66577 0;
#X msg 10 784 op min;
#X text 96 784  the lowest value in A \, B ;
#X text 512 784 clipping;
#X text 768 784 clipping (of individual points);
#X obj 0 816 cnv 15 1024 30 empty empty empty 20 12 0 14 -249792 -66577 0;
#X msg 10 816 op max;
#X text 96 816  the highest value in A \, B ;
#X text 512 816 clipping;
#X text 768 816 clipping (of individual points);
#X obj 0 848 cnv 15 1024 30 empty empty empty 20 12 0 14 -233280 -66577 0;
#X msg 10 848 op cmp;
#X text 96 848  -1 when A&lt \; B \;  0 when A=B \;  1 when A&gt \; B. ;
#X obj 0 880 cnv 15 1024 30 empty empty empty 20 12 0 14 -249792 -66577 0;
#X msg 10 880 op ==;
#X text 96 880  is A equal to B ? 1=true \,  0=false ;
#X obj 0 912 cnv 15 1024 30 empty empty empty 20 12 0 14 -233280 -66577 0;
#X msg 10 912 op !=;
#X text 96 912  is A not equal to B ? ;
#X obj 0 944 cnv 15 1024 30 empty empty empty 20 12 0 14 -249792 -66577 0;
#X msg 10 944 op >;
#X text 96 944  is A greater than B ? ;
#X obj 0 976 cnv 15 1024 30 empty empty empty 20 12 0 14 -233280 -66577 0;
#X msg 10 976 op <=;
#X text 96 976  is A not greater than B ? ;
#X obj 0 1008 cnv 15 1024 30 empty empty empty 20 12 0 14 -249792 -66577 0;
#X msg 10 1008 op <;
#X text 96 1008  is A less than B ? ;
#X obj 0 1040 cnv 15 1024 30 empty empty empty 20 12 0 14 -233280 -66577 0;
#X msg 10 1040 op >=;
#X text 96 1040 is A not less than B ? ;
#X obj 0 1072 cnv 15 1024 30 empty empty empty 20 12 0 14 -249792 -66577 0;
#X msg 10 1072 op sin*;
#X text 96 1072  B * sin(A) in centidegrees ;
#X text 512 1072 --;
#X text 768 1072 waves \,  rotations;
#X obj 0 1104 cnv 15 1024 30 empty empty empty 20 12 0 14 -233280 -66577 0;
#X msg 10 1104 op cos*;
#X text 96 1104  B * cos(A) in centidegrees ;
#X text 512 1104 --;
#X text 768 1104 waves \,  rotations;
#X obj 0 1136 cnv 15 1024 30 empty empty empty 20 12 0 14 -249792 -66577 0;
#X msg 10 1136 op atan;
#X text 96 1136  arctan(A/B) in centidegrees ;
#X text 512 1136 --;
#X text 768 1136 find angle to origin (part of polar transform);
#X obj 0 1168 cnv 15 1024 30 empty empty empty 20 12 0 14 -233280 -66577 0;
#X msg 10 1168 op tanh*;
#X text 96 1168  B * tanh(A) in centidegrees ;
#X text 512 1168 smooth clipping;
#X text 768 1168 smooth clipping (of individual points) \,  neural sigmoid \,  fuzzy logic;
#X obj 0 1200 cnv 15 1024 30 empty empty empty 20 12 0 14 -249792 -66577 0;
#X msg 10 1200 op log*;
#X text 96 1200  B * log(A) (in base e) ;
#X obj 0 1232 cnv 15 1024 30 empty empty empty 20 12 0 14 -233280 -66577 0;
#X msg 10 1232 op gamma;
#X text 96 1232  floor(pow(a/256.0 \, 256.0/b)*256.0) ;
#X text 512 1232 gamma correction;
#X obj 0 1264 cnv 15 1024 30 empty empty empty 20 12 0 14 -249792 -66577 0;
#X msg 10 1264 op **;
#X text 96 1264  A**B \,  that is \,  A raised to power B ;
#X text 512 1264 gamma correction;
#X obj 0 1296 cnv 15 1024 30 empty empty empty 20 12 0 14 -233280 -66577 0;
#X msg 10 1296 op abs-;
#X text 96 1296  absolute value of (A-B) ;
#X obj 0 1328 cnv 15 1024 30 empty empty empty 20 12 0 14 -249792 -66577 0;
#X msg 10 1328 op rand;
#X text 96 1328  randomly produces a non-negative number below A ;
#X obj 0 1360 cnv 15 1024 30 empty empty empty 20 12 0 14 -233280 -66577 0;
#X msg 10 1360 op sqrt;
#X text 96 1360  square root of A \,  rounded downwards ;
#X obj 0 1392 cnv 15 1024 30 empty empty empty 20 12 0 14 -249792 -66577 0;
#X msg 10 1392 op sq-;
#X text 96 1392  (A-B) times (A-B) ;
#X obj 0 1424 cnv 15 1024 30 empty empty empty 20 12 0 14 -233280 -66577 0;
#X msg 10 1424 op avg;
#X text 96 1424  (A+B)/2 ;
#X obj 0 1456 cnv 15 1024 30 empty empty empty 20 12 0 14 -249792 -66577 0;
#X msg 10 1456 op hypot;
#X text 96 1456  square root of (A*A+B*B) ;
#X obj 0 1488 cnv 15 1024 30 empty empty empty 20 12 0 14 -233280 -66577 0;
#X msg 10 1488 op clip+;
#X text 96 1488  like A+B but overflow causes clipping instead of wrapping around (coming soon) ;
#X obj 0 1520 cnv 15 1024 30 empty empty empty 20 12 0 14 -249792 -66577 0;
#X msg 10 1520 op clip-;
#X text 96 1520  like A-B but overflow causes clipping instead of wrapping around (coming soon) ;
#X obj 0 1552 cnv 15 1024 30 empty empty empty 20 12 0 14 -233280 -66577 0;
#X msg 10 1552 op erf*;
#X text 96 1552  integral of e^(-x*x) dx ... (coming soon \;  what ought to be the scaling factor?) ;
#X obj 0 1584 cnv 15 1024 30 empty empty empty 20 12 0 14 -249792 -66577 0;
#X msg 10 1584 op weight;
#X text 96 1584  number of "1" bits in an integer;
#X obj 0 1616 cnv 15 1024 30 empty empty empty 20 12 0 14 -233280 -66577 0;
#X msg 10 1616 op sin;
#X text 96 1616 sin(A-B) in radians \,  float only;
#X obj 0 1648 cnv 15 1024 30 empty empty empty 20 12 0 14 -249792 -66577 0;
#X msg 10 1648 op cos;
#X text 96 1648 cos(A-B) in radians \,  float only;
#X obj 0 1680 cnv 15 1024 30 empty empty empty 20 12 0 14 -233280 -66577 0;
#X msg 10 1680 op atan2;
#X text 96 1680 atan2(A \, B) in radians \,  float only;
#X obj 0 1712 cnv 15 1024 30 empty empty empty 20 12 0 14 -249792 -66577 0;
#X msg 10 1712 op tanh;
#X text 96 1712 tanh(A-B) in radians \,  float only;
#X obj 0 1744 cnv 15 1024 30 empty empty empty 20 12 0 14 -233280 -66577 0;
#X msg 10 1744 op exp;
#X text 96 1744 exp(A-B) in radians \,  float only;
#X obj 0 1776 cnv 15 1024 30 empty empty empty 20 12 0 14 -249792 -66577 0;
#X msg 10 1776 op log;
#X text 96 1776 log(A-B) in radians \,  float only;
#X obj 0 1824 cnv 15 1024 30 empty empty empty 20 12 0 14 -233280 -66577 0;
#X msg 10 1824 op C.*    ;
#X text 96 1824 A*B;
#X obj 0 1856 cnv 15 1024 30 empty empty empty 20 12 0 14 -249792 -66577 0;
#X msg 10 1856 op C.*conj;
#X text 96 1856 A*conj(B);
#X obj 0 1888 cnv 15 1024 30 empty empty empty 20 12 0 14 -233280 -66577 0;
#X msg 10 1888 op C./    ;
#X text 96 1888 A/B;
#X obj 0 1920 cnv 15 1024 30 empty empty empty 20 12 0 14 -249792 -66577 0;
#X msg 10 1920 op C./conj;
#X text 96 1920 A/conj(B);
#X obj 0 1952 cnv 15 1024 30 empty empty empty 20 12 0 14 -233280 -66577 0;
#X msg 10 1952 op C.sq-  ;
#X text 96 1952 (A-B)*(A-B);
#X obj 0 1984 cnv 15 1024 30 empty empty empty 20 12 0 14 -249792 -66577 0;
#X msg 10 1984 op C.abs- ;
#X text 96 1984 abs(A-B);
#X obj 0 2016 cnv 15 1024 30 empty empty empty 20 12 0 14 -233280 -66577 0;
#X msg 10 2016 op C.sin  ;
#X text 96 2016 sin(A-B);
#X obj 0 2048 cnv 15 1024 30 empty empty empty 20 12 0 14 -249792 -66577 0;
#X msg 10 2048 op C.cos  ;
#X text 96 2048 cos(A-B);
#X obj 0 2080 cnv 15 1024 30 empty empty empty 20 12 0 14 -233280 -66577 0;
#X msg 10 2080 op C.tanh ;
#X text 96 2080 tanh(A-B);
#X obj 0 2112 cnv 15 1024 30 empty empty empty 20 12 0 14 -249792 -66577 0;
#X msg 10 2112 op C.exp  ;
#X text 96 2112 exp(A-B);
#X obj 0 2144 cnv 15 1024 30 empty empty empty 20 12 0 14 -233280 -66577 0;
#X msg 10 2144 op C.log  ;
#X text 96 2144 log(A-B);
#X obj 10 2176 outlet;
#X obj 95 0 cnv 0 0 2176 empty empty empty -1 12 0 14 0 -66577 0;
#X obj 511 0 cnv 0 0 2176 empty empty empty -1 12 0 14 0 -66577 0;
#X obj 767 0 cnv 0 0 2176 empty empty empty -1 12 0 14 0 -66577 0;
#X obj 0 32 cnv 15 1024 14 empty empty empty 20 12 0 14 -248881 -66577 0;
#X text 10 32 numops;
#X obj 0 1808 cnv 15 1024 14 empty empty empty 20 12 0 14 -248881 -66577 0;
#X text 10 1808 vecops for complex numbers;