                           MATHEMATICS OF THE FRACTAL TYPES


Fractal Type(s)             Formula(s) used
-----------------------     ---------------------------------------------
Mandel, Julia               Z(n+1) = Z(n)^2 + C
Newton, Newtbasin           (roots of) Z^n - 1, wnere n is an integer
ComplexNewton, ComplexBasin (roots of) Z^a - b, where a,b are complex
plasma                      (see the Plasma section for details)
Mandelsine, Lambdasine      Z(n+1) = Lambda * sine(Z(n)) + C
Mandelcos, Lambdacos        Z(n+1) = Lambda * cos(Z(n)) + C
Mandelexp, Lambdaexp        Z(n+1) = Lambda * exp(Z(n)) + C
Mandelsinh, Lambdasinh      Z(n+1) = Lambda * sinh(Z(n)) + C
Mandelcosh, Lambdacosh      Z(n+1) = Lambda * cosh(Z(n)) + C
BarnsleyM1, BarnsleyJ1      Z(n+1) = (Z(n)-1) * C if Real(z) >= 0
                             else    (Z(n)+1) * modulus(C)/C
BarnsleyM2, BarnsleyJ2      Z(n+1) = (Z(n)-1) * C if Real(Z(n))*Imag(C)
                                     +Real(C)*Imag(Z(n)) >= 0
                             else    (Z(n)+1) * C
BarnsleyM3, BarnsleyJ3      Z(n+1) = (Real(Z(n))^2 - Imag(Z(n))^2 - 1)
                                    + i * (2 * Real(Z((n)) * Imag(Z((n)))
                                      if Real(Z(n) > 0
                             else    (Real(Z(n))^2 - Imag(Z(n))^2 - 1
                                    + lambda * Real(Z(n))
                                    + i * (2 * Real(Z((n)) * Imag(Z((n))
                                           + lambda * Real(Z(n))
Sierpinski                  Z(n+1) = (2x, 2y - 1) if y > .5
                             else    (2x - 1, 2y) if x > .5
                             else    (2X, 2y)
MandelLambda, Lambda        Z(n+1) = (C) * (Z(n)^2) + C
MarksMandel, MarksJulia     Z(n+1) = (C^(Period-1)) * (Z(n)^2) + C
                            ("Period" is a parameter)
Unity                       (see the Unity section for details)
ifs, ifs3D                  (see the IFS section for details)
Mandel4, Julia4             Z(n+1) = Z(n)^4 + C
Test                        (as distributed, as simple Mandelbrot fractal)
Mansinzsqrd, Julsinzsqrd    Z(n+1) = Z(n)^2 + sin(Z(n)) + C
Manzpower, Julzpower        Z(n+1) = Z(n)^M + C (M is a parameter)
Manzzpwr, Julzzpwr          Z(n+1) = Z(n)^Z(n) + Z(n)^M + C
Mansinexp, Julsinexp        Z(n+1) = sin(Z(n)) + e^(Z(n)) + C
popcorn                     Z(n+1) = x(n+1) + i * y(n+1), where
                            x(n+1) = x(n) - 0.05*sin(y(n)) + tan(3*y(n))
                            y(n+1) = y(n) - 0.05*sin(x(n)) + tan(3*x(n))
demm, demj                  (Mandelbrot, Julia fractals calculated and
                            colored using the "Distance Estimator" method
Bifurcation                 (see the Bifurcation section for details)
Lorenz, Lorenz3d            Lorenz Attractor - orbits of differential
                            equation
                            x = x + (-a * x * dt) + (a * y * dt)
                            y = y + (b * x * dt) - (y * dt) - (z * x * dt)
                            z = z + (-c * z * dt) + (x * y * dt)
                            (defaults: dt = .02, a = 5, b = 15, c = 1)
                            (Lorenz3D is the Lorenz Attractor with the
                            addition of 3D perspective transformations
                            as specified by the IFS <E>ditor's
                            transformation option)

The following trig identities are invaluable for coding fractals that
use complex-valued transcendental functions.

   e^(x+iy) = (e^x)cos(y) + i(e^x)sin(y)
   sin(x+iy) = sin(x)cosh(y) + icos(x)sinh(y)
   cos(x+iy) = cos(x)cosh(y) - isin(x)sinh(y)
   sinh(x+iy) = sinh(x)cos(y) + icosh(x)sin(y)
   cosh(x+iy) = cosh(x)cos(y) + isinh(x)sin(y)
   ln(x+iy) = (1/2)ln(x*x + y*y) + i(arctan(y/x) + 2kPi)
                                    (k = 0, +-1, +-2, +-....)

                     sin(2x)               sinh(2y)
   tan(x+iy) = ------------------  + i------------------
               cos(2x) + cosh(2y)     cos(2x) + cosh(2y)

                    sinh(2x)                sin(2y)
   tanh(x+iy) = ------------------ + i------------------
                cosh(2x) + cos(2y)    cosh(2x) + cos(2y)

       z^z = e^(log(z)*z)
       log(x + iy) = 1/2(log(x*x + y*y) + i(arc_tan(y/x))
       e^(x + iy) = (cosh(x) + sinh(x)) * (cos(y) + isin(y))
                   = e^x * (cos(y) + isin(y))
                   = (e^x * cos(y)) + i(e^x * sin(y))


Extract from FRACTINT.DOC
