dmj-PhoenixJulia {
;
; This type implements the Phoenix types discovered by
; Shigehiro Ushiki. It is somewhat generalized over
; the FractInt implementation. The general equation is
; of the form
;
; z(n+1) = z(n)^a + c*z(n)^b + p*z(n-1)
;
; In FractInt, choices for b are restricted to a-1 and
; a-2. This implementation allows arbitrary choices
; for both a and b.
;
; If a=2 and b=0 (classic Phoenix) then this type will
; work with the dmj-Smooth and dmj-Triangle coloring
; types.
;
init:
complex y = (0,0)
complex newz = (0,0)
z = #pixel
loop:
newz = z^@power1 + z^@power2 * @seed + @induct * y
y = z
z = newz
bailout:
|z| < @bailout
default:
title = "Phoenix (Julia)"
helpfile = "dmj-pub\dmj-pub-uf-phoenix.htm"
maxiter = 1000
center = (0,0)
param seed
caption = "Julia Seed"
default = (0.56667,0)
hint = "This is the Julia seed, a constant parameter which \
defines the shape of the fractal."
endparam
param power1
caption = "Primary Exponent"
default = (2,0)
hint = "Defines the primary exponent for the fractal. The classic \
Phoenix curve uses exponent 2."
endparam
param power2
caption = "Secondary Exponent"
default = (0,0)
hint = "Defines the secondary exponent for the fractal. The classic \
Phoenix curve uses exponent 0."
endparam
param induct
caption = "Phoenix Distortion"
default = (-0.5,0)
hint = "Sets how 'strong' the previous iteration's effect should be \
on the fractal."
endparam
param bailout
caption = "Bailout"
default = 1.0e20
hint = "Defines how soon an orbit bails out, i.e. doesn't belong \
to the Phoenix set anymore."
endparam
CubicRoots-Julia {
; Ron Barnett, September 2000
; Another Newton with mini-mandelbrot like regions
; Based on the Cubic formula (Ron Barnett circa 1993)
init:
#z = @init + #pixel
oldz = 0
a = @p1
loop:
oldz = #z
#z = (2*#z*#z*#z - #z*#z +a -2) / (3*#z*#z - 2*#z - 1)
bailout:
|#z - oldz| >= @bailout
default:
title = "Cubic Roots-Julia"
maxiter = 1000
center = (0, 0)
magn = 12
method = multipass
periodicity = 0
heading
caption = "Cubic Roots-Julia"
endheading
$ifdef VER40
heading
text = "This is a 'convergent' fractal that \
has Julia-like regions."
endheading
$else
heading
caption = "This is a 'convergent' fractal"
endheading
heading
caption = "that has Julia-like regions"
endheading
$endif
param version
caption = "Formula Version"
default = 1.0
hint = "You should never see this parameter; it's used internally to track \
which version of the formula was used to create your image, so that \
if a bug is found which breaks backwards-compatibility, the formula \
can adapt transparently."
visible = false
endparam
param bailout
caption = "Bailout value"
default = 0.000001
endparam
param p1
caption = "Parameter 1"
default = (0.522375, -0.002875)
endparam
param init
caption = "Iteration Initialization"
default = (0.33,0)
endparam
switch:
type = "CubicRoots-Mandel"
bailout = @bailout
init = @init
}