comment {
Formulas by Reynard D. Fox
No spam, please.
reynard@eznet.net
}
PickoverTanVariation {
;Transcribed Mar 2001 by Reynard D. Fox
;Mad props to Paul Bourke's Fractal Introduction
;(http://astronomy.swin.edu.au/pbourke/fractals/fracintro/)
;which contains Pickering's Biomorph formula, from
;which this function is derived. Tangent function
;is substituted for sine function.
init:
z = 0
loop:
z = tan(z) + (z ^ @power) + #pixel
bailout:
|z| < @bailout
default:
title = "Pickover Tangent Variation"
center = (-1, 0)
param power
caption = "Power"
default = (2,0)
endparam
param bailout
caption = "Bailout"
default = 100000
endparam
}
Brot+Brot {
; Formula by Reynard D. Fox, May 2001
; 2 Mandelbrot sets added together or subtracted from each other.
;
; Hints:
; To subtract sets from each other, change Mult1 or Mult2 to -1.
; Try using different exponential powers with each other in Power1 or Power2.
; Interesting results can also be obtained by using fractional multipliers
; in Mult1 or Mult2.
; A switch has been enabled with the analogous Julia+Julia formula.
;
init:
z = @start
loop:
z = (@mult1 * (z^@power1)) + (@mult2 * (z^@power2)) + #pixel
bailout:
|z| <= @bailout
default:
title = "Brot + Brot"
center = (-1.5, 0)
magn = 1
param start
caption = "Starting point"
default = (0,0)
hint = "Perturbation. Use (0,0) for the standard Mandelbrot set."
endparam
param mult1
caption = "Mult1"
default = (1,0)
hint = "This is what Power1 is multiplied by (can be made negative with negative numbers)"
endparam
param power1
caption = "Power1"
default = (2,0)
hint = "This defines the power of the first Mandelbrot set."
endparam
param mult2
caption = "Mult2"
default = (1,0)
hint = "This is what Power2 is multiplied by (can be made negative with negative numbers)"
endparam
param power2
caption = "Power2"
default = (0,0)
hint = "This defines the power of the second Mandelbrot set."
endparam
param bailout
caption = "Bailout value"
default = 4.0
min = 1.0
hint = "Defines how soon an orbit bails out, i.e. doesn't belong \
to the Mandelbrot set anymore."
endparam
switch:
type = "Julia+Julia"
seed = #pixel
bailout = bailout
mult1 = mult1
power1 = power1
mult2 = mult2
power2 = power2
}
Julia+Julia {
; Formula by Reynard D. Fox, May 2001
; 2 Julia sets added together or subtracted from each other.
;
; Hints:
; It's easiest to start with Brot+Brot, then use switch mode to
; change to Julia+Julia.
; If you insist on starting with this function, make sure to change
; Mult2 to something other than 0 (1 to add, -1 to subtract, or feel
; free to experiment with fractional multipliers.)
;
init:
z = #pixel
loop:
z = (@mult1 * (z^@power1)) + (@mult2 * (z^@power2)) + @seed
bailout:
|z| <= @bailout
default:
title = "Julia + Julia"
magn = 1
param seed
caption = "Julia seed"
default = (-1.25, 0)
hint = "Use this to create many different Julia sets. You can \
also set this value using the Switch feature."
endparam
param mult1
caption = "Mult1"
default = (1,0)
hint = "This is what Power1 is multiplied by (can be made negative with negative numbers)"
endparam
param power1
caption = "Power1"
default = (2,0)
hint = "This defines the power of the first Julia set."
endparam
param mult2
caption = "Mult2"
default = (0,0)
hint = "This is what Power2 is multiplied by (can be made negative with negative numbers)"
endparam
param power2
caption = "Power2"
default = (0,0)
hint = "This defines the power of the second Julia set."
endparam
param bailout
caption = "Bailout value"
default = 4.0
min = 1.0
hint = "Defines how soon an orbit bails out, i.e. doesn't belong \
to the Mandelbrot set anymore."
endparam
switch:
type = "Brot+Brot"
power1 = power1
power2 = power2
mult1 = mult1
mult2 = mult2
bailout = bailout
}
ModifiedMandelbrotInversion {
; Formula by Reynard D. Fox, June 2001
; A counter determines the number of iterations made before the real component is swapped with
; the imaginary component in the iterated complex point. Use the number 0 in the Switchcount
; value for the swap to occur on every pass.
init:
z = @start
int counter = 0
loop:
if counter < @switchcount
z = z^@power + #pixel
counter = counter + 1
else
z = flip(z)^@power + #pixel
counter = 0
endif
bailout:
|z| <= @bailout
default:
title = "Modified Mandelbrot Inversion"
center = (-0.5, 0)
param start
caption = "Starting point"
default = (0,0)
hint = "Perturbation. Use (0,0) for the standard Mandelbrot set."
endparam
param power
caption = "Power"
default = (2,0)
hint = "This defines the power of the Mandelbrot set. Use (2,0) \
for the standard Mandelbrot set."
endparam
param bailout
caption = "Bailout value"
default = 4.0
min = 1.0
hint = "Defines how soon an orbit bails out, i.e. doesn't belong \
to the Mandelbrot set anymore."
endparam
param switchcount
caption = "Switchcount"
default = 9 ; integer value
min = 0
hint = "Defines how many iterations to go until real value is swapped \
with imaginary value (use 0 for swap every time)"
endparam
}