sizei: current image size (size / sizei will yield the pixel size).
v1: placeholder variable 1.
v2: placeholder variable 2.
v3: placeholder variable 3.
v4: placeholder variable 4.
v5: placeholder variable 5.
v6: placeholder variable 6.
v7: placeholder variable 7.
v8: placeholder variable 8.
v9: placeholder variable 9.
v10: placeholder variable 10.
v11: placeholder variable 11.
v12: placeholder variable 12.
v13: placeholder variable 13.
v14: placeholder variable 14.
v15: placeholder variable 15.
v16: placeholder variable 16.
v17: placeholder variable 17.
v18: placeholder variable 18.
v19: placeholder variable 19.
v20: placeholder variable 20.
point: a value that can be picked by the user.
All the placeholder variables are meant to be used inside
the UserDefinedFunctions.java file, in order to store some temporary values
that can be used later on, at a user defined out-coloring or in-coloring method.
These variables are focused on experienced users that might have some
computer science background.
You must use the mutable versions of the complex functions or use
the assign function on these variables, or else the value that you want to save
will be lost. For instance when you want to set the value of a variable do not use v = new Complex(1, 2) but you should use v.assign(new Complex(1, 2))
Initially these variables are set to 0.
Consider the following scenario, you call m1(z, c, v1) and inside
the body of m1, defined in UserDefinedFunctions.java you set a value to the
3rd argument of the m1 function based on some condition, defined by you.
When the iteration terminates the out-coloring or in-coloring method is
called, for example cos(3*v1), and uppon this point the value of v1 that
was set during the iteration step will be used. You can have a similar result
if you use it inside a user bailout formula that calls a function defined in
UserDefinedFunctions.java
Operations/Symbols
+: addition.
-: subtraction.
*: multiplication.
/: division.
%: remainder.
^: exponentiation.
(: left parenthesis.
): right parenthesis.
,:comma.
Constants
pi: 3.141592653589793.
e: 2.718281828459045.
phi: 1.618033988749895.
c10 (Champernowne's): 0.1234567891011121314.
alpha (Feigenbaum's): 2.5029078750958928.
delta (Feigenbaum's): 4.669201609102990.
Complex Numbers
a + bi: a = Real, b = Imaginary.
Trigonometric Functions: f(z)
sin: sine function.
cos: cosine function.
tan: tangent function.
cot: cotangent function.
sec: secant function.
csc: cosecant function.
sinh: hyperbolic sine function.
cosh: hyperbolic cosine function.
tanh: hyperbolic tangent function.
coth: hyperbolic cotangent function.
sech: hyperbolic secant function.
csch: hyperbolic cosecant function.
asin: arc sine function.
acos: arc cosine function.
atan: arc tangent function.
acot: arc cotangent function.
asec: arc secant function.
acsc: arc cosecant function.
asinh: hyperbolic arc sine function.
acosh: hyperbolic arc cosine function.
atanh: hyperbolic arc tangent function.
acoth: hyperbolic arc cotangent function.
asech: hyperbolic arc secant function.
acsch: hyperbolic arc cosecant function.
vsin: versine function.
vcos: vercosine function.
cvsin: coversine function.
cvcos: covercosine function.
hvsin: haversine function.
hvcos: havercosine function.
hcvsin: hacoversine function.
hcvcos: hacovercosine function.
exsec: exsecant function.
excsc: excosecant function.
avsin: arc versine function.
avcos: arc vercosine function.
acvsin: arc coversine function.
acvcos: arc covercosine function.
ahvsin: arc haversine function.
ahvcos: arc havercosine function.
ahcvsin: arc hacoversine function.
ahcvcos: arc hacovercosine function.
aexsec: arc exsecant function.
aexcsc: arc excosecant function.
Other Functions: f(z)
exp: exp function.
log: natural logarithm function.
log10: base 10 logarithm function.
log2: base 2 logarithm function.
sqrt: square root function.
abs: absolute value function (applied both on real and imaginary parts).
absre: absolute value function (applied only on real part).
absim: absolute value function (applied only on imaginary part).
conj: conjugate number function.
re: real part function.
im: imaginary part function.
norm: norm function.
arg: argument function.
gamma: gamma function.
fact: factorial function.
erf: error function.
rzeta: riemann zeta function.
gi: gaussian integer function.
rec: reciprocal function.
flip: flip real to imaginary function.
round: math round function.
ceil: math ceil function.
floor: math floor function.
trunc: math truncate function.
deta: dirichlet eta function.
f1: user function f1 which can be changed in UserDefinedFunctions.java (Compilation is required).
f2: user function f2 which can be changed in UserDefinedFunctions.java (Compilation is required).
f3: user function f3 which can be changed in UserDefinedFunctions.java (Compilation is required).
f4: user function f4 which can be changed in UserDefinedFunctions.java (Compilation is required).
f5: user function f5 which can be changed in UserDefinedFunctions.java (Compilation is required).
f6: user function f6 which can be changed in UserDefinedFunctions.java (Compilation is required).
f7: user function f7 which can be changed in UserDefinedFunctions.java (Compilation is required).
f8: user function f8 which can be changed in UserDefinedFunctions.java (Compilation is required).
f9: user function f9 which can be changed in UserDefinedFunctions.java (Compilation is required).
f10: user function f10 which can be changed in UserDefinedFunctions.java (Compilation is required).
f11: user function f11 which can be changed in UserDefinedFunctions.java (Compilation is required).
f12: user function f12 which can be changed in UserDefinedFunctions.java (Compilation is required).
f13: user function f13 which can be changed in UserDefinedFunctions.java (Compilation is required).
f14: user function f14 which can be changed in UserDefinedFunctions.java (Compilation is required).
f15: user function f15 which can be changed in UserDefinedFunctions.java (Compilation is required).
f16: user function f16 which can be changed in UserDefinedFunctions.java (Compilation is required).
f17: user function f17 which can be changed in UserDefinedFunctions.java (Compilation is required).
f18: user function f18 which can be changed in UserDefinedFunctions.java (Compilation is required).
f19: user function f19 which can be changed in UserDefinedFunctions.java (Compilation is required).
f20: user function f20 which can be changed in UserDefinedFunctions.java (Compilation is required).
f21: user function f21 which can be changed in UserDefinedFunctions.java (Compilation is required).
f22: user function f22 which can be changed in UserDefinedFunctions.java (Compilation is required).
f23: user function f23 which can be changed in UserDefinedFunctions.java (Compilation is required).
f24: user function f24 which can be changed in UserDefinedFunctions.java (Compilation is required).
f25: user function f25 which can be changed in UserDefinedFunctions.java (Compilation is required).
f26: user function f26 which can be changed in UserDefinedFunctions.java (Compilation is required).
f27: user function f27 which can be changed in UserDefinedFunctions.java (Compilation is required).
f28: user function f28 which can be changed in UserDefinedFunctions.java (Compilation is required).
f29: user function f29 which can be changed in UserDefinedFunctions.java (Compilation is required).
f30: user function f30 which can be changed in UserDefinedFunctions.java (Compilation is required).
f31: user function f31 which can be changed in UserDefinedFunctions.java (Compilation is required).
f32: user function f32 which can be changed in UserDefinedFunctions.java (Compilation is required).
f33: user function f33 which can be changed in UserDefinedFunctions.java (Compilation is required).
f34: user function f34 which can be changed in UserDefinedFunctions.java (Compilation is required).
f35: user function f35 which can be changed in UserDefinedFunctions.java (Compilation is required).
f36: user function f36 which can be changed in UserDefinedFunctions.java (Compilation is required).
f37: user function f37 which can be changed in UserDefinedFunctions.java (Compilation is required).
f38: user function f38 which can be changed in UserDefinedFunctions.java (Compilation is required).
f39: user function f39 which can be changed in UserDefinedFunctions.java (Compilation is required).
f40: user function f40 which can be changed in UserDefinedFunctions.java (Compilation is required).
The f1 - f40 functions are focused on experienced users
that might have some computer science background.
Two Argument Functions: f(z, w)
logn: log base n (argument 1: z, argument 2: base).
bipol: bipolar function.
ibipol: inversed bipolar function.
inflect: inflection function.
foldu: fold up function.
foldd: fold down function.
foldl: fold left function.
foldr: fold right function.
foldi: fold in function.
foldo: fold out function.
shear: shear function.
cmp: compare function (returns: -1 when z > w, 1 when z < w, 0 when equal).
fuzz: adds a random pertubation, based on the w argument used.
normn: n-norm function.
g1: user function g1 which can be changed in UserDefinedFunctions.java (Compilation is required).
g2: user function g2 which can be changed in UserDefinedFunctions.java (Compilation is required).
g3: user function g3 which can be changed in UserDefinedFunctions.java (Compilation is required).
g4: user function g4 which can be changed in UserDefinedFunctions.java (Compilation is required).
g5: user function g5 which can be changed in UserDefinedFunctions.java (Compilation is required).
g6: user function g6 which can be changed in UserDefinedFunctions.java (Compilation is required).
g7: user function g7 which can be changed in UserDefinedFunctions.java (Compilation is required).
g8: user function g8 which can be changed in UserDefinedFunctions.java (Compilation is required).
g9: user function g9 which can be changed in UserDefinedFunctions.java (Compilation is required).
g10: user function g10 which can be changed in UserDefinedFunctions.java (Compilation is required).
g11: user function g11 which can be changed in UserDefinedFunctions.java (Compilation is required).
g12: user function g12 which can be changed in UserDefinedFunctions.java (Compilation is required).
g13: user function g13 which can be changed in UserDefinedFunctions.java (Compilation is required).
g14: user function g14 which can be changed in UserDefinedFunctions.java (Compilation is required).
g15: user function g15 which can be changed in UserDefinedFunctions.java (Compilation is required).
g16: user function g16 which can be changed in UserDefinedFunctions.java (Compilation is required).
g17: user function g17 which can be changed in UserDefinedFunctions.java (Compilation is required).
g18: user function g18 which can be changed in UserDefinedFunctions.java (Compilation is required).
g19: user function g19 which can be changed in UserDefinedFunctions.java (Compilation is required).
g20: user function g20 which can be changed in UserDefinedFunctions.java (Compilation is required).
g21: user function g21 which can be changed in UserDefinedFunctions.java (Compilation is required).
g22: user function g22 which can be changed in UserDefinedFunctions.java (Compilation is required).
g23: user function g23 which can be changed in UserDefinedFunctions.java (Compilation is required).
g24: user function g24 which can be changed in UserDefinedFunctions.java (Compilation is required).
g25: user function g25 which can be changed in UserDefinedFunctions.java (Compilation is required).
g26: user function g26 which can be changed in UserDefinedFunctions.java (Compilation is required).
g27: user function g27 which can be changed in UserDefinedFunctions.java (Compilation is required).
g28: user function g28 which can be changed in UserDefinedFunctions.java (Compilation is required).
g29: user function g29 which can be changed in UserDefinedFunctions.java (Compilation is required).
g30: user function g30 which can be changed in UserDefinedFunctions.java (Compilation is required).
g31: user function g31 which can be changed in UserDefinedFunctions.java (Compilation is required).
g32: user function g32 which can be changed in UserDefinedFunctions.java (Compilation is required).
g33: user function g33 which can be changed in UserDefinedFunctions.java (Compilation is required).
g34: user function g34 which can be changed in UserDefinedFunctions.java (Compilation is required).
g35: user function g35 which can be changed in UserDefinedFunctions.java (Compilation is required).
g36: user function g36 which can be changed in UserDefinedFunctions.java (Compilation is required).
g37: user function g37 which can be changed in UserDefinedFunctions.java (Compilation is required).
g38: user function g38 which can be changed in UserDefinedFunctions.java (Compilation is required).
g39: user function g39 which can be changed in UserDefinedFunctions.java (Compilation is required).
g40: user function g40 which can be changed in UserDefinedFunctions.java (Compilation is required).
The g1 - g40 functions are focused on experienced users
that might have some computer science background.
Multiple Argument User Functions: f(z1, ... z10)
All the following functions can have up to 10 arguments, for example you can use them like this: m1(z, 3+2i) or m2(1+2i, z, c, 3). All the missing arguments will be defaulted to 0.
m1: user function m1 which can be changed in UserDefinedFunctions.java (Compilation is required).
m2: user function m2 which can be changed in UserDefinedFunctions.java (Compilation is required).
m3: user function m3 which can be changed in UserDefinedFunctions.java (Compilation is required).
m4: user function m4 which can be changed in UserDefinedFunctions.java (Compilation is required).
m5: user function m5 which can be changed in UserDefinedFunctions.java (Compilation is required).
m6: user function m6 which can be changed in UserDefinedFunctions.java (Compilation is required).
m7: user function m7 which can be changed in UserDefinedFunctions.java (Compilation is required).
m8: user function m8 which can be changed in UserDefinedFunctions.java (Compilation is required).
m9: user function m9 which can be changed in UserDefinedFunctions.java (Compilation is required).
m10: user function m10 which can be changed in UserDefinedFunctions.java (Compilation is required).
m11: user function m11 which can be changed in UserDefinedFunctions.java (Compilation is required).
m12: user function m12 which can be changed in UserDefinedFunctions.java (Compilation is required).
m13: user function m13 which can be changed in UserDefinedFunctions.java (Compilation is required).
m14: user function m14 which can be changed in UserDefinedFunctions.java (Compilation is required).
m15: user function m15 which can be changed in UserDefinedFunctions.java (Compilation is required).
m16: user function m16 which can be changed in UserDefinedFunctions.java (Compilation is required).
m17: user function m17 which can be changed in UserDefinedFunctions.java (Compilation is required).
m18: user function m18 which can be changed in UserDefinedFunctions.java (Compilation is required).
m19: user function m19 which can be changed in UserDefinedFunctions.java (Compilation is required).
m20: user function m20 which can be changed in UserDefinedFunctions.java (Compilation is required).
m21: user function m21 which can be changed in UserDefinedFunctions.java (Compilation is required).
m22: user function m22 which can be changed in UserDefinedFunctions.java (Compilation is required).
m23: user function m23 which can be changed in UserDefinedFunctions.java (Compilation is required).
m24: user function m24 which can be changed in UserDefinedFunctions.java (Compilation is required).
m25: user function m25 which can be changed in UserDefinedFunctions.java (Compilation is required).
m26: user function m26 which can be changed in UserDefinedFunctions.java (Compilation is required).
m27: user function m27 which can be changed in UserDefinedFunctions.java (Compilation is required).
m28: user function m28 which can be changed in UserDefinedFunctions.java (Compilation is required).
m29: user function m29 which can be changed in UserDefinedFunctions.java (Compilation is required).
m30: user function m30 which can be changed in UserDefinedFunctions.java (Compilation is required).
m31: user function m31 which can be changed in UserDefinedFunctions.java (Compilation is required).
m32: user function m32 which can be changed in UserDefinedFunctions.java (Compilation is required).
m33: user function m33 which can be changed in UserDefinedFunctions.java (Compilation is required).
m34: user function m34 which can be changed in UserDefinedFunctions.java (Compilation is required).
m35: user function m35 which can be changed in UserDefinedFunctions.java (Compilation is required).
m36: user function m36 which can be changed in UserDefinedFunctions.java (Compilation is required).
m37: user function m37 which can be changed in UserDefinedFunctions.java (Compilation is required).
m38: user function m38 which can be changed in UserDefinedFunctions.java (Compilation is required).
m39: user function m39 which can be changed in UserDefinedFunctions.java (Compilation is required).
m40: user function m40 which can be changed in UserDefinedFunctions.java (Compilation is required).
The m1 - m40 functions are focused on experienced users
that might have some computer science background.
Additional Two Argument Functions : f(z, w)
add: addition.
sub: subtraction.
mult: multiplication.
div: division.
rem: remainder.
pow: exponentiation.
General Guidelines:
If you set the User Out Coloring or User In Coloring algorithm to the value of -maxn,
then the corresponding color for Distance Estimation will be used.
If you set the User Out Coloring or User In Coloring algorithm to a negative value,
then the corresponding color for Special Color will be used.