File: common\fractalp.c

    1 /*
    2         This module consists only of the fractalspecific structure
    3         and a *slew* of defines needed to get it to compile
    4 */
    5 
    6 /* includes needed for fractalspecific */
    7 
    8   /* see Fractint.c for a description of the "include"  hierarchy */
    9 #include "port.h"
   10 #include "prototyp.h"
   11 #include "helpdefs.h"
   12 #include "fractype.h"
   13 
   14 /* functions defined elswhere needed for fractalspecific */
   15 /* moved to prototyp.h */
   16 
   17 /* parameter descriptions */
   18 /* Note: parameters preceded by + are integer parameters */
   19 /*       parameters preceded by # are U32 parameters */
   20 
   21 /* for Mandelbrots */
   22 static char far realz0[] = "Real Perturbation of Z(0)";
   23 static char far imagz0[] = "Imaginary Perturbation of Z(0)";
   24 
   25 /* for Julias */
   26 static char far realparm[] = "Real Part of Parameter";
   27 static char far imagparm[] = "Imaginary Part of Parameter";
   28 
   29 /* for Newtons */
   30 static char far newtdegree[] = "+Polynomial Degree (>= 2)";
   31 
   32 /* for MarksMandel/Julia */
   33 static char far exponent[]   = "Real part of Exponent";
   34 static char far imexponent[] = "Imag part of Exponent";
   35 
   36 /* for Complex Newton */
   37 static char far realroot[]   = "Real part of Root";
   38 static char far imagroot[]   = "Imag part of Root";
   39 static char far realdegree[] = "Real part of Degree";
   40 static char far imagdegree[] = "Imag part of Degree";
   41 
   42 /* for Lorenz */
   43 static char far timestep[]     = "Time Step";
   44 
   45 /* for formula */
   46 static char far p1real[] = "Real portion of p1";
   47 static char far p2real[] = "Real portion of p2";
   48 static char far p3real[] = "Real portion of p3";
   49 static char far p4real[] = "Real portion of p4";
   50 static char far p5real[] = "Real portion of p5";
   51 static char far p1imag[] = "Imaginary portion of p1";
   52 static char far p2imag[] = "Imaginary portion of p2";
   53 static char far p3imag[] = "Imaginary portion of p3";
   54 static char far p4imag[] = "Imaginary portion of p4";
   55 static char far p5imag[] = "Imaginary portion of p5";
   56 
   57 /* trig functions */
   58 static char far recoeftrg1[] = "Real Coefficient First Function";
   59 static char far imcoeftrg1[] = "Imag Coefficient First Function";
   60 static char far recoeftrg2[] = "Real Coefficient Second Function";
   61 static char far imcoeftrg2[] = "Imag Coefficient Second Function";
   62 
   63 /* MCP 7-7-91
   64 static char far recoefsqr[] = "Real Coefficient Square Term";
   65 static char far imcoefsqr[] = "Imag Coefficient Square Term";
   66 */
   67 
   68 static char far recoef2nd[] = "Real Coefficient Second Term";
   69 static char far imcoef2nd[] = "Imag Coefficient Second Term";
   70 
   71 /* KAM Torus */
   72 static char far kamangle[] = "Angle (radians)";
   73 static char far kamstep[] =  "Step size";
   74 static char far kamstop[] =  "Stop value";
   75 static char far pointsperorbit[] = "+Points per orbit";
   76 
   77 /* Newtbasin */
   78 static char far stripes[] = "Enter non-zero value for stripes";
   79 
   80 /* Gingerbreadman */
   81 static char far initx[] = "Initial x";
   82 static char far inity[] = "Initial y";
   83 
   84 /* popcorn and julia popcorn generalized */
   85 static char far step_x[] = "Step size (real)";
   86 static char far step_y[] = "Step size (imaginary)";
   87 static char far constant_x[] = "Constant C (real)";
   88 static char far constant_y[] = "Constant C (imaginary)";
   89 
   90 /* bifurcations */
   91 static char far filt[] = "+Filter Cycles";
   92 static char far seed[] = "Seed Population";
   93 
   94 /* frothy basins */
   95 static char far frothmapping[] = "+Apply mapping once (1) or twice (2)";
   96 static char far frothshade[] =  "+Enter non-zero value for alternate color shading";
   97 static char far frothavalue[] =  "A (imaginary part of C)";
   98 
   99 /* symmetrical icon fractals */
  100 static char far s_lambda[] = "Lambda";
  101 static char far s_alpha[]  = "Alpha";
  102 static char far s_beta[]   = "Beta";
  103 static char far s_gamma[]  = "Gamma";
  104 static char far s_omega[]  = "Omega";
  105 static char far symdegree[] = "+Degree of symmetry";
  106 
  107 static char far shiftval[] = "Function Shift Value";
  108 
  109 /* plasma and ant */
  110 
  111 static char far s_randomseed[] = "+Random Seed Value (0 = Random, 1 = Reuse Last)";
  112 
  113 /* ifs */
  114 static char far color_method[] = "+Coloring method (0,1)";
  115 
  116 /* orbit fractals */
  117 static char A[] = "a";
  118 static char B[] = "b";
  119 static char D[] = "d";
  120 static char H[] = "h";
  121 static char P[] = "p";
  122 
  123 /* 4D fractals */
  124 static char C[] = "c";
  125 static char C1[] = "c1";
  126 static char CI[] = "ci";
  127 static char CJ[] = "cj";
  128 static char CK[] = "ck";
  129 static char ZJ[] = "zj";
  130 static char ZK[] = "zk";
  131 static char far notused[] = "notused";
  132 /* phoenix fractals */
  133 static char far degreeZ[] = "Degree = 0 | >= 2 | <= -3";
  134 
  135 /* empty string */
  136 static char far ES[] = "";
  137 
  138 /* julia inverse */
  139 static char far s_maxhits[] = "Max Hits per Pixel";
  140 #ifdef RANDOM_RUN
141 static char far randomruninterval[] = "Random Run Interval";
142 #endif 143 /* halley */ 144 static char far order[] = {"+Order (integer > 1)"}; 145 static char far real_relax[] = {"Real Relaxation coefficient"}; 146 static char far epsilon[] = {"Epsilon"}; 147 static char far imag_relax[] = {"Imag Relaxation coefficient"}; 148 /* cellular */ 149 static char far cell_init[] = {"#Initial String | 0 = Random | -1 = Reuse Last Random"}; 150 static char far cell_rule[] = {"#Rule = # of digits (see below) | 0 = Random"}; 151 static char far cell_type[] = {"+Type (see below)"}; 152 static char far cell_strt[] = {"#Starting Row Number"}; 153 154 /* bailout defines */ 155 #define FTRIGBAILOUT 2500 156 #define LTRIGBAILOUT 64 157 #define FROTHBAILOUT 7 158 #define STDBAILOUT 4 159 #define NOBAILOUT 0 160 161 MOREPARAMS moreparams[] = 162 { 163 {ICON ,{ s_omega, symdegree, ES,ES,ES,ES},{0,3,0,0,0,0}}, 164 {ICON3D ,{ s_omega, symdegree, ES,ES,ES,ES},{0,3,0,0,0,0}}, 165 {HYPERCMPLXJFP ,{ ZJ, ZK, ES,ES,ES,ES},{0,0,0,0,0,0}}, 166 {QUATJULFP ,{ ZJ, ZK, ES,ES,ES,ES},{0,0,0,0,0,0}}, 167 {PHOENIXCPLX ,{ degreeZ, ES, ES,ES,ES,ES},{0,0,0,0,0,0}}, 168 {PHOENIXFPCPLX ,{ degreeZ, ES, ES,ES,ES,ES},{0,0,0,0,0,0}}, 169 {MANDPHOENIXCPLX ,{ degreeZ, ES, ES,ES,ES,ES},{0,0,0,0,0,0}}, 170 {MANDPHOENIXFPCPLX,{ degreeZ, ES, ES,ES,ES,ES},{0,0,0,0,0,0}}, 171 {FORMULA ,{ p3real,p3imag,p4real,p4imag,p5real,p5imag},{0,0,0,0,0,0}}, 172 {FFORMULA ,{ p3real,p3imag,p4real,p4imag,p5real,p5imag},{0,0,0,0,0,0}}, 173 {ANT ,{ "+Wrap?",s_randomseed,ES,ES,ES,ES},{1,0,0,0,0,0}}, 174 {MANDELBROTMIX4 ,{ p3real,p3imag, ES,ES,ES,ES},{0,0,0,0,0,0}}, 175 {-1 ,{ NULL,NULL,NULL,NULL,NULL,NULL },{0,0,0,0,0,0}} 176 }; 177 178 /* 179 type math orbitcalc fnct per_pixel fnct per_image fnct 180 |-----|----|--------------|--------------|--------------| */ 181 struct alternatemathstuff far alternatemath[] = 182 { 183 #define USEBN 184 #ifdef USEBN 185 {JULIAFP, 1,JuliabnFractal,juliabn_per_pixel, MandelbnSetup}, 186 {MANDELFP,1,JuliabnFractal,mandelbn_per_pixel, MandelbnSetup},
187 #else 188 {JULIAFP, 2,JuliabfFractal,juliabf_per_pixel, MandelbfSetup}, 189 {MANDELFP,2,JuliabfFractal,mandelbf_per_pixel, MandelbfSetup},
190 #endif 191 /* 192 NOTE: The default precision for bf_math=BIGNUM is not high enough 193 for JuliaZpowerbnFractal. If you want to test BIGNUM (1) instead 194 of the usual BIGFLT (2), then set bfdigits on the command to 195 increase the precision. 196 */ 197 {FPJULIAZPOWER,2,JuliaZpowerbfFractal,juliabf_per_pixel, MandelbfSetup }, 198 {FPMANDELZPOWER,2,JuliaZpowerbfFractal,mandelbf_per_pixel, MandelbfSetup}, 199 {-1, 0,NULL, NULL, NULL } 200 }; 201 202 /* These are only needed for types with both integer and float variations */ 203 char t_barnsleyj1[]= "*barnsleyj1"; 204 char t_barnsleyj2[]= "*barnsleyj2"; 205 char t_barnsleyj3[]= "*barnsleyj3"; 206 char t_barnsleym1[]= "*barnsleym1"; 207 char t_barnsleym2[]= "*barnsleym2"; 208 char t_barnsleym3[]= "*barnsleym3"; 209 char t_bifplussinpi[]= "*bif+sinpi"; 210 char t_bifeqsinpi[]= "*bif=sinpi"; 211 char t_biflambda[]= "*biflambda"; 212 char t_bifmay[]= "*bifmay"; 213 char t_bifstewart[]= "*bifstewart"; 214 char t_bifurcation[]= "*bifurcation"; 215 char t_fn_z_plusfn_pix_[]= "*fn(z)+fn(pix)"; 216 char t_fn_zz_[]= "*fn(z*z)"; 217 char t_fnfn[]= "*fn*fn"; 218 char t_fnzplusz[]= "*fn*z+z"; 219 char t_fnplusfn[]= "*fn+fn"; 220 char t_formula[]= "*formula"; 221 char t_henon[]= "*henon"; 222 char t_ifs3d[]= "*ifs3d"; 223 char t_julfnplusexp[]= "*julfn+exp"; 224 char t_julfnpluszsqrd[]= "*julfn+zsqrd"; 225 char t_julia[]= "*julia"; 226 char t_julia_fnorfn_[]= "*julia(fn||fn)"; 227 char t_julia4[]= "*julia4"; 228 char t_julia_inverse[]= "*julia_inverse"; 229 char t_julibrot[]= "*julibrot"; 230 char t_julzpower[]= "*julzpower"; 231 char t_kamtorus[]= "*kamtorus"; 232 char t_kamtorus3d[]= "*kamtorus3d"; 233 char t_lambda[]= "*lambda"; 234 char t_lambda_fnorfn_[]= "*lambda(fn||fn)"; 235 char t_lambdafn[]= "*lambdafn"; 236 char t_lorenz[]= "*lorenz"; 237 char t_lorenz3d[]= "*lorenz3d"; 238 char t_mandel[]= "*mandel"; 239 char t_mandel_fnorfn_[]= "*mandel(fn||fn)"; 240 char t_mandel4[]= "*mandel4"; 241 char t_mandelfn[]= "*mandelfn"; 242 char t_mandellambda[]= "*mandellambda"; 243 char t_mandphoenix[]= "*mandphoenix"; 244 char t_mandphoenixcplx[]= "*mandphoenixclx"; 245 char t_manfnplusexp[]= "*manfn+exp"; 246 char t_manfnpluszsqrd[]= "*manfn+zsqrd"; 247 char t_manlam_fnorfn_[]= "*manlam(fn||fn)"; 248 char t_manowar[]= "*manowar"; 249 char t_manowarj[]= "*manowarj"; 250 char t_manzpower[]= "*manzpower"; 251 char t_marksjulia[]= "*marksjulia"; 252 char t_marksmandel[]= "*marksmandel"; 253 char t_marksmandelpwr[]= "*marksmandelpwr"; 254 char t_newtbasin[]= "*newtbasin"; 255 char t_newton[]= "*newton"; 256 char t_phoenix[]= "*phoenix"; 257 char t_phoenixcplx[]= "*phoenixcplx"; 258 char t_popcorn[]= "*popcorn"; 259 char t_popcornjul[]= "*popcornjul"; 260 char t_rossler3d[]= "*rossler3d"; 261 char t_sierpinski[]= "*sierpinski"; 262 char t_spider[]= "*spider"; 263 char t_sqr_1divfn_[]= "*sqr(1/fn)"; 264 char t_sqr_fn_[]= "*sqr(fn)"; 265 char t_tims_error[]= "*tim's_error"; 266 char t_unity[]= "*unity"; 267 char t_frothybasin[]= "*frothybasin"; 268 char t_halley[]= "*halley"; 269 270 /* use next to cast orbitcalcs() that have arguments */ 271 #define VF int(*)(void) 272 273 struct fractalspecificstuff far fractalspecific[]= 274 { 275 /* 276 { 277 fractal name, 278 {parameter text strings}, 279 {parameter values}, 280 helptext, helpformula, flags, 281 xmin, xmax, ymin, ymax, 282 int, tojulia, tomandel, tofloat, symmetry, 283 orbit fnct, per_pixel fnct, per_image fnct, calctype fcnt, 284 bailout 285 } 286 */ 287 288 { 289 t_mandel+1, 290 {realz0, imagz0, ES, ES}, 291 {0, 0, 0, 0}, 292 HT_MANDEL, HF_MANDEL, WINFRAC+BAILTEST, 293 (float)-2.5, (float)1.5, (float)-1.5, (float)1.5, 294 1, JULIA, NOFRACTAL, MANDELFP, XAXIS_NOPARM, 295 JuliaFractal, mandel_per_pixel,MandelSetup, StandardFractal, 296 STDBAILOUT 297 }, 298 299 { 300 t_julia+1, 301 {realparm, imagparm, ES, ES}, 302 {0.3, 0.6, 0, 0}, 303 HT_JULIA, HF_JULIA, WINFRAC+OKJB+BAILTEST, 304 (float)-2.0, (float)2.0, (float)-1.5, (float)1.5, 305 1, NOFRACTAL, MANDEL, JULIAFP, ORIGIN, 306 JuliaFractal, julia_per_pixel, JuliaSetup, StandardFractal, 307 STDBAILOUT 308 }, 309 310 { 311 t_newtbasin, 312 {newtdegree, stripes, ES, ES}, 313 {3, 0, 0, 0}, 314 HT_NEWTBAS, HF_NEWTBAS, WINFRAC, 315 (float)-2.0, (float)2.0, (float)-1.5, (float)1.5, 316 0, NOFRACTAL, NOFRACTAL, MPNEWTBASIN, NOSYM, 317 NewtonFractal2, otherjuliafp_per_pixel, NewtonSetup, StandardFractal, 318 NOBAILOUT 319 }, 320 321 { 322 t_lambda+1, 323 {realparm, imagparm, ES, ES}, 324 {0.85, 0.6, 0, 0}, 325 HT_LAMBDA, HF_LAMBDA, WINFRAC+OKJB+BAILTEST, 326 (float)-1.5, (float)2.5, (float)-1.5, (float)1.5, 327 1, NOFRACTAL, MANDELLAMBDA, LAMBDAFP, NOSYM, 328 LambdaFractal, julia_per_pixel, JulialongSetup, StandardFractal, 329 STDBAILOUT 330 }, 331 332 { 333 t_mandel, 334 {realz0, imagz0, ES, ES}, 335 {0, 0, 0, 0}, 336 HT_MANDEL, HF_MANDEL, WINFRAC+BAILTEST+BF_MATH, 337 (float)-2.5, (float)1.5, (float)-1.5, (float)1.5, 338 0, JULIAFP, NOFRACTAL, MANDEL, XAXIS_NOPARM, 339 JuliafpFractal, mandelfp_per_pixel, MandelfpSetup, StandardFractal, 340 STDBAILOUT 341 }, 342 343 { 344 t_newton, 345 {newtdegree, ES, ES, ES}, 346 {3, 0, 0, 0}, 347 HT_NEWT, HF_NEWT, WINFRAC, 348 (float)-2.0, (float)2.0, (float)-1.5, (float)1.5, 349 0, NOFRACTAL, NOFRACTAL, MPNEWTON, XAXIS, 350 NewtonFractal2, otherjuliafp_per_pixel, NewtonSetup, StandardFractal, 351 NOBAILOUT 352 }, 353 354 { 355 t_julia, 356 {realparm, imagparm, ES, ES}, 357 {0.3, 0.6, 0, 0}, 358 HT_JULIA, HF_JULIA, WINFRAC+OKJB+BAILTEST+BF_MATH, 359 (float)-2.0, (float)2.0, (float)-1.5, (float)1.5, 360 0, NOFRACTAL, MANDELFP, JULIA, ORIGIN, 361 JuliafpFractal, juliafp_per_pixel, JuliafpSetup, StandardFractal, 362 STDBAILOUT 363 }, 364 365 { 366 "plasma", 367 {"Graininess Factor (0 or 0.125 to 100, default is 2)", 368 "+Algorithm (0 = original, 1 = new)", 369 "+Random Seed Value (0 = Random, 1 = Reuse Last)", 370 "+Save as Pot File? (0 = No, 1 = Yes)" 371 }, 372 {2, 0, 0, 0}, 373 HT_PLASMA, HF_PLASMA, NOZOOM+NOGUESS+NOTRACE+NORESUME+WINFRAC, 374 (float)-2.0, (float)2.0, (float)-1.5, (float)1.5, 375 1, NOFRACTAL, NOFRACTAL, NOFRACTAL, NOSYM, 376 NULL, NULL, StandaloneSetup, plasma, 377 NOBAILOUT 378 }, 379 380 { 381 t_mandelfn, 382 {realz0, imagz0, ES, ES}, 383 {0, 0, 0, 0}, 384 HT_MANDFN, HF_MANDFN, TRIG1+WINFRAC, 385 (float)-8.0, (float)8.0, (float)-6.0, (float)6.0, 386 0, LAMBDATRIGFP, NOFRACTAL, MANDELTRIG, XYAXIS_NOPARM, 387 LambdaTrigfpFractal,othermandelfp_per_pixel,MandelTrigSetup, 388 StandardFractal, 389 LTRIGBAILOUT 390 }, 391 392 { 393 t_manowar, 394 {realz0, imagz0, ES, ES}, 395 {0, 0, 0, 0}, 396 HT_SCOTSKIN, HF_MANOWAR, WINFRAC+BAILTEST, 397 (float)-2.5, (float)1.5, (float)-1.5, (float)1.5, 398 0, MANOWARJFP, NOFRACTAL, MANOWAR, XAXIS_NOPARM, 399 ManOWarfpFractal, mandelfp_per_pixel, MandelfpSetup, StandardFractal, 400 STDBAILOUT 401 }, 402 403 { 404 t_manowar+1, 405 {realz0, imagz0, ES, ES}, 406 {0, 0, 0, 0}, 407 HT_SCOTSKIN, HF_MANOWAR, WINFRAC+BAILTEST, 408 (float)-2.5, (float)1.5, (float)-1.5, (float)1.5, 409 1, MANOWARJ, NOFRACTAL, MANOWARFP, XAXIS_NOPARM, 410 ManOWarFractal, mandel_per_pixel, MandellongSetup, StandardFractal, 411 STDBAILOUT 412 }, 413 414 { 415 "test", 416 {"(testpt Param #1)", 417 "(testpt param #2)", 418 "(testpt param #3)", 419 "(testpt param #4)" 420 }, 421 {0, 0, 0, 0}, 422 HT_TEST, HF_TEST, 0, 423 (float)-2.0, (float)2.0, (float)-1.5, (float)1.5, 424 0, NOFRACTAL, NOFRACTAL, NOFRACTAL, NOSYM, 425 NULL, NULL, StandaloneSetup, test, 426 STDBAILOUT 427 }, 428 429 { 430 t_sierpinski+1, 431 {ES, ES, ES, ES}, 432 {0, 0, 0, 0}, 433 HT_SIER, HF_SIER, WINFRAC, 434 (float)-4/3, (float)96/45, (float)-0.9, (float)1.7, 435 1, NOFRACTAL, NOFRACTAL, SIERPINSKIFP, NOSYM, 436 SierpinskiFractal, long_julia_per_pixel, SierpinskiSetup, 437 StandardFractal, 438 127 439 }, 440 441 { 442 t_barnsleym1+1, 443 {realz0, imagz0, ES, ES}, 444 {0, 0, 0, 0}, 445 HT_BARNS, HF_BARNSM1, WINFRAC+BAILTEST, 446 (float)-2.0, (float)2.0, (float)-1.5, (float)1.5, 447 1, BARNSLEYJ1,NOFRACTAL, BARNSLEYM1FP, XYAXIS_NOPARM, 448 Barnsley1Fractal, long_mandel_per_pixel, MandellongSetup, 449 StandardFractal, 450 STDBAILOUT 451 }, 452 453 { 454 t_barnsleyj1+1, 455 {realparm, imagparm, ES, ES}, 456 {0.6, 1.1, 0, 0}, 457 HT_BARNS, HF_BARNSJ1, WINFRAC+OKJB+BAILTEST, 458 (float)-2.0, (float)2.0, (float)-1.5, (float)1.5, 459 1, NOFRACTAL, BARNSLEYM1, BARNSLEYJ1FP, ORIGIN, 460 Barnsley1Fractal, long_julia_per_pixel, JulialongSetup, StandardFractal, 461 STDBAILOUT 462 }, 463 464 { 465 t_barnsleym2+1, 466 {realz0, imagz0, ES, ES}, 467 {0, 0, 0, 0}, 468 HT_BARNS, HF_BARNSM2, WINFRAC+BAILTEST, 469 (float)-2.0, (float)2.0, (float)-1.5, (float)1.5, 470 1, BARNSLEYJ2, NOFRACTAL, BARNSLEYM2FP, YAXIS_NOPARM, 471 Barnsley2Fractal, long_mandel_per_pixel, MandellongSetup, 472 StandardFractal, 473 STDBAILOUT 474 }, 475 476 { 477 t_barnsleyj2+1, 478 {realparm, imagparm, ES, ES}, 479 {0.6, 1.1, 0, 0}, 480 HT_BARNS, HF_BARNSJ2, WINFRAC+OKJB+BAILTEST, 481 (float)-2.0, (float)2.0, (float)-1.5, (float)1.5, 482 1, NOFRACTAL, BARNSLEYM2, BARNSLEYJ2FP, ORIGIN, 483 Barnsley2Fractal, long_julia_per_pixel, JulialongSetup, StandardFractal, 484 STDBAILOUT 485 }, 486 487 { 488 t_sqr_fn_+1, 489 {ES, ES, ES, ES}, 490 {0, 0, 0, 0}, 491 HT_SCOTSKIN, HF_SQRFN, TRIG1+WINFRAC+BAILTEST, 492 (float)-4.0, (float)4.0, (float)-3.0, (float)3.0, 493 16, NOFRACTAL, NOFRACTAL, SQRTRIGFP, XAXIS, 494 SqrTrigFractal, long_julia_per_pixel, SqrTrigSetup, StandardFractal, 495 LTRIGBAILOUT 496 }, 497 498 { 499 t_sqr_fn_, 500 {ES, ES, ES, ES}, 501 {0, 0, 0, 0}, 502 HT_SCOTSKIN, HF_SQRFN, TRIG1+WINFRAC+BAILTEST, 503 (float)-4.0, (float)4.0, (float)-3.0, (float)3.0, 504 0, NOFRACTAL, NOFRACTAL, SQRTRIG, XAXIS, 505 SqrTrigfpFractal, otherjuliafp_per_pixel, SqrTrigSetup, StandardFractal, 506 LTRIGBAILOUT 507 }, 508 509 { 510 t_fnplusfn+1, 511 {recoeftrg1, imcoeftrg1, recoeftrg2, imcoeftrg2}, 512 {1, 0, 1, 0}, 513 HT_SCOTSKIN, HF_FNPLUSFN, TRIG2+WINFRAC+BAILTEST, 514 (float)-4.0, (float)4.0, (float)-3.0, (float)3.0, 515 16, NOFRACTAL, NOFRACTAL, TRIGPLUSTRIGFP, XAXIS, 516 TrigPlusTrigFractal, long_julia_per_pixel, TrigPlusTriglongSetup, 517 StandardFractal, 518 LTRIGBAILOUT 519 }, 520 521 { 522 t_mandellambda+1, 523 {realz0, imagz0, ES, ES}, 524 {0, 0, 0, 0}, 525 HT_MLAMBDA, HF_MLAMBDA, WINFRAC+BAILTEST, 526 (float)-3.0, (float)5.0, (float)-3.0, (float)3.0, 527 1, LAMBDA, NOFRACTAL, MANDELLAMBDAFP, XAXIS_NOPARM, 528 LambdaFractal, mandel_per_pixel,MandellongSetup, StandardFractal, 529 STDBAILOUT 530 }, 531 532 { 533 t_marksmandel+1, 534 {realz0, imagz0, exponent, ES}, 535 {0, 0, 1, 0}, 536 HT_MARKS, HF_MARKSMAND, WINFRAC+BAILTEST, 537 (float)-2.0, (float)2.0, (float)-1.5, (float)1.5, 538 1, MARKSJULIA, NOFRACTAL, MARKSMANDELFP, NOSYM, 539 MarksLambdaFractal, marksmandel_per_pixel, MandellongSetup, 540 StandardFractal, 541 STDBAILOUT 542 }, 543 544 { 545 t_marksjulia+1, 546 {realparm, imagparm, exponent, ES}, 547 {0.1, 0.9, 1, 0}, 548 HT_MARKS, HF_MARKSJULIA, WINFRAC+BAILTEST, 549 (float)-2.0, (float)2.0, (float)-1.5, (float)1.5, 550 1, NOFRACTAL, MARKSMANDEL, MARKSJULIAFP, ORIGIN, 551 MarksLambdaFractal, julia_per_pixel, MarksJuliaSetup, StandardFractal, 552 STDBAILOUT 553 }, 554 555 { 556 t_unity+1, 557 {ES, ES, ES, ES}, 558 {0, 0, 0, 0}, 559 HT_UNITY, HF_UNITY, WINFRAC, 560 (float)-2.0, (float)2.0, (float)-1.5, (float)1.5, 561 1, NOFRACTAL, NOFRACTAL, UNITYFP, XYAXIS, 562 UnityFractal, long_julia_per_pixel, UnitySetup, StandardFractal, 563 NOBAILOUT 564 }, 565 566 { 567 t_mandel4+1, 568 {realz0, imagz0, ES, ES}, 569 {0, 0, 0, 0}, 570 HT_MANDJUL4, HF_MANDEL4, WINFRAC+BAILTEST, 571 (float)-2.0, (float)2.0, (float)-1.5, (float)1.5, 572 1, JULIA4, NOFRACTAL, MANDEL4FP, XAXIS_NOPARM, 573 Mandel4Fractal, mandel_per_pixel, MandellongSetup, StandardFractal, 574 STDBAILOUT 575 }, 576 577 { 578 t_julia4+1, 579 {realparm, imagparm, ES, ES}, 580 {0.6, 0.55, 0, 0}, 581 HT_MANDJUL4, HF_JULIA4, WINFRAC+OKJB+BAILTEST, 582 (float)-2.0, (float)2.0, (float)-1.5, (float)1.5, 583 1, NOFRACTAL, MANDEL4, JULIA4FP, ORIGIN, 584 Mandel4Fractal, julia_per_pixel, JulialongSetup, StandardFractal, 585 STDBAILOUT 586 }, 587 588 { 589 "ifs", 590 {color_method, ES, ES, ES}, 591 {0, 0, 0, 0}, 592 HT_IFS, -4, NOGUESS+NOTRACE+NORESUME+WINFRAC+INFCALC, 593 (float)-8.0, (float)8.0, (float)-1.0, (float)11.0, 594 16, NOFRACTAL, NOFRACTAL, NOFRACTAL, NOSYM, 595 NULL, NULL, StandaloneSetup, ifs, 596 NOBAILOUT 597 }, 598 599 { 600 t_ifs3d, 601 {color_method, ES, ES, ES}, 602 {0, 0, 0, 0}, 603 HT_IFS, -4, NOGUESS+NOTRACE+NORESUME+WINFRAC+PARMS3D+INFCALC, 604 (float)-11.0, (float)11.0, (float)-11.0, (float)11.0, 605 16, NOFRACTAL, NOFRACTAL, NOFRACTAL, NOSYM, 606 NULL, NULL, StandaloneSetup, ifs, 607 NOBAILOUT 608 }, 609 610 { 611 t_barnsleym3+1, 612 {realz0, imagz0, ES, ES}, 613 {0, 0, 0, 0}, 614 HT_BARNS, HF_BARNSM3, WINFRAC+BAILTEST, 615 (float)-2.0, (float)2.0, (float)-1.5, (float)1.5, 616 1, BARNSLEYJ3,NOFRACTAL, BARNSLEYM3FP, XAXIS_NOPARM, 617 Barnsley3Fractal, long_mandel_per_pixel, MandellongSetup, 618 StandardFractal, 619 STDBAILOUT 620 }, 621 622 { 623 t_barnsleyj3+1, 624 {realparm, imagparm, ES, ES}, 625 {0.1, 0.36, 0, 0}, 626 HT_BARNS, HF_BARNSJ3, WINFRAC+OKJB+BAILTEST, 627 (float)-2.0, (float)2.0, (float)-1.5, (float)1.5, 628 1, NOFRACTAL, BARNSLEYM3, BARNSLEYJ3FP, NOSYM, 629 Barnsley3Fractal, long_julia_per_pixel, JulialongSetup, StandardFractal, 630 STDBAILOUT 631 }, 632 633 { 634 t_fn_zz_+1, 635 {ES, ES, ES, ES}, 636 {0, 0, 0, 0}, 637 HT_SCOTSKIN, HF_FNZTIMESZ, TRIG1+WINFRAC+BAILTEST, 638 (float)-4.0, (float)4.0, (float)-3.0, (float)3.0, 639 16, NOFRACTAL, NOFRACTAL, TRIGSQRFP, XYAXIS, 640 TrigZsqrdFractal, julia_per_pixel, JulialongSetup, StandardFractal, 641 STDBAILOUT 642 }, 643 644 { 645 t_fn_zz_, 646 {ES, ES, ES, ES}, 647 {0, 0, 0, 0}, 648 HT_SCOTSKIN, HF_FNZTIMESZ, TRIG1+WINFRAC+BAILTEST, 649 (float)-4.0, (float)4.0, (float)-3.0, (float)3.0, 650 0, NOFRACTAL, NOFRACTAL, TRIGSQR, XYAXIS, 651 TrigZsqrdfpFractal, juliafp_per_pixel, JuliafpSetup, StandardFractal, 652 STDBAILOUT 653 }, 654 655 { 656 t_bifurcation, 657 {filt, seed, ES, ES}, 658 {1000.0, 0.66, 0, 0}, 659 HT_BIF, HF_BIFURCATION, TRIG1+NOGUESS+NOTRACE+NOROTATE+WINFRAC, 660 (float)1.9, (float)3.0, (float)0.0, (float)1.34, 661 0, NOFRACTAL, NOFRACTAL, LBIFURCATION, NOSYM, 662 BifurcVerhulstTrig, NULL, StandaloneSetup, Bifurcation, 663 NOBAILOUT 664 }, 665 666 { 667 t_fnplusfn, 668 {recoeftrg1, imcoeftrg1, recoeftrg2, imcoeftrg2}, 669 {1, 0, 1, 0}, 670 HT_SCOTSKIN, HF_FNPLUSFN, TRIG2+WINFRAC+BAILTEST, 671 (float)-4.0, (float)4.0, (float)-3.0, (float)3.0, 672 0, NOFRACTAL, NOFRACTAL, TRIGPLUSTRIG, XAXIS, 673 TrigPlusTrigfpFractal, otherjuliafp_per_pixel, TrigPlusTrigfpSetup, 674 StandardFractal, 675 LTRIGBAILOUT 676 }, 677 678 { 679 t_fnfn+1, 680 {ES, ES, ES, ES}, 681 {0, 0, 0, 0}, 682 HT_SCOTSKIN, HF_FNTIMESFN, TRIG2+WINFRAC+BAILTEST, 683 (float)-4.0, (float)4.0, (float)-3.0, (float)3.0, 684 16, NOFRACTAL, NOFRACTAL, TRIGXTRIGFP, XAXIS, 685 TrigXTrigFractal, long_julia_per_pixel, FnXFnSetup, StandardFractal, 686 LTRIGBAILOUT 687 }, 688 689 { 690 t_fnfn, 691 {ES, ES, ES, ES}, 692 {0, 0, 0, 0}, 693 HT_SCOTSKIN, HF_FNTIMESFN, TRIG2+WINFRAC+BAILTEST, 694 (float)-4.0, (float)4.0, (float)-3.0, (float)3.0, 695 0, NOFRACTAL, NOFRACTAL, TRIGXTRIG, XAXIS, 696 TrigXTrigfpFractal, otherjuliafp_per_pixel, FnXFnSetup, StandardFractal, 697 LTRIGBAILOUT 698 }, 699 700 { 701 t_sqr_1divfn_+1, 702 {ES, ES, ES, ES}, 703 {0, 0, 0, 0}, 704 HT_SCOTSKIN, HF_SQROVFN, TRIG1+WINFRAC+BAILTEST, 705 (float)-4.0, (float)4.0, (float)-3.0, (float)3.0, 706 16, NOFRACTAL, NOFRACTAL, SQR1OVERTRIGFP, NOSYM, 707 Sqr1overTrigFractal, long_julia_per_pixel, SqrTrigSetup, 708 StandardFractal, 709 LTRIGBAILOUT 710 }, 711 712 { 713 t_sqr_1divfn_, 714 {ES, ES, ES, ES}, 715 {0, 0, 0, 0}, 716 HT_SCOTSKIN, HF_SQROVFN, TRIG1+WINFRAC+BAILTEST, 717 (float)-4.0, (float)4.0, (float)-3.0, (float)3.0, 718 0, NOFRACTAL, NOFRACTAL, SQR1OVERTRIG, NOSYM, 719 Sqr1overTrigfpFractal, otherjuliafp_per_pixel, SqrTrigSetup, 720 StandardFractal, 721 LTRIGBAILOUT 722 }, 723 724 { 725 t_fnzplusz+1, 726 {recoeftrg1, imcoeftrg1, recoef2nd, imcoef2nd}, 727 {1, 0, 1, 0}, 728 HT_SCOTSKIN, HF_FNXZPLUSZ, TRIG1+WINFRAC+BAILTEST, 729 (float)-4.0, (float)4.0, (float)-3.0, (float)3.0, 730 1, NOFRACTAL, NOFRACTAL, ZXTRIGPLUSZFP, XAXIS, 731 ZXTrigPlusZFractal, julia_per_pixel, ZXTrigPlusZSetup, StandardFractal, 732 LTRIGBAILOUT 733 }, 734 735 { 736 t_fnzplusz, 737 {recoeftrg1, imcoeftrg1, recoef2nd, imcoef2nd}, 738 {1, 0, 1, 0}, 739 HT_SCOTSKIN, HF_FNXZPLUSZ, TRIG1+WINFRAC+BAILTEST, 740 (float)-4.0, (float)4.0, (float)-3.0, (float)3.0, 741 0, NOFRACTAL, NOFRACTAL, ZXTRIGPLUSZ, XAXIS, 742 ZXTrigPlusZfpFractal, juliafp_per_pixel, ZXTrigPlusZSetup, 743 StandardFractal, 744 LTRIGBAILOUT 745 }, 746 747 { 748 t_kamtorus, 749 {kamangle, kamstep, kamstop, pointsperorbit}, 750 {1.3, .05, 1.5, 150}, 751 HT_KAM, HF_KAM, NOGUESS+NOTRACE+WINFRAC, 752 (float)-1.0, (float)1.0, (float)-.75, (float).75, 753 0, NOFRACTAL, NOFRACTAL, KAM, NOSYM, 754 (VF)kamtorusfloatorbit, NULL, orbit3dfloatsetup, orbit2dfloat, 755 NOBAILOUT 756 }, 757 758 { 759 t_kamtorus+1, 760 {kamangle, kamstep, kamstop, pointsperorbit}, 761 {1.3, .05, 1.5, 150}, 762 HT_KAM, HF_KAM, NOGUESS+NOTRACE+WINFRAC, 763 (float)-1.0, (float)1.0, (float)-.75, (float).75, 764 16, NOFRACTAL, NOFRACTAL, KAMFP, NOSYM, 765 (VF)kamtoruslongorbit, NULL, orbit3dlongsetup, orbit2dlong, 766 NOBAILOUT 767 }, 768 769 { 770 t_kamtorus3d, 771 {kamangle, kamstep, kamstop, pointsperorbit}, 772 {1.3, .05, 1.5, 150}, 773 HT_KAM, HF_KAM, NOGUESS+NOTRACE+NORESUME+WINFRAC+PARMS3D, 774 (float)-3.0, (float)3.0, (float)-1.0, (float)3.5, 775 0, NOFRACTAL, NOFRACTAL, KAM3D, NOSYM, 776 (VF)kamtorusfloatorbit, NULL, orbit3dfloatsetup, orbit3dfloat, 777 NOBAILOUT 778 }, 779 780 { 781 t_kamtorus3d+1, 782 {kamangle, kamstep, kamstop, pointsperorbit}, 783 {1.3, .05, 1.5, 150}, 784 HT_KAM, HF_KAM, NOGUESS+NOTRACE+NORESUME+WINFRAC+PARMS3D, 785 (float)-3.0, (float)3.0, (float)-1.0, (float)3.5, 786 16, NOFRACTAL, NOFRACTAL, KAM3DFP, NOSYM, 787 (VF)kamtoruslongorbit, NULL, orbit3dlongsetup, orbit3dlong, 788 NOBAILOUT 789 }, 790 791 { 792 t_lambdafn+1, 793 {realparm, imagparm, ES, ES}, 794 {1.0, 0.4, 0, 0}, 795 HT_LAMBDAFN, HF_LAMBDAFN, TRIG1+WINFRAC+OKJB, 796 (float)-4.0, (float)4.0, (float)-3.0, (float)3.0, 797 16, NOFRACTAL, MANDELTRIG, LAMBDATRIGFP, PI_SYM, 798 (VF)LambdaTrigFractal, long_julia_per_pixel, LambdaTrigSetup, 799 StandardFractal, 800 LTRIGBAILOUT 801 }, 802 803 { 804 t_manfnpluszsqrd+1, 805 {realz0, imagz0, ES, ES}, 806 {0, 0, 0, 0}, 807 HT_PICKMJ, HF_MANDFNPLUSZSQRD, TRIG1+WINFRAC+BAILTEST, 808 (float)-2.5, (float)1.5, (float)-1.5, (float)1.5, 809 16, LJULTRIGPLUSZSQRD, NOFRACTAL, FPMANTRIGPLUSZSQRD, XAXIS_NOPARM, 810 TrigPlusZsquaredFractal, mandel_per_pixel, MandellongSetup, 811 StandardFractal, 812 STDBAILOUT 813 }, 814 815 { 816 t_julfnpluszsqrd+1, 817 {realparm, imagparm, ES, ES}, 818 {-0.5, 0.5, 0, 0}, 819 HT_PICKMJ, HF_JULFNPLUSZSQRD, TRIG1+WINFRAC+OKJB+BAILTEST, 820 (float)-2.0, (float)2.0, (float)-1.5, (float)1.5, 821 16, NOFRACTAL, LMANTRIGPLUSZSQRD, FPJULTRIGPLUSZSQRD, NOSYM, 822 TrigPlusZsquaredFractal, julia_per_pixel, JuliafnPlusZsqrdSetup, 823 StandardFractal, 824 STDBAILOUT 825 }, 826 827 { 828 t_manfnpluszsqrd, 829 {realz0, imagz0, ES, ES}, 830 {0, 0, 0, 0}, 831 HT_PICKMJ, HF_MANDFNPLUSZSQRD, TRIG1+WINFRAC+BAILTEST, 832 (float)-2.5, (float)1.5, (float)-1.5, (float)1.5, 833 0, FPJULTRIGPLUSZSQRD, NOFRACTAL, LMANTRIGPLUSZSQRD, XAXIS_NOPARM, 834 TrigPlusZsquaredfpFractal, mandelfp_per_pixel, MandelfpSetup, 835 StandardFractal, 836 STDBAILOUT 837 }, 838 839 { 840 t_julfnpluszsqrd, 841 {realparm, imagparm, ES, ES}, 842 {-0.5, 0.5, 0, 0}, 843 HT_PICKMJ, HF_JULFNPLUSZSQRD, TRIG1+WINFRAC+OKJB+BAILTEST, 844 (float)-2.0, (float)2.0, (float)-1.5, (float)1.5, 845 0, NOFRACTAL, FPMANTRIGPLUSZSQRD, LJULTRIGPLUSZSQRD, NOSYM, 846 TrigPlusZsquaredfpFractal, juliafp_per_pixel, JuliafnPlusZsqrdSetup, 847 StandardFractal, 848 STDBAILOUT 849 }, 850 851 { 852 t_lambdafn, 853 {realparm, imagparm, ES, ES}, 854 {1.0, 0.4, 0, 0}, 855 HT_LAMBDAFN, HF_LAMBDAFN, TRIG1+WINFRAC+OKJB, 856 (float)-2.0, (float)2.0, (float)-1.5, (float)1.5, 857 0, NOFRACTAL, MANDELTRIGFP, LAMBDATRIG, PI_SYM, 858 LambdaTrigfpFractal, otherjuliafp_per_pixel, LambdaTrigSetup, 859 StandardFractal, 860 LTRIGBAILOUT 861 }, 862 863 { 864 t_mandelfn+1, 865 {realz0, imagz0, ES, ES}, 866 {0, 0, 0, 0}, 867 HT_MANDFN, HF_MANDFN, TRIG1+WINFRAC, 868 (float)-8.0, (float)8.0, (float)-6.0, (float)6.0, 869 16, LAMBDATRIG, NOFRACTAL, MANDELTRIGFP, XYAXIS_NOPARM, 870 LambdaTrigFractal, long_mandel_per_pixel, MandelTrigSetup, 871 StandardFractal, 872 LTRIGBAILOUT 873 }, 874 875 { 876 t_manzpower+1, 877 {realz0, imagz0, exponent, imexponent}, 878 {0, 0, 2, 0}, 879 HT_PICKMJ, HF_MANZPOWER, WINFRAC+BAILTEST, 880 (float)-2.0, (float)2.0, (float)-1.5, (float)1.5, 881 1, LJULIAZPOWER, NOFRACTAL, FPMANDELZPOWER, XAXIS_NOIMAG, 882 longZpowerFractal, long_mandel_per_pixel, MandellongSetup, 883 StandardFractal, 884 STDBAILOUT 885 }, 886 887 { 888 t_julzpower+1, 889 {realparm, imagparm, exponent, imexponent}, 890 {0.3, 0.6, 2, 0}, 891 HT_PICKMJ, HF_JULZPOWER, WINFRAC+OKJB+BAILTEST, 892 (float)-2.0, (float)2.0, (float)-1.5, (float)1.5, 893 1, NOFRACTAL, LMANDELZPOWER, FPJULIAZPOWER, ORIGIN, 894 longZpowerFractal, long_julia_per_pixel, JulialongSetup, 895 StandardFractal, 896 STDBAILOUT 897 }, 898 899 { 900 t_manzpower, 901 {realz0, imagz0, exponent, imexponent}, 902 {0, 0, 2, 0}, 903 HT_PICKMJ, HF_MANZPOWER, WINFRAC+BAILTEST+BF_MATH, 904 (float)-2.5, (float)1.5, (float)-1.5, (float)1.5, 905 0, FPJULIAZPOWER, NOFRACTAL, LMANDELZPOWER, XAXIS_NOIMAG, 906 floatZpowerFractal, othermandelfp_per_pixel, MandelfpSetup, 907 StandardFractal, 908 STDBAILOUT 909 }, 910 911 { 912 t_julzpower, 913 {realparm, imagparm, exponent, imexponent}, 914 {0.3, 0.6, 2, 0}, 915 HT_PICKMJ, HF_JULZPOWER, WINFRAC+OKJB+BAILTEST+BF_MATH, 916 (float)-2.0, (float)2.0, (float)-1.5, (float)1.5, 917 0, NOFRACTAL, FPMANDELZPOWER, LJULIAZPOWER, ORIGIN, 918 floatZpowerFractal, otherjuliafp_per_pixel, JuliafpSetup, 919 StandardFractal, 920 STDBAILOUT 921 }, 922 923 { 924 "manzzpwr", 925 {realz0, imagz0, exponent, ES}, 926 {0, 0, 2, 0}, 927 HT_PICKMJ, HF_MANZZPWR, WINFRAC+BAILTEST, 928 (float)-2.5, (float)1.5, (float)-1.5, (float)1.5, 929 0, FPJULZTOZPLUSZPWR, NOFRACTAL, NOFRACTAL, XAXIS_NOPARM, 930 floatZtozPluszpwrFractal, othermandelfp_per_pixel, MandelfpSetup, 931 StandardFractal, 932 STDBAILOUT 933 }, 934 935 { 936 "julzzpwr", 937 {realparm, imagparm, exponent, ES}, 938 {-0.3, 0.3, 2, 0}, 939 HT_PICKMJ, HF_JULZZPWR, WINFRAC+OKJB+BAILTEST, 940 (float)-2.0, (float)2.0, (float)-1.5, (float)1.5, 941 0, NOFRACTAL, FPMANZTOZPLUSZPWR, NOFRACTAL, NOSYM, 942 floatZtozPluszpwrFractal, otherjuliafp_per_pixel, JuliafpSetup, 943 StandardFractal, 944 STDBAILOUT 945 }, 946 947 { 948 t_manfnplusexp+1, 949 {realz0, imagz0, ES, ES}, 950 {0, 0, 0, 0}, 951 HT_PICKMJ, HF_MANDFNPLUSEXP, TRIG1+WINFRAC+BAILTEST, 952 (float)-8.0, (float)8.0, (float)-6.0, (float)6.0, 953 16, LJULTRIGPLUSEXP, NOFRACTAL, FPMANTRIGPLUSEXP, XAXIS_NOPARM, 954 LongTrigPlusExponentFractal, long_mandel_per_pixel, MandellongSetup, 955 StandardFractal, 956 STDBAILOUT 957 }, 958 959 { 960 t_julfnplusexp+1, 961 {realparm, imagparm, ES, ES}, 962 {0, 0, 0, 0}, 963 HT_PICKMJ, HF_JULFNPLUSEXP, TRIG1+WINFRAC+OKJB+BAILTEST, 964 (float)-4.0, (float)4.0, (float)-3.0, (float)3.0, 965 16, NOFRACTAL, LMANTRIGPLUSEXP,FPJULTRIGPLUSEXP, NOSYM, 966 LongTrigPlusExponentFractal, long_julia_per_pixel, JulialongSetup, 967 StandardFractal, 968 STDBAILOUT 969 }, 970 971 { 972 t_manfnplusexp, 973 {realz0, imagz0, ES, ES}, 974 {0, 0, 0, 0}, 975 HT_PICKMJ, HF_MANDFNPLUSEXP, TRIG1+WINFRAC+BAILTEST, 976 (float)-8.0, (float)8.0, (float)-6.0, (float)6.0, 977 0, FPJULTRIGPLUSEXP, NOFRACTAL, LMANTRIGPLUSEXP, XAXIS_NOPARM, 978 FloatTrigPlusExponentFractal, othermandelfp_per_pixel, MandelfpSetup, 979 StandardFractal, 980 STDBAILOUT 981 }, 982 983 { 984 t_julfnplusexp, 985 {realparm, imagparm, ES, ES}, 986 {0, 0, 0, 0}, 987 HT_PICKMJ, HF_JULFNPLUSEXP, TRIG1+WINFRAC+OKJB+BAILTEST, 988 (float)-4.0, (float)4.0, (float)-3.0, (float)3.0, 989 0, NOFRACTAL, FPMANTRIGPLUSEXP, LJULTRIGPLUSEXP, NOSYM, 990 FloatTrigPlusExponentFractal, otherjuliafp_per_pixel, JuliafpSetup, 991 StandardFractal, 992 STDBAILOUT 993 }, 994 995 { 996 t_popcorn, 997 {step_x, step_y, constant_x, constant_y}, 998 {0.05, 0, 3.00, 0}, 999 HT_POPCORN, HF_POPCORN, NOGUESS+NOTRACE+WINFRAC+TRIG4, 1000 (float)-3.0, (float)3.0, (float)-2.25, (float)2.25, 1001 0, NOFRACTAL, NOFRACTAL, LPOPCORN, NOPLOT, 1002 PopcornFractalFn, otherjuliafp_per_pixel, JuliafpSetup, popcorn, 1003 STDBAILOUT 1004 }, 1005 1006 { 1007 t_popcorn+1, 1008 {step_x, step_y, constant_x, constant_y}, 1009 {0.05, 0, 3.00, 0}, 1010 HT_POPCORN, HF_POPCORN, NOGUESS+NOTRACE+WINFRAC+TRIG4, 1011 (float)-3.0, (float)3.0, (float)-2.25, (float)2.25, 1012 16, NOFRACTAL, NOFRACTAL, FPPOPCORN, NOPLOT, 1013 LPopcornFractalFn, long_julia_per_pixel, JulialongSetup, popcorn, 1014 STDBAILOUT 1015 }, 1016 1017 { 1018 t_lorenz, 1019 {timestep, A, B, C}, 1020 {.02, 5, 15, 1}, 1021 HT_LORENZ, HF_LORENZ, NOGUESS+NOTRACE+INFCALC+WINFRAC, 1022 (float)-15.0, (float)15.0, (float)0.0, (float)30.0, 1023 0, NOFRACTAL, NOFRACTAL, LLORENZ, NOSYM, 1024 (VF)lorenz3dfloatorbit, NULL, orbit3dfloatsetup, orbit2dfloat, 1025 NOBAILOUT 1026 }, 1027 1028 { 1029 t_lorenz+1, 1030 {timestep, A, B, C}, 1031 {.02, 5, 15, 1}, 1032 HT_LORENZ, HF_LORENZ, NOGUESS+NOTRACE+INFCALC+WINFRAC, 1033 (float)-15.0, (float)15.0, (float)0.0, (float)30.0, 1034 16, NOFRACTAL, NOFRACTAL, FPLORENZ, NOSYM, 1035 (VF)lorenz3dlongorbit, NULL, orbit3dlongsetup, orbit2dlong, 1036 NOBAILOUT 1037 }, 1038 1039 { 1040 t_lorenz3d+1, 1041 {timestep, A, B, C}, 1042 {.02, 5, 15, 1}, 1043 HT_LORENZ, HF_LORENZ, NOGUESS+NOTRACE+NORESUME+WINFRAC+PARMS3D+INFCALC, 1044 (float)-30.0, (float)30.0, (float)-30.0, (float)30.0, 1045 16, NOFRACTAL, NOFRACTAL, FPLORENZ3D, NOSYM, 1046 (VF)lorenz3dlongorbit, NULL, orbit3dlongsetup, orbit3dlong, 1047 NOBAILOUT 1048 }, 1049 1050 { 1051 t_newton+1, 1052 {newtdegree, ES, ES, ES}, 1053 {3, 0, 0, 0}, 1054 HT_NEWT, HF_NEWT, WINFRAC, 1055 (float)-2.0, (float)2.0, (float)-1.5, (float)1.5, 1056 0, NOFRACTAL, NOFRACTAL, NEWTON, XAXIS, 1057 MPCNewtonFractal, MPCjulia_per_pixel, NewtonSetup, StandardFractal, 1058 NOBAILOUT 1059 }, 1060 1061 { 1062 t_newtbasin+1, 1063 {newtdegree, stripes, ES, ES}, 1064 {3, 0, 0, 0}, 1065 HT_NEWTBAS, HF_NEWTBAS, WINFRAC, 1066 (float)-2.0, (float)2.0, (float)-1.5, (float)1.5, 1067 0, NOFRACTAL, NOFRACTAL, NEWTBASIN, NOSYM, 1068 MPCNewtonFractal, MPCjulia_per_pixel, NewtonSetup, StandardFractal, 1069 NOBAILOUT 1070 }, 1071 1072 { 1073 "complexnewton", 1074 {realdegree, imagdegree, realroot, imagroot}, 1075 {3, 0, 1, 0}, 1076 HT_NEWTCMPLX, HF_COMPLEXNEWT, WINFRAC, 1077 (float)-2.0, (float)2.0, (float)-1.5, (float)1.5, 1078 0, NOFRACTAL, NOFRACTAL, NOFRACTAL, NOSYM, 1079 ComplexNewton, otherjuliafp_per_pixel, ComplexNewtonSetup, 1080 StandardFractal, 1081 NOBAILOUT 1082 }, 1083 1084 { 1085 "complexbasin", 1086 {realdegree, imagdegree, realroot, imagroot}, 1087 {3, 0, 1, 0}, 1088 HT_NEWTCMPLX, HF_COMPLEXNEWT, WINFRAC, 1089 (float)-2.0, (float)2.0, (float)-1.5, (float)1.5, 1090 0, NOFRACTAL, NOFRACTAL, NOFRACTAL, NOSYM, 1091 ComplexBasin, otherjuliafp_per_pixel, ComplexNewtonSetup, 1092 StandardFractal, 1093 NOBAILOUT 1094 }, 1095 1096 { 1097 "cmplxmarksmand", 1098 {realz0, imagz0, exponent, imexponent}, 1099 {0, 0, 1, 0}, 1100 HT_MARKS, HF_CMPLXMARKSMAND, WINFRAC+BAILTEST, 1101 (float)-2.0, (float)2.0, (float)-1.5, (float)1.5, 1102 0, COMPLEXMARKSJUL, NOFRACTAL, NOFRACTAL, NOSYM, 1103 MarksCplxMand, MarksCplxMandperp, MandelfpSetup, StandardFractal, 1104 STDBAILOUT 1105 }, 1106 1107 { 1108 "cmplxmarksjul", 1109 {realparm, imagparm, exponent, imexponent}, 1110 {0.3, 0.6, 1, 0}, 1111 HT_MARKS, HF_CMPLXMARKSJUL, WINFRAC+BAILTEST, 1112 (float)-2.0, (float)2.0, (float)-1.5, (float)1.5, 1113 0, NOFRACTAL, COMPLEXMARKSMAND, NOFRACTAL, NOSYM, 1114 MarksCplxMand, juliafp_per_pixel, JuliafpSetup, StandardFractal, 1115 STDBAILOUT 1116 }, 1117 1118 { 1119 t_formula+1, 1120 {p1real, p1imag, p2real, p2imag}, 1121 {0, 0, 0, 0}, 1122 HT_FORMULA, -2, WINFRAC+MORE, 1123 (float)-2.0, (float)2.0, (float)-1.5, (float)1.5, 1124 1, NOFRACTAL, NOFRACTAL, FFORMULA, SETUP_SYM, 1125 Formula, form_per_pixel, intFormulaSetup, StandardFractal, 1126 0 1127 }, 1128 1129 { 1130 t_formula, 1131 {p1real, p1imag, p2real, p2imag}, 1132 {0, 0, 0, 0}, 1133 HT_FORMULA, -2, WINFRAC+MORE, 1134 (float)-2.0, (float)2.0, (float)-1.5, (float)1.5, 1135 0, NOFRACTAL, NOFRACTAL, FORMULA, SETUP_SYM, 1136 Formula, form_per_pixel, fpFormulaSetup, StandardFractal, 1137 0 1138 }, 1139 1140 { 1141 t_sierpinski, 1142 {ES, ES, ES, ES}, 1143 {0, 0, 0, 0}, 1144 HT_SIER, HF_SIER, WINFRAC, 1145 (float)-4/3, (float)96/45, (float)-0.9, (float)1.7, 1146 0, NOFRACTAL, NOFRACTAL, SIERPINSKI, NOSYM, 1147 SierpinskiFPFractal, otherjuliafp_per_pixel, SierpinskiFPSetup, 1148 StandardFractal, 1149 127 1150 }, 1151 1152 { 1153 t_lambda, 1154 {realparm, imagparm, ES, ES}, 1155 {0.85, 0.6, 0, 0}, 1156 HT_LAMBDA, HF_LAMBDA, WINFRAC+OKJB+BAILTEST, 1157 (float)-2.0, (float)2.0, (float)-1.5, (float)1.5, 1158 0, NOFRACTAL, MANDELLAMBDAFP, LAMBDA, NOSYM, 1159 LambdaFPFractal, juliafp_per_pixel, JuliafpSetup, StandardFractal, 1160 STDBAILOUT 1161 }, 1162 1163 { 1164 t_barnsleym1, 1165 {realz0, imagz0, ES, ES}, 1166 {0, 0, 0, 0}, 1167 HT_BARNS, HF_BARNSM1, WINFRAC+BAILTEST, 1168 (float)-2.0, (float)2.0, (float)-1.5, (float)1.5, 1169 0, BARNSLEYJ1FP,NOFRACTAL, BARNSLEYM1, XYAXIS_NOPARM, 1170 Barnsley1FPFractal, othermandelfp_per_pixel, MandelfpSetup, 1171 StandardFractal, 1172 STDBAILOUT 1173 }, 1174 1175 { 1176 t_barnsleyj1, 1177 {realparm, imagparm, ES, ES}, 1178 {0.6, 1.1, 0, 0}, 1179 HT_BARNS, HF_BARNSJ1, WINFRAC+OKJB+BAILTEST, 1180 (float)-2.0, (float)2.0, (float)-1.5, (float)1.5, 1181 0, NOFRACTAL, BARNSLEYM1FP, BARNSLEYJ1, ORIGIN, 1182 Barnsley1FPFractal, otherjuliafp_per_pixel, JuliafpSetup, 1183 StandardFractal, 1184 STDBAILOUT 1185 }, 1186 1187 { 1188 t_barnsleym2, 1189 {realz0, imagz0, ES, ES}, 1190 {0, 0, 0, 0}, 1191 HT_BARNS, HF_BARNSM2, WINFRAC+BAILTEST, 1192 (float)-2.0, (float)2.0, (float)-1.5, (float)1.5, 1193 0, BARNSLEYJ2FP,NOFRACTAL, BARNSLEYM2, YAXIS_NOPARM, 1194 Barnsley2FPFractal, othermandelfp_per_pixel, MandelfpSetup, 1195 StandardFractal, 1196 STDBAILOUT 1197 }, 1198 1199 { 1200 t_barnsleyj2, 1201 {realparm, imagparm, ES, ES}, 1202 {0.6, 1.1, 0, 0}, 1203 HT_BARNS, HF_BARNSJ2, WINFRAC+OKJB+BAILTEST, 1204 (float)-2.0, (float)2.0, (float)-1.5, (float)1.5, 1205 0, NOFRACTAL, BARNSLEYM2FP, BARNSLEYJ2, ORIGIN, 1206 Barnsley2FPFractal, otherjuliafp_per_pixel, JuliafpSetup, 1207 StandardFractal, 1208 STDBAILOUT 1209 }, 1210 1211 { 1212 t_barnsleym3, 1213 {realz0, imagz0, ES, ES}, 1214 {0, 0, 0, 0}, 1215 HT_BARNS, HF_BARNSM3, WINFRAC+BAILTEST, 1216 (float)-2.0, (float)2.0, (float)-1.5, (float)1.5, 1217 0, BARNSLEYJ3FP, NOFRACTAL, BARNSLEYM3, XAXIS_NOPARM, 1218 Barnsley3FPFractal, othermandelfp_per_pixel, MandelfpSetup, 1219 StandardFractal, 1220 STDBAILOUT 1221 }, 1222 1223 { 1224 t_barnsleyj3, 1225 {realparm, imagparm, ES, ES}, 1226 {0.6, 1.1, 0, 0}, 1227 HT_BARNS, HF_BARNSJ3, WINFRAC+OKJB+BAILTEST, 1228 (float)-2.0, (float)2.0, (float)-1.5, (float)1.5, 1229 0, NOFRACTAL, BARNSLEYM3FP, BARNSLEYJ3, NOSYM, 1230 Barnsley3FPFractal, otherjuliafp_per_pixel, JuliafpSetup, 1231 StandardFractal, 1232 STDBAILOUT 1233 }, 1234 1235 { 1236 t_mandellambda, 1237 {realz0, imagz0, ES, ES}, 1238 {0, 0, 0, 0}, 1239 HT_MLAMBDA, HF_MLAMBDA, WINFRAC+BAILTEST, 1240 (float)-3.0, (float)5.0, (float)-3.0, (float)3.0, 1241 0, LAMBDAFP, NOFRACTAL, MANDELLAMBDA, XAXIS_NOPARM, 1242 LambdaFPFractal, mandelfp_per_pixel, MandelfpSetup, StandardFractal, 1243 STDBAILOUT 1244 }, 1245 1246 { 1247 t_julibrot+1, 1248 {ES, ES, ES, ES}, 1249 {0, 0, 0, 0}, 1250 HT_JULIBROT, -1, NOGUESS+NOTRACE+NOROTATE+NORESUME+WINFRAC, 1251 (float)-2.0, (float)2.0, (float)-1.5, (float)1.5, 1252 1, NOFRACTAL, NOFRACTAL, JULIBROTFP, NOSYM, 1253 JuliaFractal, jb_per_pixel, JulibrotSetup, Std4dFractal, 1254 STDBAILOUT 1255 }, 1256 1257 { 1258 t_lorenz3d, 1259 {timestep, A, B, C}, 1260 {.02, 5, 15, 1}, 1261 HT_LORENZ, HF_LORENZ, NOGUESS+NOTRACE+NORESUME+WINFRAC+PARMS3D+INFCALC, 1262 (float)-30.0, (float)30.0, (float)-30.0, (float)30.0, 1263 0, NOFRACTAL, NOFRACTAL, LLORENZ3D, NOSYM, 1264 (VF)lorenz3dfloatorbit, NULL, orbit3dfloatsetup, orbit3dfloat, 1265 NOBAILOUT 1266 }, 1267 1268 { 1269 t_rossler3d+1, 1270 {timestep, A, B, C}, 1271 {.04, .2, .2, 5.7}, 1272 HT_ROSS, HF_ROSS, NOGUESS+NOTRACE+NORESUME+WINFRAC+PARMS3D+INFCALC, 1273 (float)-30.0, (float)30.0, (float)-20.0, (float)40.0, 1274 16, NOFRACTAL, NOFRACTAL, FPROSSLER, NOSYM, 1275 (VF)rosslerlongorbit, NULL, orbit3dlongsetup, orbit3dlong, 1276 NOBAILOUT 1277 }, 1278 1279 { 1280 t_rossler3d, 1281 {timestep, A, B, C}, 1282 {.04, .2, .2, 5.7}, 1283 HT_ROSS, HF_ROSS, NOGUESS+NOTRACE+NORESUME+WINFRAC+PARMS3D+INFCALC, 1284 (float)-30.0, (float)30.0, (float)-20.0, (float)40.0, 1285 0, NOFRACTAL, NOFRACTAL, LROSSLER, NOSYM, 1286 (VF)rosslerfloatorbit, NULL, orbit3dfloatsetup, orbit3dfloat, 1287 NOBAILOUT 1288 }, 1289 1290 { 1291 t_henon+1, 1292 {A, B, ES, ES}, 1293 {1.4, .3, 0, 0}, 1294 HT_HENON, HF_HENON, NOGUESS+NOTRACE+INFCALC+WINFRAC, 1295 (float)-1.4, (float)1.4, (float)-.5, (float).5, 1296 16, NOFRACTAL, NOFRACTAL, FPHENON, NOSYM, 1297 (VF)henonlongorbit, NULL, orbit3dlongsetup, orbit2dlong, 1298 NOBAILOUT 1299 }, 1300 1301 { 1302 t_henon, 1303 {A, B, ES, ES}, 1304 {1.4, .3, 0, 0}, 1305 HT_HENON, HF_HENON, NOGUESS+NOTRACE+INFCALC+WINFRAC, 1306 (float)-1.4, (float)1.4, (float)-.5, (float).5, 1307 0, NOFRACTAL, NOFRACTAL, LHENON, NOSYM, 1308 (VF)henonfloatorbit, NULL, orbit3dfloatsetup, orbit2dfloat, 1309 NOBAILOUT 1310 }, 1311 1312 { 1313 "pickover", 1314 {A, B, C, D}, 1315 {2.24, .43, -.65, -2.43}, 1316 HT_PICK, HF_PICKOVER, NOGUESS+NOTRACE+NORESUME+WINFRAC+PARMS3D, 1317 (float)-8/3, (float)8/3, (float)-2, (float)2, 1318 0, NOFRACTAL, NOFRACTAL, NOFRACTAL, NOSYM, 1319 (VF)pickoverfloatorbit, NULL, orbit3dfloatsetup, orbit3dfloat, 1320 NOBAILOUT 1321 }, 1322 1323 { 1324 "gingerbreadman", 1325 {initx, inity, ES, ES}, 1326 {-.1, 0, 0, 0}, 1327 HT_GINGER, HF_GINGER, NOGUESS+NOTRACE+INFCALC+WINFRAC, 1328 (float)-4.5, (float)8.5, (float)-4.5, (float)8.5, 1329 0, NOFRACTAL, NOFRACTAL, NOFRACTAL, NOSYM, 1330 (VF)gingerbreadfloatorbit, NULL, orbit3dfloatsetup, orbit2dfloat, 1331 NOBAILOUT 1332 }, 1333 1334 { 1335 "diffusion", 1336 {"+Border size", 1337 "+Type (0=Central,1=Falling,2=Square Cavity)", 1338 "+Color change rate (0=Random)", 1339 ES 1340 }, 1341 {10, 0, 0, 0}, 1342 HT_DIFFUS, HF_DIFFUS, NOZOOM+NOGUESS+NOTRACE+WINFRAC, 1343 (float)-2.0, (float)2.0, (float)-1.5, (float)1.5, 1344 0, NOFRACTAL, NOFRACTAL, NOFRACTAL, NOSYM, 1345 NULL, NULL, StandaloneSetup, diffusion, 1346 NOBAILOUT 1347 }, 1348 1349 { 1350 t_unity, 1351 {ES, ES, ES, ES}, 1352 {0, 0, 0, 0}, 1353 HT_UNITY, HF_UNITY, WINFRAC, 1354 (float)-2.0, (float)2.0, (float)-1.5, (float)1.5, 1355 0, NOFRACTAL, NOFRACTAL, UNITY, XYAXIS, 1356 UnityfpFractal, otherjuliafp_per_pixel, StandardSetup, StandardFractal, 1357 NOBAILOUT 1358 }, 1359 1360 { 1361 t_spider, 1362 {realz0, imagz0, ES, ES}, 1363 {0, 0, 0, 0}, 1364 HT_SCOTSKIN, HF_SPIDER, WINFRAC+BAILTEST, 1365 (float)-2.5, (float)1.5, (float)-1.5, (float)1.5, 1366 0, NOFRACTAL, NOFRACTAL, SPIDER, XAXIS_NOPARM, 1367 SpiderfpFractal, mandelfp_per_pixel, MandelfpSetup, StandardFractal, 1368 STDBAILOUT 1369 }, 1370 1371 { 1372 t_spider+1, 1373 {realz0, imagz0, ES, ES}, 1374 {0, 0, 0, 0}, 1375 HT_SCOTSKIN, HF_SPIDER, WINFRAC+BAILTEST, 1376 (float)-2.5, (float)1.5, (float)-1.5, (float)1.5, 1377 1, NOFRACTAL, NOFRACTAL, SPIDERFP, XAXIS_NOPARM, 1378 SpiderFractal, mandel_per_pixel, MandellongSetup,StandardFractal, 1379 STDBAILOUT 1380 }, 1381 1382 { 1383 "tetrate", 1384 {realz0, imagz0, ES, ES}, 1385 {0, 0, 0, 0}, 1386 HT_SCOTSKIN, HF_TETRATE, WINFRAC+BAILTEST, 1387 (float)-2.0, (float)2.0, (float)-1.5, (float)1.5, 1388 0, NOFRACTAL, NOFRACTAL, NOFRACTAL, XAXIS_NOIMAG, 1389 TetratefpFractal, othermandelfp_per_pixel, MandelfpSetup, 1390 StandardFractal, 1391 STDBAILOUT 1392 }, 1393 1394 { 1395 "magnet1m", 1396 {realz0, imagz0, ES, ES}, 1397 {0, 0, 0, 0}, 1398 HT_MAGNET, HF_MAGM1, WINFRAC, 1399 (float)-4.0, (float)4.0, (float)-3.0, (float)3.0, 1400 0, MAGNET1J,NOFRACTAL,NOFRACTAL, XAXIS_NOPARM, 1401 Magnet1Fractal, mandelfp_per_pixel, MandelfpSetup, StandardFractal, 1402 100 1403 }, 1404 1405 { 1406 "magnet1j", 1407 {realparm, imagparm, ES, ES}, 1408 {0, 0, 0, 0}, 1409 HT_MAGNET, HF_MAGJ1, WINFRAC, 1410 (float)-8.0, (float)8.0, (float)-6.0, (float)6.0, 1411 0, NOFRACTAL,MAGNET1M,NOFRACTAL, XAXIS_NOIMAG, 1412 Magnet1Fractal, juliafp_per_pixel, JuliafpSetup, StandardFractal, 1413 100 1414 }, 1415 1416 { 1417 "magnet2m", 1418 {realz0, imagz0, ES, ES}, 1419 {0, 0, 0, 0}, 1420 HT_MAGNET, HF_MAGM2, WINFRAC, 1421 (float)-1.5, (float)3.7, (float)-1.95, (float)1.95, 1422 0, MAGNET2J, NOFRACTAL, NOFRACTAL, XAXIS_NOPARM, 1423 Magnet2Fractal, mandelfp_per_pixel, MandelfpSetup, StandardFractal, 1424 100 1425 }, 1426 1427 { 1428 "magnet2j", 1429 {realparm, imagparm, ES, ES}, 1430 {0, 0, 0, 0}, 1431 HT_MAGNET, HF_MAGJ2, WINFRAC, 1432 (float)-8.0, (float)8.0, (float)-6.0, (float)6.0, 1433 0, NOFRACTAL, MAGNET2M, NOFRACTAL, XAXIS_NOIMAG, 1434 Magnet2Fractal, juliafp_per_pixel, JuliafpSetup, StandardFractal, 1435 100 1436 }, 1437 1438 { 1439 t_bifurcation+1, 1440 {filt, seed, ES, ES}, 1441 {1000.0, 0.66, 0, 0}, 1442 HT_BIF, HF_BIFURCATION, TRIG1+NOGUESS+NOTRACE+NOROTATE+WINFRAC, 1443 (float)1.9, (float)3.0, (float)0.0, (float)1.34, 1444 1, NOFRACTAL, NOFRACTAL, BIFURCATION, NOSYM, 1445 LongBifurcVerhulstTrig, NULL, StandaloneSetup, Bifurcation, 1446 NOBAILOUT 1447 }, 1448 1449 { 1450 t_biflambda+1, 1451 {filt, seed, ES, ES}, 1452 {1000.0, 0.66, 0, 0}, 1453 HT_BIF, HF_BIFLAMBDA, TRIG1+NOGUESS+NOTRACE+NOROTATE+WINFRAC, 1454 (float)-2.0, (float)4.0, (float)-1.0, (float)2.0, 1455 1, NOFRACTAL, NOFRACTAL, BIFLAMBDA, NOSYM, 1456 LongBifurcLambdaTrig, NULL, StandaloneSetup, Bifurcation, 1457 NOBAILOUT 1458 }, 1459 1460 { 1461 t_biflambda, 1462 {filt, seed, ES, ES}, 1463 {1000.0, 0.66, 0, 0}, 1464 HT_BIF, HF_BIFLAMBDA, TRIG1+NOGUESS+NOTRACE+NOROTATE+WINFRAC, 1465 (float)-2.0, (float)4.0, (float)-1.0, (float)2.0, 1466 0, NOFRACTAL, NOFRACTAL, LBIFLAMBDA, NOSYM, 1467 BifurcLambdaTrig, NULL, StandaloneSetup, Bifurcation, 1468 NOBAILOUT 1469 }, 1470 1471 { 1472 t_bifplussinpi, 1473 {filt, seed, ES, ES}, 1474 {1000.0, 0.66, 0, 0}, 1475 HT_BIF, HF_BIFPLUSSINPI, TRIG1+NOGUESS+NOTRACE+NOROTATE+WINFRAC, 1476 (float)0.275, (float)1.45, (float)0.0, (float)2.0, 1477 0, NOFRACTAL, NOFRACTAL, LBIFADSINPI, NOSYM, 1478 BifurcAddTrigPi, NULL, StandaloneSetup, Bifurcation, 1479 NOBAILOUT 1480 }, 1481 1482 { 1483 t_bifeqsinpi, 1484 {filt, seed, ES, ES}, 1485 {1000.0, 0.66, 0, 0}, 1486 HT_BIF, HF_BIFEQSINPI, TRIG1+NOGUESS+NOTRACE+NOROTATE+WINFRAC, 1487 (float)-2.5, (float)2.5, (float)-3.5, (float)3.5, 1488 0, NOFRACTAL, NOFRACTAL, LBIFEQSINPI, NOSYM, 1489 BifurcSetTrigPi, NULL, StandaloneSetup, Bifurcation, 1490 NOBAILOUT 1491 }, 1492 1493 { 1494 t_popcornjul, 1495 {step_x, step_y, constant_x, constant_y}, 1496 {0.05, 0, 3.00, 0}, 1497 HT_POPCORN, HF_POPCJUL, WINFRAC+TRIG4, 1498 (float)-3.0, (float)3.0, (float)-2.25, (float)2.25, 1499 0, NOFRACTAL, NOFRACTAL, LPOPCORNJUL, NOSYM, 1500 PopcornFractalFn, otherjuliafp_per_pixel, JuliafpSetup,StandardFractal, 1501 STDBAILOUT 1502 }, 1503 1504 { 1505 t_popcornjul+1, 1506 {step_x, step_y, constant_x, constant_y}, 1507 {0.05, 0, 3.0, 0}, 1508 HT_POPCORN, HF_POPCJUL, WINFRAC+TRIG4, 1509 (float)-3.0, (float)3.0, (float)-2.25, (float)2.25, 1510 16, NOFRACTAL, NOFRACTAL, FPPOPCORNJUL, NOSYM, 1511 LPopcornFractalFn, long_julia_per_pixel, JulialongSetup, StandardFractal, 1512 STDBAILOUT 1513 }, 1514 1515 { 1516 "lsystem", 1517 {"+Order", ES, ES, ES}, 1518 {2, 0, 0, 0}, 1519 HT_LSYS, -3, NOZOOM+NORESUME+NOGUESS+NOTRACE+WINFRAC, 1520 (float)-1.0, (float)1.0, (float)-1.0, (float)1.0, 1521 1, NOFRACTAL, NOFRACTAL, NOFRACTAL, NOSYM, 1522 NULL, NULL, StandaloneSetup, Lsystem, 1523 NOBAILOUT 1524 }, 1525 1526 { 1527 t_manowarj, 1528 {realparm, imagparm, ES, ES}, 1529 {0, 0, 0, 0}, 1530 HT_SCOTSKIN, HF_MANOWARJ, WINFRAC+OKJB+BAILTEST, 1531 (float)-2.5, (float)1.5, (float)-1.5, (float)1.5, 1532 0, NOFRACTAL, MANOWARFP, MANOWARJ, NOSYM, 1533 ManOWarfpFractal, juliafp_per_pixel, JuliafpSetup, StandardFractal, 1534 STDBAILOUT 1535 }, 1536 1537 { 1538 t_manowarj+1, 1539 {realparm, imagparm, ES, ES}, 1540 {0, 0, 0, 0}, 1541 HT_SCOTSKIN, HF_MANOWARJ, WINFRAC+OKJB+BAILTEST, 1542 (float)-2.5, (float)1.5, (float)-1.5, (float)1.5, 1543 1, NOFRACTAL, MANOWAR, MANOWARJFP, NOSYM, 1544 ManOWarFractal, julia_per_pixel, JulialongSetup, StandardFractal, 1545 STDBAILOUT 1546 }, 1547 1548 { 1549 t_fn_z_plusfn_pix_, 1550 {realz0, imagz0, recoeftrg2, imcoeftrg2}, 1551 {0, 0, 1, 0}, 1552 HT_SCOTSKIN, HF_FNPLUSFNPIX, TRIG2+WINFRAC+BAILTEST, 1553 (float)-3.6, (float)3.6, (float)-2.7, (float)2.7, 1554 0, NOFRACTAL, NOFRACTAL, FNPLUSFNPIXLONG, NOSYM, 1555 Richard8fpFractal, otherrichard8fp_per_pixel, MandelfpSetup, 1556 StandardFractal, 1557 LTRIGBAILOUT 1558 }, 1559 1560 { 1561 t_fn_z_plusfn_pix_+1, 1562 {realz0, imagz0, recoeftrg2, imcoeftrg2}, 1563 {0, 0, 1, 0}, 1564 HT_SCOTSKIN, HF_FNPLUSFNPIX, TRIG2+WINFRAC+BAILTEST, 1565 (float)-3.6, (float)3.6, (float)-2.7, (float)2.7, 1566 1, NOFRACTAL, NOFRACTAL, FNPLUSFNPIXFP, NOSYM, 1567 Richard8Fractal, long_richard8_per_pixel, MandellongSetup, 1568 StandardFractal, 1569 LTRIGBAILOUT 1570 }, 1571 1572 { 1573 t_marksmandelpwr, 1574 {realz0, imagz0, ES, ES}, 1575 {0, 0, 0, 0}, 1576 HT_MARKS, HF_MARKSMANDPWR, TRIG1+WINFRAC+BAILTEST, 1577 (float)-2.5, (float)1.5, (float)-1.5, (float)1.5, 1578 0, NOFRACTAL, NOFRACTAL, MARKSMANDELPWR, XAXIS_NOPARM, 1579 MarksMandelPwrfpFractal, marks_mandelpwrfp_per_pixel, MandelfpSetup, 1580 StandardFractal, 1581 STDBAILOUT 1582 }, 1583 1584 { 1585 t_marksmandelpwr+1, 1586 {realz0, imagz0, ES, ES}, 1587 {0, 0, 0, 0}, 1588 HT_MARKS, HF_MARKSMANDPWR, TRIG1+WINFRAC+BAILTEST, 1589 (float)-2.5, (float)1.5, (float)-1.5, (float)1.5, 1590 1, NOFRACTAL, NOFRACTAL, MARKSMANDELPWRFP, XAXIS_NOPARM, 1591 MarksMandelPwrFractal, marks_mandelpwr_per_pixel, MandellongSetup, 1592 StandardFractal, 1593 STDBAILOUT 1594 }, 1595 1596 { 1597 t_tims_error, 1598 {realz0, imagz0, ES, ES}, 1599 {0, 0, 0, 0}, 1600 HT_MARKS, HF_TIMSERR, WINFRAC+TRIG1+BAILTEST, 1601 (float)-2.9, (float)4.3, (float)-2.7, (float)2.7, 1602 0, NOFRACTAL, NOFRACTAL, TIMSERROR, XAXIS_NOPARM, 1603 TimsErrorfpFractal, marks_mandelpwrfp_per_pixel, MandelfpSetup, 1604 StandardFractal, 1605 STDBAILOUT 1606 }, 1607 1608 { 1609 t_tims_error+1, 1610 {realz0, imagz0, ES, ES}, 1611 {0, 0, 0, 0}, 1612 HT_MARKS, HF_TIMSERR, WINFRAC+TRIG1+BAILTEST, 1613 (float)-2.9, (float)4.3, (float)-2.7, (float)2.7, 1614 1, NOFRACTAL, NOFRACTAL, TIMSERRORFP, XAXIS_NOPARM, 1615 TimsErrorFractal, marks_mandelpwr_per_pixel, MandellongSetup, 1616 StandardFractal, 1617 STDBAILOUT 1618 }, 1619 1620 { 1621 t_bifeqsinpi+1, 1622 {filt, seed, ES, ES}, 1623 {1000.0, 0.66, 0, 0}, 1624 HT_BIF, HF_BIFEQSINPI, TRIG1+NOGUESS+NOTRACE+NOROTATE+WINFRAC, 1625 (float)-2.5, (float)2.5, (float)-3.5, (float)3.5, 1626 1, NOFRACTAL, NOFRACTAL, BIFEQSINPI, NOSYM, 1627 LongBifurcSetTrigPi, NULL, StandaloneSetup, Bifurcation, 1628 NOBAILOUT 1629 }, 1630 1631 { 1632 t_bifplussinpi+1, 1633 {filt, seed, ES, ES}, 1634 {1000.0, 0.66, 0, 0}, 1635 HT_BIF, HF_BIFPLUSSINPI, TRIG1+NOGUESS+NOTRACE+NOROTATE+WINFRAC, 1636 (float)0.275, (float)1.45, (float)0.0, (float)2.0, 1637 1, NOFRACTAL, NOFRACTAL, BIFADSINPI, NOSYM, 1638 LongBifurcAddTrigPi, NULL, StandaloneSetup, Bifurcation, 1639 NOBAILOUT 1640 }, 1641 1642 { 1643 t_bifstewart, 1644 {filt, seed, ES, ES}, 1645 {1000.0, 0.66, 0, 0}, 1646 HT_BIF, HF_BIFSTEWART, TRIG1+NOGUESS+NOTRACE+NOROTATE+WINFRAC, 1647 (float)0.7, (float)2.0, (float)-1.1, (float)1.1, 1648 0, NOFRACTAL, NOFRACTAL, LBIFSTEWART, NOSYM, 1649 BifurcStewartTrig, NULL, StandaloneSetup, Bifurcation, 1650 NOBAILOUT 1651 }, 1652 1653 { 1654 t_bifstewart+1, 1655 {filt, seed, ES, ES}, 1656 {1000.0, 0.66, 0, 0}, 1657 HT_BIF, HF_BIFSTEWART, TRIG1+NOGUESS+NOTRACE+NOROTATE+WINFRAC, 1658 (float)0.7, (float)2.0, (float)-1.1, (float)1.1, 1659 1, NOFRACTAL, NOFRACTAL, BIFSTEWART, NOSYM, 1660 LongBifurcStewartTrig, NULL, StandaloneSetup, Bifurcation, 1661 NOBAILOUT 1662 }, 1663 1664 { 1665 "hopalong", 1666 {A, B, C, ES}, 1667 {.4, 1, 0, 0}, 1668 HT_MARTIN, HF_HOPALONG, NOGUESS+NOTRACE+INFCALC+WINFRAC, 1669 (float)-2.0, (float)3.0, (float)-1.625, (float)2.625, 1670 0, NOFRACTAL, NOFRACTAL, NOFRACTAL, NOSYM, 1671 (VF)hopalong2dfloatorbit, NULL, orbit3dfloatsetup, orbit2dfloat, 1672 NOBAILOUT 1673 }, 1674 1675 { 1676 "circle", 1677 {"magnification", ES, ES, ES}, 1678 {200000L, 0, 0, 0}, 1679 HT_CIRCLE, HF_CIRCLE, WINFRAC, 1680 (float)-2.0, (float)2.0, (float)-1.5, (float)1.5, 1681 0, NOFRACTAL, NOFRACTAL, NOFRACTAL, XYAXIS, 1682 CirclefpFractal, juliafp_per_pixel, JuliafpSetup, StandardFractal, 1683 NOBAILOUT 1684 }, 1685 1686 { 1687 "martin", 1688 {A, ES, ES, ES}, 1689 {3.14, 0, 0, 0}, 1690 HT_MARTIN, HF_MARTIN, NOGUESS+NOTRACE+INFCALC+WINFRAC, 1691 (float)-32, (float)32, (float)-24, (float)24, 1692 0, NOFRACTAL, NOFRACTAL, NOFRACTAL, NOSYM, 1693 (VF)martin2dfloatorbit, NULL, orbit3dfloatsetup, orbit2dfloat, 1694 NOBAILOUT 1695 }, 1696 1697 { 1698 "lyapunov", 1699 {"+Order (integer)", "Population Seed", "+Filter Cycles", ES}, 1700 {0, 0.5, 0, 0}, 1701 HT_LYAPUNOV, HT_LYAPUNOV, WINFRAC, 1702 (float)-8.0, (float)8.0, (float)-6.0, (float)6.0, 1703 0, NOFRACTAL, NOFRACTAL, NOFRACTAL, NOSYM, 1704 BifurcLambda, NULL, lya_setup, lyapunov, 1705 NOBAILOUT 1706 }, 1707 1708 { 1709 "lorenz3d1", 1710 {timestep, A, B, C}, 1711 {.02, 5, 15, 1}, 1712 HT_LORENZ, HF_LORENZ3D1, 1713 NOGUESS+NOTRACE+NORESUME+WINFRAC+PARMS3D+INFCALC, 1714 (float)-30.0, (float)30.0, (float)-30.0, (float)30.0, 1715 0, NOFRACTAL, NOFRACTAL, NOFRACTAL, NOSYM, 1716 (VF)lorenz3d1floatorbit, NULL, orbit3dfloatsetup, orbit3dfloat, 1717 NOBAILOUT 1718 }, 1719 1720 { 1721 "lorenz3d3", 1722 {timestep, A, B, C}, 1723 {.02, 10, 28, 2.66}, 1724 HT_LORENZ, HF_LORENZ3D3, 1725 NOGUESS+NOTRACE+NORESUME+WINFRAC+PARMS3D+INFCALC, 1726 (float)-30.0, (float)30.0, (float)-30.0, (float)30.0, 1727 0, NOFRACTAL, NOFRACTAL, NOFRACTAL, NOSYM, 1728 (VF)lorenz3d3floatorbit, NULL, orbit3dfloatsetup, orbit3dfloat, 1729 NOBAILOUT 1730 }, 1731 1732 { 1733 "lorenz3d4", 1734 {timestep, A, B, C}, 1735 {.02, 10, 28, 2.66}, 1736 HT_LORENZ, HF_LORENZ3D4, 1737 NOGUESS+NOTRACE+NORESUME+WINFRAC+PARMS3D+INFCALC, 1738 (float)-30.0, (float)30.0, (float)-30.0, (float)30.0, 1739 0, NOFRACTAL, NOFRACTAL, NOFRACTAL, NOSYM, 1740 (VF)lorenz3d4floatorbit, NULL, orbit3dfloatsetup, orbit3dfloat, 1741 NOBAILOUT 1742 }, 1743 1744 { 1745 t_lambda_fnorfn_+1, 1746 {realparm, imagparm, shiftval, ES}, 1747 {1, 0.1, 1, 0}, 1748 HT_FNORFN, HF_LAMBDAFNFN, TRIG2+WINFRAC+BAILTEST, 1749 (float)-4.0, (float)4.0, (float)-3.0, (float)3.0, 1750 16, NOFRACTAL, LMANLAMFNFN, FPLAMBDAFNFN, ORIGIN, 1751 LambdaTrigOrTrigFractal, long_julia_per_pixel, LambdaTrigOrTrigSetup, 1752 StandardFractal, 1753 LTRIGBAILOUT 1754 }, 1755 1756 { 1757 t_lambda_fnorfn_, 1758 {realparm, imagparm, shiftval, ES}, 1759 {1, 0.1, 1, 0}, 1760 HT_FNORFN, HF_LAMBDAFNFN, TRIG2+WINFRAC+BAILTEST, 1761 (float)-4.0, (float)4.0, (float)-3.0, (float)3.0, 1762 0, NOFRACTAL, FPMANLAMFNFN, LLAMBDAFNFN, ORIGIN, 1763 LambdaTrigOrTrigfpFractal, otherjuliafp_per_pixel, 1764 LambdaTrigOrTrigSetup, StandardFractal, 1765 LTRIGBAILOUT 1766 }, 1767 1768 { 1769 t_julia_fnorfn_+1, 1770 {realparm, imagparm, shiftval, ES}, 1771 {0, 0, 8, 0}, 1772 HT_FNORFN, HF_JULIAFNFN, TRIG2+WINFRAC+BAILTEST, 1773 (float)-4.0, (float)4.0, (float)-3.0, (float)3.0, 1774 16, NOFRACTAL, LMANFNFN, FPJULFNFN, XAXIS, 1775 JuliaTrigOrTrigFractal, long_julia_per_pixel, JuliaTrigOrTrigSetup, 1776 StandardFractal, 1777 LTRIGBAILOUT 1778 }, 1779 1780 { 1781 t_julia_fnorfn_, 1782 {realparm, imagparm, shiftval, ES}, 1783 {0, 0, 8, 0}, 1784 HT_FNORFN, HF_JULIAFNFN, TRIG2+WINFRAC+BAILTEST, 1785 (float)-4.0, (float)4.0, (float)-3.0, (float)3.0, 1786 0, NOFRACTAL, FPMANFNFN, LJULFNFN, XAXIS, 1787 JuliaTrigOrTrigfpFractal, otherjuliafp_per_pixel, 1788 JuliaTrigOrTrigSetup, StandardFractal, 1789 LTRIGBAILOUT 1790 }, 1791 1792 { 1793 t_manlam_fnorfn_+1, 1794 {realz0, imagz0, shiftval, ES}, 1795 {0, 0, 10, 0}, 1796 HT_FNORFN, HF_MANLAMFNFN, TRIG2+WINFRAC+BAILTEST, 1797 (float)-4.0, (float)4.0, (float)-3.0, (float)3.0, 1798 16, LLAMBDAFNFN, NOFRACTAL, FPMANLAMFNFN, XAXIS_NOPARM, 1799 LambdaTrigOrTrigFractal, long_mandel_per_pixel, 1800 ManlamTrigOrTrigSetup, StandardFractal, 1801 LTRIGBAILOUT 1802 }, 1803 1804 { 1805 t_manlam_fnorfn_, 1806 {realz0, imagz0, shiftval, ES}, 1807 {0, 0, 10, 0}, 1808 HT_FNORFN, HF_MANLAMFNFN, TRIG2+WINFRAC+BAILTEST, 1809 (float)-4.0, (float)4.0, (float)-3.0, (float)3.0, 1810 0, FPLAMBDAFNFN, NOFRACTAL, LMANLAMFNFN, XAXIS_NOPARM, 1811 LambdaTrigOrTrigfpFractal, othermandelfp_per_pixel, 1812 ManlamTrigOrTrigSetup, StandardFractal, 1813 LTRIGBAILOUT 1814 }, 1815 1816 { 1817 t_mandel_fnorfn_+1, 1818 {realz0, imagz0, shiftval, ES}, 1819 {0, 0, 0.5, 0}, 1820 HT_FNORFN, HF_MANDELFNFN, TRIG2+WINFRAC+BAILTEST, 1821 (float)-4.0, (float)4.0, (float)-3.0, (float)3.0, 1822 16, LJULFNFN, NOFRACTAL, FPMANFNFN,XAXIS_NOPARM, 1823 JuliaTrigOrTrigFractal, long_mandel_per_pixel, 1824 MandelTrigOrTrigSetup, StandardFractal, 1825 LTRIGBAILOUT 1826 }, 1827 1828 { 1829 t_mandel_fnorfn_, 1830 {realz0, imagz0, shiftval, ES}, 1831 {0, 0, 0.5, 0}, 1832 HT_FNORFN, HF_MANDELFNFN, TRIG2+WINFRAC+BAILTEST, 1833 (float)-4.0, (float)4.0, (float)-3.0, (float)3.0, 1834 0, FPJULFNFN, NOFRACTAL, LMANFNFN,XAXIS_NOPARM, 1835 JuliaTrigOrTrigfpFractal, othermandelfp_per_pixel, 1836 MandelTrigOrTrigSetup, StandardFractal, 1837 LTRIGBAILOUT 1838 }, 1839 1840 { 1841 t_bifmay+1, 1842 {filt, seed, "Beta >= 2", ES}, 1843 {300.0, 0.9, 5, 0}, 1844 HT_BIF, HF_BIFMAY, NOGUESS+NOTRACE+NOROTATE+WINFRAC, 1845 (float)-3.5, (float)-0.9, (float)-0.5, (float)3.2, 1846 16, NOFRACTAL, NOFRACTAL, BIFMAY, NOSYM, 1847 LongBifurcMay, NULL, BifurcMaySetup, Bifurcation, 1848 NOBAILOUT 1849 }, 1850 1851 { 1852 t_bifmay, 1853 {filt, seed, "Beta >= 2", ES}, 1854 {300.0, 0.9, 5, 0}, 1855 HT_BIF, HF_BIFMAY, NOGUESS+NOTRACE+NOROTATE+WINFRAC, 1856 (float)-3.5, (float)-0.9, (float)-0.5, (float)3.2, 1857 0, NOFRACTAL, NOFRACTAL, LBIFMAY, NOSYM, 1858 BifurcMay, NULL, BifurcMaySetup, Bifurcation, 1859 NOBAILOUT 1860 }, 1861 1862 { 1863 t_halley+1, 1864 {order, real_relax, epsilon, imag_relax}, 1865 {6, 1.0, 0.0001, 0}, 1866 HT_HALLEY, HF_HALLEY, WINFRAC, 1867 (float)-2.0, (float)2.0, (float)-1.5, (float)1.5, 1868 0, NOFRACTAL, NOFRACTAL, HALLEY, XYAXIS, 1869 MPCHalleyFractal, MPCHalley_per_pixel, HalleySetup, StandardFractal, 1870 NOBAILOUT 1871 }, 1872 1873 { 1874 t_halley, 1875 {order, real_relax, epsilon, imag_relax}, 1876 {6, 1.0, 0.0001, 0}, 1877 HT_HALLEY, HF_HALLEY, WINFRAC, 1878 (float)-2.0, (float)2.0, (float)-1.5, (float)1.5, 1879 0, NOFRACTAL, NOFRACTAL, MPHALLEY, XYAXIS, 1880 HalleyFractal, Halley_per_pixel, HalleySetup, StandardFractal, 1881 NOBAILOUT 1882 }, 1883 1884 { 1885 "dynamic", 1886 {"+# of intervals (<0 = connect)", "time step (<0 = Euler)", A, B}, 1887 {50, .1, 1, 3}, 1888 HT_DYNAM, HF_DYNAM, NOGUESS+NOTRACE+WINFRAC+TRIG1, 1889 (float)-20.0, (float)20.0, (float)-20.0, (float)20.0, 1890 0, NOFRACTAL, NOFRACTAL, NOFRACTAL, NOSYM, 1891 (VF)dynamfloat, NULL, dynam2dfloatsetup, dynam2dfloat, 1892 NOBAILOUT 1893 }, 1894 1895 { 1896 "quat", 1897 {notused, notused, CJ, CK}, 1898 {0, 0, 0, 0}, 1899 HT_QUAT, HF_QUAT, WINFRAC+OKJB, 1900 (float)-2.0, (float)2.0, (float)-1.5, (float)1.5, 1901 0, QUATJULFP, NOFRACTAL, NOFRACTAL, XAXIS, 1902 QuaternionFPFractal, quaternionfp_per_pixel, MandelfpSetup, 1903 StandardFractal, 1904 LTRIGBAILOUT 1905 }, 1906 1907 { 1908 "quatjul", 1909 {C1, CI, CJ, CK}, 1910 {-.745, 0, .113, .05}, 1911 HT_QUAT, HF_QUATJ, WINFRAC+OKJB+MORE, 1912 (float)-2.0, (float)2.0, (float)-1.5, (float)1.5, 1913 0, NOFRACTAL, QUATFP, NOFRACTAL, ORIGIN, 1914 QuaternionFPFractal, quaternionjulfp_per_pixel, JuliafpSetup, 1915 StandardFractal, 1916 LTRIGBAILOUT 1917 }, 1918 1919 { 1920 "cellular", 1921 {cell_init, cell_rule, cell_type, cell_strt}, 1922 {11.0, 3311100320.0, 41.0, 0}, 1923 HT_CELLULAR, HF_CELLULAR, NOGUESS+NOTRACE+NOZOOM+WINFRAC, 1924 (float)-1.0, (float)1.0, (float)-1.0, (float)1.0, 1925 0, NOFRACTAL, NOFRACTAL, NOFRACTAL, NOSYM, 1926 NULL, NULL, CellularSetup, cellular, 1927 NOBAILOUT 1928 }, 1929 1930 { 1931 t_julibrot, 1932 {ES, ES, ES, ES}, 1933 {0, 0, 0, 0}, 1934 HT_JULIBROT, -1, NOGUESS+NOTRACE+NOROTATE+NORESUME+WINFRAC, 1935 (float)-2.0, (float)2.0, (float)-1.5, (float)1.5, 1936 0, NOFRACTAL, NOFRACTAL, JULIBROT, NOSYM, 1937 JuliafpFractal, jbfp_per_pixel, JulibrotSetup, Std4dfpFractal, 1938 STDBAILOUT 1939 }, 1940 1941 #ifdef RANDOM_RUN
1942 { 1943 t_julia_inverse+1, 1944 {realparm, imagparm, s_maxhits, randomruninterval}, 1945 {-0.11, 0.6557, 4, 1024}, 1946 HT_INVERSE, HF_INVERSE, NOGUESS+NOTRACE+INFCALC+NORESUME, 1947 (float)-2.0, (float)2.0, (float)-1.5, (float)1.5, 1948 24, NOFRACTAL, MANDEL, INVERSEJULIAFP, NOSYM, 1949 Linverse_julia_orbit, NULL, orbit3dlongsetup, inverse_julia_per_image, 1950 NOBAILOUT 1951 }, 1952 1953 { 1954 t_julia_inverse, 1955 {realparm, imagparm, s_maxhits, randomruninterval}, 1956 {-0.11, 0.6557, 4, 1024}, 1957 HT_INVERSE, HF_INVERSE, NOGUESS+NOTRACE+INFCALC+NORESUME, 1958 (float)-2.0, (float)2.0, (float)-1.5, (float)1.5, 1959 0, NOFRACTAL, MANDEL, INVERSEJULIA, NOSYM, 1960 Minverse_julia_orbit, NULL, orbit3dfloatsetup, inverse_julia_per_image, 1961 NOBAILOUT 1962 },
1963 #else 1964 { 1965 t_julia_inverse+1, 1966 {realparm, imagparm, s_maxhits, ES}, 1967 {-0.11, 0.6557, 4, 1024}, 1968 HT_INVERSE, HF_INVERSE, NOGUESS+NOTRACE+INFCALC+NORESUME, 1969 (float)-2.0, (float)2.0, (float)-1.5, (float)1.5, 1970 24, NOFRACTAL, MANDEL, INVERSEJULIAFP, NOSYM, 1971 Linverse_julia_orbit, NULL, orbit3dlongsetup, inverse_julia_per_image, 1972 NOBAILOUT 1973 }, 1974 1975 { 1976 t_julia_inverse, 1977 {realparm, imagparm, s_maxhits, ES}, 1978 {-0.11, 0.6557, 4, 1024}, 1979 HT_INVERSE, HF_INVERSE, NOGUESS+NOTRACE+INFCALC+NORESUME, 1980 (float)-2.0, (float)2.0, (float)-1.5, (float)1.5, 1981 0, NOFRACTAL, MANDEL, INVERSEJULIA, NOSYM, 1982 Minverse_julia_orbit, NULL, orbit3dfloatsetup, inverse_julia_per_image, 1983 NOBAILOUT 1984 }, 1985 1986 #endif 1987 1988 { 1989 "mandelcloud", 1990 {"+# of intervals (<0 = connect)", ES, ES, ES}, 1991 {50, 0, 0, 0}, 1992 HT_MANDELCLOUD, HF_MANDELCLOUD, NOGUESS+NOTRACE+WINFRAC, 1993 (float)-2.5, (float)1.5, (float)-1.5, (float)1.5, 1994 0, NOFRACTAL, NOFRACTAL, NOFRACTAL, NOSYM, 1995 (VF)mandelcloudfloat, NULL, dynam2dfloatsetup, dynam2dfloat, 1996 NOBAILOUT 1997 }, 1998 1999 { 2000 t_phoenix+1, 2001 {p1real, p2real, degreeZ, ES}, 2002 {0.56667, -0.5, 0, 0}, 2003 HT_PHOENIX, HF_PHOENIX, WINFRAC+BAILTEST, 2004 (float)-2.0, (float)2.0, (float)-1.5, (float)1.5, 2005 1, NOFRACTAL, MANDPHOENIX, PHOENIXFP, XAXIS, 2006 LongPhoenixFractal, long_phoenix_per_pixel, PhoenixSetup, 2007 StandardFractal, 2008 STDBAILOUT 2009 }, 2010 2011 { 2012 t_phoenix, 2013 {p1real, p2real, degreeZ, ES}, 2014 {0.56667, -0.5, 0, 0}, 2015 HT_PHOENIX, HF_PHOENIX, WINFRAC+BAILTEST, 2016 (float)-2.0, (float)2.0, (float)-1.5, (float)1.5, 2017 0, NOFRACTAL, MANDPHOENIXFP, PHOENIX, XAXIS, 2018 PhoenixFractal, phoenix_per_pixel, PhoenixSetup, StandardFractal, 2019 STDBAILOUT 2020 }, 2021 2022 { 2023 t_mandphoenix+1, 2024 {realz0, imagz0, degreeZ, ES}, 2025 {0.0, 0.0, 0, 0}, 2026 HT_PHOENIX, HF_MANDPHOENIX, WINFRAC+BAILTEST, 2027 (float)-2.5, (float)1.5, (float)-1.5, (float)1.5, 2028 1, PHOENIX, NOFRACTAL, MANDPHOENIXFP, NOSYM, 2029 LongPhoenixFractal, long_mandphoenix_per_pixel, MandPhoenixSetup, 2030 StandardFractal, 2031 STDBAILOUT 2032 }, 2033 2034 { 2035 t_mandphoenix, 2036 {realz0, imagz0, degreeZ, ES}, 2037 {0.0, 0.0, 0, 0}, 2038 HT_PHOENIX, HF_MANDPHOENIX, WINFRAC+BAILTEST, 2039 (float)-2.5, (float)1.5, (float)-1.5, (float)1.5, 2040 0, PHOENIXFP, NOFRACTAL, MANDPHOENIX, NOSYM, 2041 PhoenixFractal, mandphoenix_per_pixel, MandPhoenixSetup, 2042 StandardFractal, 2043 STDBAILOUT 2044 }, 2045 2046 { 2047 "hypercomplex", 2048 {notused, notused, CJ, CK}, 2049 {0, 0, 0, 0}, 2050 HT_HYPERC, HF_HYPERC, WINFRAC+OKJB+TRIG1, 2051 (float)-2.0, (float)2.0, (float)-1.5, (float)1.5, 2052 0, HYPERCMPLXJFP, NOFRACTAL, NOFRACTAL, XAXIS, 2053 HyperComplexFPFractal, quaternionfp_per_pixel, MandelfpSetup, 2054 StandardFractal, 2055 LTRIGBAILOUT 2056 }, 2057 2058 { 2059 "hypercomplexj", 2060 {C1, CI, CJ, CK}, 2061 {-.745, 0, .113, .05}, 2062 HT_HYPERC, HF_HYPERCJ, WINFRAC+OKJB+TRIG1+MORE, 2063 (float)-2.0, (float)2.0, (float)-1.5, (float)1.5, 2064 0, NOFRACTAL, HYPERCMPLXFP, NOFRACTAL, ORIGIN, 2065 HyperComplexFPFractal, quaternionjulfp_per_pixel, JuliafpSetup, 2066 StandardFractal, 2067 LTRIGBAILOUT 2068 }, 2069 2070 { 2071 t_frothybasin+1, 2072 {frothmapping, frothshade, frothavalue, ES}, 2073 {1, 0, 1.028713768218725, 0}, 2074 HT_FROTH, HF_FROTH, NOTRACE+WINFRAC, 2075 (float)-2.8, (float)2.8, (float)-2.355, (float)1.845, 2076 28, NOFRACTAL, NOFRACTAL, FROTHFP, NOSYM, 2077 froth_per_orbit, froth_per_pixel, froth_setup, calcfroth, 2078 FROTHBAILOUT 2079 }, 2080 2081 { 2082 t_frothybasin, 2083 {frothmapping, frothshade, frothavalue, ES}, 2084 {1, 0, 1.028713768218725, 0}, 2085 HT_FROTH, HF_FROTH, NOTRACE+WINFRAC, 2086 (float)-2.8, (float)2.8, (float)-2.355, (float)1.845, 2087 0, NOFRACTAL, NOFRACTAL, FROTH, NOSYM, 2088 froth_per_orbit, froth_per_pixel, froth_setup, calcfroth, 2089 FROTHBAILOUT 2090 }, 2091 2092 { 2093 t_mandel4, 2094 {realz0, imagz0, ES, ES}, 2095 {0, 0, 0, 0}, 2096 HT_MANDJUL4, HF_MANDEL4, WINFRAC+BAILTEST, 2097 (float)-2.0, (float)2.0, (float)-1.5, (float)1.5, 2098 0, JULIA4FP, NOFRACTAL, MANDEL4, XAXIS_NOPARM, 2099 Mandel4fpFractal, mandelfp_per_pixel, MandelfpSetup, StandardFractal, 2100 STDBAILOUT 2101 }, 2102 2103 { 2104 t_julia4, 2105 {realparm, imagparm, ES, ES}, 2106 {0.6, 0.55, 0, 0}, 2107 HT_MANDJUL4, HF_JULIA4, WINFRAC+OKJB+BAILTEST, 2108 (float)-2.0, (float)2.0, (float)-1.5, (float)1.5, 2109 0, NOFRACTAL, MANDEL4FP, JULIA4, ORIGIN, 2110 Mandel4fpFractal, juliafp_per_pixel, JuliafpSetup,StandardFractal, 2111 STDBAILOUT 2112 }, 2113 2114 { 2115 t_marksmandel, 2116 {realz0, imagz0, exponent, ES}, 2117 {0, 0, 1, 0}, 2118 HT_MARKS, HF_MARKSMAND, WINFRAC+BAILTEST, 2119 (float)-2.0, (float)2.0, (float)-1.5, (float)1.5, 2120 0, MARKSJULIAFP, NOFRACTAL, MARKSMANDEL, NOSYM, 2121 MarksLambdafpFractal, marksmandelfp_per_pixel, MandelfpSetup, 2122 StandardFractal, 2123 STDBAILOUT 2124 }, 2125 2126 { 2127 t_marksjulia, 2128 {realparm, imagparm, exponent, ES}, 2129 {0.1, 0.9, 1, 0}, 2130 HT_MARKS, HF_MARKSJULIA, WINFRAC+BAILTEST, 2131 (float)-2.0, (float)2.0, (float)-1.5, (float)1.5, 2132 0, NOFRACTAL, MARKSMANDELFP, MARKSJULIA, ORIGIN, 2133 MarksLambdafpFractal, juliafp_per_pixel, MarksJuliafpSetup, 2134 StandardFractal, 2135 STDBAILOUT 2136 }, 2137 2138 /* dmf */ 2139 { 2140 "icons", 2141 {s_lambda, s_alpha, s_beta, s_gamma}, 2142 {-2.34, 2.0, 0.2, 0.1}, 2143 HT_ICON, HF_ICON, NOGUESS+NOTRACE+WINFRAC+INFCALC+MORE, 2144 (float)-2.0, (float)2.0, (float)-1.5, (float)1.5, 2145 0, NOFRACTAL, NOFRACTAL, NOFRACTAL, NOSYM, 2146 (VF)iconfloatorbit, NULL, orbit3dfloatsetup, orbit2dfloat, 2147 NOBAILOUT 2148 }, 2149 2150 /* dmf */ 2151 { 2152 "icons3d", 2153 {s_lambda, s_alpha, s_beta, s_gamma}, 2154 {-2.34, 2.0, 0.2, 0.1}, 2155 HT_ICON, HF_ICON, NOGUESS+NOTRACE+WINFRAC+INFCALC+PARMS3D+MORE, 2156 (float)-2.0, (float)2.0, (float)-1.5, (float)1.5, 2157 0, NOFRACTAL, NOFRACTAL, NOFRACTAL, NOSYM, 2158 (VF)iconfloatorbit, NULL, orbit3dfloatsetup, orbit3dfloat, 2159 NOBAILOUT 2160 }, 2161 2162 { 2163 t_phoenixcplx+1, 2164 {p1real, p1imag, p2real, p2imag}, 2165 {0.2, 0, 0.3, 0}, 2166 HT_PHOENIX, HF_PHOENIXCPLX, WINFRAC+MORE+BAILTEST, 2167 (float)-2.0, (float)2.0, (float)-1.5, (float)1.5, 2168 1, NOFRACTAL, MANDPHOENIXCPLX,PHOENIXFPCPLX, ORIGIN, 2169 LongPhoenixFractalcplx, long_phoenix_per_pixel, PhoenixCplxSetup, 2170 StandardFractal, 2171 STDBAILOUT 2172 }, 2173 2174 { 2175 t_phoenixcplx, 2176 {p1real, p1imag, p2real, p2imag}, 2177 {0.2, 0, 0.3, 0}, 2178 HT_PHOENIX, HF_PHOENIXCPLX, WINFRAC+MORE+BAILTEST, 2179 (float)-2.0, (float)2.0, (float)-1.5, (float)1.5, 2180 0, NOFRACTAL, MANDPHOENIXFPCPLX, PHOENIXCPLX, ORIGIN, 2181 PhoenixFractalcplx, phoenix_per_pixel, PhoenixCplxSetup, 2182 StandardFractal, 2183 STDBAILOUT 2184 }, 2185 2186 { 2187 t_mandphoenixcplx+1, 2188 {realz0, imagz0, p2real, p2imag}, 2189 {0, 0, 0.5, 0}, 2190 HT_PHOENIX, HF_MANDPHOENIXCPLX, WINFRAC+MORE+BAILTEST, 2191 (float)-2.5, (float)1.5, (float)-1.5, (float)1.5, 2192 1, PHOENIXCPLX, NOFRACTAL, MANDPHOENIXFPCPLX, XAXIS, 2193 LongPhoenixFractalcplx, long_mandphoenix_per_pixel, 2194 MandPhoenixCplxSetup, StandardFractal, 2195 STDBAILOUT 2196 }, 2197 2198 { 2199 t_mandphoenixcplx, 2200 {realz0, imagz0, p2real, p2imag}, 2201 {0, 0, 0.5, 0}, 2202 HT_PHOENIX, HF_MANDPHOENIXCPLX, WINFRAC+MORE+BAILTEST, 2203 (float)-2.5, (float)1.5, (float)-1.5, (float)1.5, 2204 0, PHOENIXFPCPLX, NOFRACTAL, MANDPHOENIXCPLX, XAXIS, 2205 PhoenixFractalcplx, mandphoenix_per_pixel, MandPhoenixCplxSetup, 2206 StandardFractal, 2207 STDBAILOUT 2208 }, 2209 2210 { 2211 "ant", 2212 {"#Rule String (1's and non-1's, 0 rand)", 2213 "#Maxpts", 2214 "+Numants (max 256)", 2215 "+Ant type (1 or 2)" 2216 }, 2217 {1100, 1.0E9, 1, 1}, 2218 HT_ANT, HF_ANT, WINFRAC+NOZOOM+NOGUESS+NOTRACE+NORESUME+MORE, 2219 (float)-1.0, (float)1.0, (float)-1.0, (float)1.0, 2220 0, NOFRACTAL, NOFRACTAL, NOFRACTAL, NOSYM, 2221 NULL, NULL, StandaloneSetup, ant, 2222 NOBAILOUT 2223 }, 2224 2225 { 2226 "chip", 2227 {A, B, C, ES}, 2228 {-15,-19,1,0}, 2229 HT_MARTIN, HF_CHIP, NOGUESS+NOTRACE+INFCALC+WINFRAC, 2230 (float)-760.0, (float)760.0, (float)-570.0, (float)570.0, 2231 0, NOFRACTAL, NOFRACTAL, NOFRACTAL, NOSYM, 2232 (VF)chip2dfloatorbit, NULL, orbit3dfloatsetup, orbit2dfloat, 2233 NOBAILOUT 2234 }, 2235 2236 { 2237 "quadruptwo", 2238 {A, B, C, ES}, 2239 {34, 1, 5, 0}, 2240 HT_MARTIN, HF_QUADRUPTWO, NOGUESS+NOTRACE+INFCALC+WINFRAC, 2241 (float)-82.93367, (float)112.2749, (float)-55.76383, (float)90.64257, 2242 0, NOFRACTAL, NOFRACTAL, NOFRACTAL, NOSYM, 2243 (VF)quadruptwo2dfloatorbit, NULL, orbit3dfloatsetup, orbit2dfloat, 2244 NOBAILOUT 2245 }, 2246 2247 { 2248 "threeply", 2249 {A, B, C, ES}, 2250 {-55, -1, -42, 0}, 2251 HT_MARTIN, HF_THREEPLY, NOGUESS+NOTRACE+INFCALC+WINFRAC, 2252 (float)-8000.0, (float)8000.0, (float)-6000.0, (float)6000.0, 2253 0, NOFRACTAL, NOFRACTAL, NOFRACTAL, NOSYM, 2254 (VF)threeply2dfloatorbit, NULL, orbit3dfloatsetup, orbit2dfloat, 2255 NOBAILOUT 2256 }, 2257 2258 { 2259 "volterra-lotka", 2260 {H, P, ES, ES}, 2261 {0.739, 0.739, 0, 0}, 2262 HT_VL, HF_VL, WINFRAC, 2263 (float)0.0, (float)6.0, (float)0.0, (float)4.5, 2264 0, NOFRACTAL, NOFRACTAL, NOFRACTAL, NOSYM, 2265 VLfpFractal, otherjuliafp_per_pixel, VLSetup, StandardFractal, 2266 256 2267 }, 2268 2269 { 2270 "escher_julia", 2271 {realparm, imagparm, ES, ES}, 2272 {0.32, 0.043, 0, 0}, 2273 HT_ESCHER, HF_ESCHER, WINFRAC, 2274 (float)-1.6, (float)1.6, (float)-1.2, (float)1.2, 2275 0, NOFRACTAL, NOFRACTAL, NOFRACTAL, ORIGIN, 2276 EscherfpFractal, juliafp_per_pixel, StandardSetup, 2277 StandardFractal, 2278 STDBAILOUT 2279 }, 2280 2281 /* From Pickovers' "Chaos in Wonderland" */ 2282 /* included by Humberto R. Baptista */ 2283 /* code adapted from king.cpp bt James Rankin */ 2284 2285 { 2286 "latoocarfian", 2287 {A, B, C, D}, 2288 {-0.966918, 2.879879, 0.765145, 0.744728}, 2289 HT_LATOO, HF_LATOO, NOGUESS+NOTRACE+WINFRAC+INFCALC+MORE+TRIG4, 2290 (float)-2.0, (float)2.0, (float)-1.5, (float)1.5, 2291 0, NOFRACTAL, NOFRACTAL, NOFRACTAL, NOSYM, 2292 (VF)latoofloatorbit, NULL, orbit3dfloatsetup, orbit2dfloat, 2293 NOBAILOUT 2294 }, 2295 2296 { 2297 "mandelbrotmix4", 2298 {p1real, p1imag, p2real, p2imag}, 2299 {0.05, 3, -1.5, -2}, 2300 HT_MANDELBROTMIX4, HF_MANDELBROTMIX4, WINFRAC+BAILTEST+TRIG1+MORE, 2301 (float)-2.5, (float)1.5, (float)-1.5, (float)1.5, 2302 0, NOFRACTAL, NOFRACTAL, NOFRACTAL, NOSYM, 2303 MandelbrotMix4fpFractal, MandelbrotMix4fp_per_pixel, MandelbrotMix4Setup, StandardFractal, 2304 STDBAILOUT 2305 }, 2306 2307 { 2308 NULL, /* marks the END of the list */ 2309 {NULL, NULL, NULL, NULL}, 2310 {0, 0, 0, 0}, 2311 -1, -1, 0, 2312 (float)0.0, (float)0.0, (float)0.0, (float)0.0, 2313 0, NOFRACTAL, NOFRACTAL, NOFRACTAL, NOSYM, 2314 NULL, NULL, NULL, NULL, 2315 0 2316 } 2317 }; 2318 2319 int num_fractal_types = (sizeof(fractalspecific)/ 2320 sizeof(struct fractalspecificstuff)) -1; 2321 2322 /* 2323 * Returns 1 if the formula parameter is not used in the current 2324 * formula. If the parameter is used, or not a formula fractal, 2325 * a 0 is returned. Note: this routine only works for formula types. 2326 */ 2327 int paramnotused(int parm) 2328 { 2329 int ret = 0; 2330 2331 /* sanity check */ 2332 if (fractype != FORMULA && fractype != FFORMULA) 2333 return (0); 2334 2335 switch (parm/2) { 2336 case 0: 2337 if (!uses_p1) 2338 ret = 1; 2339 break; 2340 case 1: 2341 if (!uses_p2) 2342 ret = 1; 2343 break; 2344 case 2: 2345 if (!uses_p3) 2346 ret = 1; 2347 break; 2348 case 3: 2349 if (!uses_p4) 2350 ret = 1; 2351 break; 2352 case 4: 2353 if (!uses_p5) 2354 ret = 1; 2355 break; 2356 default: 2357 ret = 0; 2358 break; 2359 } 2360 return (ret); 2361 } 2362 2363 /* 2364 * Returns 1 if parameter number parm exists for type. If the 2365 * parameter exists, the parameter prompt string is copied to buf. 2366 * Pass in NULL for buf if only the existence of the parameter is 2367 * needed, and not the prompt string. 2368 */ 2369 int typehasparm(int type,int parm,char *buf) 2370 { 2371 int extra; 2372 char far *ret = NULL; 2373 if(0 <= parm && parm < 4) 2374 ret=fractalspecific[type].param[parm]; 2375 else if(parm >= 4 && parm < MAXPARAMS) 2376 if((extra=find_extra_param(type)) > -1) 2377 ret=moreparams[extra].param[parm-4]; 2378 if(ret) 2379 if(*ret == 0) 2380 ret = NULL; 2381 2382 if(type == FORMULA || type == FFORMULA) 2383 if(paramnotused(parm)) 2384 ret = NULL; 2385 2386 if(ret && buf != NULL) 2387 far_strcpy(buf,ret); 2388 return(ret?1:0); 2389 } 2390