-
Notifications
You must be signed in to change notification settings - Fork 1
/
Fractype.h
291 lines (288 loc) · 8.91 KB
/
Fractype.h
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
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
#ifndef FRACTYPE_H
#define FRACTYPE_H
#define SIN 0
#define COS 1 /* Beware this is really COSXX */
#define SINH 2
#define COSH 3
#define EXP 4
#define LOG 5
#define SQR 6
#define TAN 10
/* These MUST match the corresponding fractalspecific record in fractals.c */
#define NOFRACTAL -1
#define MANDEL 0
#define JULIA 1
#define NEWTBASIN 2
#define LAMBDA 3
#define MANDELFP 4
#define NEWTON 5
#define JULIAFP 6
#define PLASMA 7
#define LAMBDASINE 8 /* obsolete */
#define MANDELTRIGFP 8
#define LAMBDACOS 9 /* obsolete */
#define MANOWARFP 9
#define LAMBDAEXP 10 /* obsolete */
#define MANOWAR 10
#define TEST 11
#define SIERPINSKI 12
#define BARNSLEYM1 13
#define BARNSLEYJ1 14
#define BARNSLEYM2 15
#define BARNSLEYJ2 16
#define MANDELSINE 17 /* obsolete */
#define SQRTRIG 17
#define MANDELCOS 18 /* obsolete */
#define SQRTRIGFP 18
#define MANDELEXP 19 /* obsolete */
#define TRIGPLUSTRIG 19
#define MANDELLAMBDA 20
#define MARKSMANDEL 21
#define MARKSJULIA 22
#define UNITY 23
#define MANDEL4 24
#define JULIA4 25
#define IFS 26
#define IFS3D 27
#define BARNSLEYM3 28
#define BARNSLEYJ3 29
#define DEMM 30 /* obsolete */
#define TRIGSQR 30
#define DEMJ 31 /* obsolete */
#define TRIGSQRFP 31
#define BIFURCATION 32
#define MANDELSINH 33 /* obsolete */
#define TRIGPLUSTRIGFP 33
#define LAMBDASINH 34 /* obsolete */
#define TRIGXTRIG 34
#define MANDELCOSH 35 /* obsolete */
#define TRIGXTRIGFP 35
#define LAMBDACOSH 36 /* obsolete */
#define SQR1OVERTRIG 36
#define LMANDELSINE 37 /* obsolete */
#define SQR1OVERTRIGFP 37
#define LLAMBDASINE 38 /* obsolete */
#define ZXTRIGPLUSZ 38
#define LMANDELCOS 39 /* obsolete */
#define ZXTRIGPLUSZFP 39
#define LLAMBDACOS 40 /* obsolete */
#define KAMFP 40
#define LMANDELSINH 41 /* obsolete */
#define KAM 41
#define LLAMBDASINH 42 /* obsolete */
#define KAM3DFP 42
#define LMANDELCOSH 43 /* obsolete */
#define KAM3D 43
#define LLAMBDACOSH 44 /* obsolete */
#define LAMBDATRIG 44
#define LMANTRIGPLUSZSQRD 45
#define LJULTRIGPLUSZSQRD 46
#define FPMANTRIGPLUSZSQRD 47
#define FPJULTRIGPLUSZSQRD 48
#define LMANDELEXP 49 /* obsolete */
#define LAMBDATRIGFP 49
#define LLAMBDAEXP 50 /* obsolete */
#define MANDELTRIG 50
#define LMANDELZPOWER 51
#define LJULIAZPOWER 52
#define FPMANDELZPOWER 53
#define FPJULIAZPOWER 54
#define FPMANZTOZPLUSZPWR 55
#define FPJULZTOZPLUSZPWR 56
#define LMANTRIGPLUSEXP 57
#define LJULTRIGPLUSEXP 58
#define FPMANTRIGPLUSEXP 59
#define FPJULTRIGPLUSEXP 60
#define FPPOPCORN 61
#define LPOPCORN 62
#define FPLORENZ 63
#define LLORENZ 64
#define LLORENZ3D 65
#define MPNEWTON 66
#define MPNEWTBASIN 67
#define COMPLEXNEWTON 68
#define COMPLEXBASIN 69
#define COMPLEXMARKSMAND 70
#define COMPLEXMARKSJUL 71
#define FORMULA 72
#define FFORMULA 73
#define SIERPINSKIFP 74
#define LAMBDAFP 75
#define BARNSLEYM1FP 76
#define BARNSLEYJ1FP 77
#define BARNSLEYM2FP 78
#define BARNSLEYJ2FP 79
#define BARNSLEYM3FP 80
#define BARNSLEYJ3FP 81
#define MANDELLAMBDAFP 82
#define JULIBROT 83
#define FPLORENZ3D 84
#define LROSSLER 85
#define FPROSSLER 86
#define LHENON 87
#define FPHENON 88
#define FPPICKOVER 89
#define FPGINGERBREAD 90
#define DIFFUSION 91
#define UNITYFP 92
#define SPIDERFP 93
#define SPIDER 94
#define TETRATEFP 95
#define MAGNET1M 96
#define MAGNET1J 97
#define MAGNET2M 98
#define MAGNET2J 99
#define LBIFURCATION 100
#define LBIFLAMBDA 101
#define BIFLAMBDA 102
#define BIFADSINPI 103
#define BIFEQSINPI 104
#define FPPOPCORNJUL 105
#define LPOPCORNJUL 106
#define LSYSTEM 107
#define MANOWARJFP 108
#define MANOWARJ 109
#define FNPLUSFNPIXFP 110
#define FNPLUSFNPIXLONG 111
#define MARKSMANDELPWRFP 112
#define MARKSMANDELPWR 113
#define TIMSERRORFP 114
#define TIMSERROR 115
#define LBIFEQSINPI 116
#define LBIFADSINPI 117
#define BIFSTEWART 118
#define LBIFSTEWART 119
#define FPHOPALONG 120
#define FPCIRCLE 121
#define FPMARTIN 122
#define LYAPUNOV 123
#define FPLORENZ3D1 124
#define FPLORENZ3D3 125
#define FPLORENZ3D4 126
#define LLAMBDAFNFN 127
#define FPLAMBDAFNFN 128
#define LJULFNFN 129
#define FPJULFNFN 130
#define LMANLAMFNFN 131
#define FPMANLAMFNFN 132
#define LMANFNFN 133
#define FPMANFNFN 134
#define LBIFMAY 135
#define BIFMAY 136
#define MPHALLEY 137
#define HALLEY 138
#define DYNAMICFP 139
#define QUATFP 140
#define QUATJULFP 141
#define CELLULAR 142
#define JULIBROTFP 143
#define INVERSEJULIA 144
#define INVERSEJULIAFP 145
#define MANDELCLOUD 146
#define PHOENIX 147
#define PHOENIXFP 148
#define MANDPHOENIX 149
#define MANDPHOENIXFP 150
#define HYPERCMPLXFP 151
#define HYPERCMPLXJFP 152
#define FROTH 153
#define FROTHFP 154
#define MANDEL4FP 155
#define JULIA4FP 156
#define MARKSMANDELFP 157
#define MARKSJULIAFP 158
#define ICON 159
#define ICON3D 160
#define PHOENIXCPLX 161
#define PHOENIXFPCPLX 162
#define MANDPHOENIXCPLX 163
#define MANDPHOENIXFPCPLX 164
#define ANT 165
#define CHIP 166
#define QUADRUPTWO 167
#define THREEPLY 168
#define VL 169
#define ESCHER 170
#define LATOO 171
// new ones added
#define FOURIER 172
#define CUBIC 173
#define NEWTONPOLYGON 174
#define HENON 175
#define DEMOWALK 176
#define FIBONACCI 177
#define SPECIALNEWT 178
#define MATEIN 179
#define RATIONALMAP 180
#define POWER 181
#define CIRCLESQ 182
#define SINFRACTAL 183
#define EXPFRACTAL 184
#define NEWTONAPPLE 185
#define NEWTONFLOWER 186
#define MAGNET1 187
#define MAGNET2 188
#define TEDDY 189
#define NEWTONMSET 190
#define NEWTONJULIANOVA 191
#define TALIS 192
#define NEWTONCROSS 193
#define QUARTET1 194
#define QUARTET2 195
#define QUARTET3 196
#define RAMONSIN 197
#define RAMONCOS 198
#define FORMULA05 199
#define SHARON 200
#define QUAD 201
#define MOUNTAIN 202
#define FFT 203
#define TIERAZON 204 // general Tierazon fractal - use subtype to specify which one.
#define QUADMAND 205
#define SCREENFORMULA 206 // interpret fractal directly on screen
#define NEWTONVARIATION 207
#define NOVA 208
#define MALTHUS 209
#define TRIANGLES 210
#define GEOMETRY 211
#define CIRCLES 212
#define IKEDA 213
#define CROSSROADS 214
#define PASCALTRIANGLE 215
#define APOLLONIUS 216
#define APOLLONIUSIFS 217
#define SIERPINSKIFLOWERS 218
#define ZIGZAG 219
#define GARGOYLE 220
#define CURLICUES 221
#define CHUA 222
#define BURNINGSHIP 223
#define OSCILLATORS 224 // general Oscillator fractal - use subtype to specify which one.
#define FRACTALMAPS 225 // general Fractal Maps - use subtype to specify which one.
#define BURNINGSHIPPOWER 226
#define THORN 227
#define MANDELDERIVATIVES 228 // Mandelbrot derivatives based on ideas from Kalles Frakteler
#define BUDDHABROT 229
#define POPCORN 230
#define MANDELBAR 231
#define REDSHIFTRIDER 232
//#define MARCUSMANDEL 233 // general Marcus fractal - use subtype to specify which one.
#define SURFACES 233 // surfaces - use subtype to specify which one.
//#define MANDALA 234
#define KNOTS 234
#define CURVES 235
#define TETRATION 236
#define PERTURBATION 237
#define KLEINIAN 238
#define SPROTTMAPS 239
#define SLOPEDERIVATIVE 240
#define SLOPEFORWARDDIFF 241
#define POLYNOMIAL 242
#define TOWER 243
//#define CELTIC 235
//#define MANDELBARCELTIC 236
//#define PERPCELTIC 237
//#define CUBICFLYINGSQUIRREL 238
// #define MAXTYPE 208 // Remember to edit MAXTYPE in FRACTALP.H when we add new fractals
#define FRACTPAR 400 // treat this one differently
#endif